From: Mike D. <mik...@cd...> - 2016-10-22 19:56:58
|
Hi Leonid, I can't, really. I haven't done anything with them for long enough that I can't remember how and I'm too busy right now to be be willing to go read the manual about that stuff again. :-) If I get some time free later this month, I'll have a look. In the meantime, I encourage you to experiment. Best, Mike On Fri, Oct 21, 2016 at 9:36 AM, Леонид Ермилов <erm...@gm...> wrote: > Hi Mike, > Just found in the archive of the mailing list your explanation how to use > <switch> and <substitution> within notificationCommands. > > Since I stucked with HTTP GET using Java HttpNotificationStrategy, can you > please help me how to do same using curl and binary command? > > In result, I want to run something like this: > > /usr/bin/curl -X GET http://172.29.66.198/?from=% > nodelabel%&to=FMS&priority=%severity%&event- > id=%eventid%&text=%nodelabel%+is+Down > > To achieve that, I use following notification and notificationCommand: > > <notification name="nodeDown" status="on" writeable="yes"> > <uei>uei.opennms.org/nodes/nodeDown</uei> > <rule>IPADDR != '0.0.0.0'</rule> > <destinationPath>BH_Server</destinationPath> > <text-message>All services are down on node %nodelabel%. New > Outage records have > been created and service level availability calculations will > be impacted until this outage is resolved. > </text-message> > <subject>Notice #%noticeid%: node %nodelabel% down.</subject> > <numeric-message>111-%noticeid%</numeric-message> > * <parameter name="url" > value="http://172.29.66.198/?from=%nodelabel%&to=FMS&priority=%severity%&event-id=%eventid%&text=%nodelabel%+is+Down"/>* > </notification> > > > <command binary="true"> > <name>HTTP_Get</name> > <execute>/usr/bin/curl</execute> > <comment>Class for sending notifications with an HTTP Get</comment> > <argument streamed="false">*<substitution>-X</substitution>* > </argument> > <argument streamed="false">*<substitution>GET</substitution>* > </argument> > <argument streamed="true">*<switch>url</switch>*</argument> > </command> > > Is it correct? > > -Leonid > > 2016-10-20 21:40 GMT+03:00 Леонид Ермилов <erm...@gm...>: > >> Mike, >> destination IP for HTTP notifications is my laptop with wireshark. So I >> see HTTP POST in tcpdump: >> [image: Встроенное изображение 1] >> >> <notification name="nodeDown" status="on" writeable="yes"> >> <uei>uei.opennms.org/nodes/nodeDown</uei> >> <rule>IPADDR != '0.0.0.0'</rule> >> <destinationPath>BH_Server</destinationPath> >> <text-message>All services are down on node %nodelabel%. New >> Outage records have >> been created and service level availability calculations will >> be impacted until this outage is resolved. >> </text-message> >> <subject>Notice #%noticeid%: node %nodelabel% down.</subject> >> <numeric-message>111-%noticeid%</numeric-message> >> <parameter name="url" value="http://172.29.66.198/?f >> rom=%nodelabel%&to=FMS&priority=%severity%&event >> -id=%eventid%&text=%nodelabel%+is+Down"/> >> </notification> >> >> >> <command binary="false"> >> <name>HTTP_Get</name> >> <execute>org.opennms.netmgt.notifd.HttpNotificationStrategy< >> /execute> >> <comment>Class for sending notifications with an HTTP >> Get</comment> >> <argument streamed="false"> >> <switch>url</switch> >> </argument> >> </command> >> >> >> 2016-10-20 21:04 GMT+03:00 Mike Diehn <mik...@cd...>: >> >>> >>> Leonid, >>> >>> At first you wrote this: "All works fine but instead of GET I still see >>> POST method." >>> Would you please show us the output that tells you that? >>> >>> Thanks, >>> Mike >>> >>> >>> >>> On Thu, Oct 20, 2016 at 1:23 PM, Леонид Ермилов <erm...@gm...> >>> wrote: >>> >>>> Hi Mike! >>>> The thing is if I specify any argument with "post-" prefix within >>>> command config, it will make HTTP method POST. Or do you suggest them >>>> somewhere else? Please explain a little bit more. >>>> >>>> 20 окт. 2016 г. 5:28 ПП пользователь "Mike Diehn" < >>>> mik...@cd...> написал: >>>> >>>> >>>>> I wonder if you might need to override defaults? Maybe code somewhere >>>>> is setting post-* values as defaults for some arguments and if you could >>>>> identify all the arguments and set them, you could do that. >>>>> >>>>> On Wed, Oct 19, 2016 at 2:45 PM, Леонид Ермилов <erm...@gm...> >>>>> wrote: >>>>> >>>>>> Hi all! >>>>>> I'm trying to configure HTTP GET notifications for several events in >>>>>> ONMS. All works fine but instead of GET I still see POST method -( >>>>>> I use following guide: >>>>>> https://wiki.opennms.org/wiki/RT_Integration >>>>>> >>>>>> Also checked HttpNotificationStrategy.java code: >>>>>> https://github.com/vishwaabhinav/OpenNMS/blob/master/opennms >>>>>> -services/src/main/java/org/opennms/netmgt/notifd/HttpNotifi >>>>>> cationStrategy.java >>>>>> >>>>>> Looks like I need to delete all "post-" arguments in notification >>>>>> command configuration to make command use HTTP GET: >>>>>> >>>>>> List<NameValuePair> posts = getPostArguments(); >>>>>> if (posts == null) { >>>>>> method = new HttpGet(url); >>>>>> log().info("send: No \"post-\" arguments..., continuing with an HTTP >>>>>> GET using URL: "+url); >>>>>> } >>>>>> >>>>>> private List<NameValuePair> getPostArguments() { >>>>>> List<Argument> args = getArgsByPrefix("post-"); >>>>>> List<NameValuePair> retval = new ArrayList<NameValuePair>(); >>>>>> for (Argument arg : args) { >>>>>> String argSwitch = arg.getSwitch().substring("post-".length()); >>>>>> if (arg.getValue() == null) { >>>>>> arg.setValue(""); >>>>>> } >>>>>> retval.add(new BasicNameValuePair(argSwitch, arg.getValue().equals(" >>>>>> -tm") ? getMessage() : arg.getValue())); >>>>>> } >>>>>> return retval; >>>>>> } >>>>>> >>>>>> So here is my file examples: >>>>>> <!-- Use this notificationCommand to send an HTTP Post --> >>>>>> <command binary="false"> >>>>>> <name>HTTP_Post</name> >>>>>> <execute>org.opennms.netmgt.notifd.HttpNotificationStrategy< >>>>>> /execute> >>>>>> <comment>Class for sending notifications with an HTTP >>>>>> Post</comment> >>>>>> <argument streamed="false"> >>>>>> <switch>url</switch> >>>>>> </argument> >>>>>> <argument streamed="false"> >>>>>> <switch>timeout</switch> >>>>>> </argument> >>>>>> <argument streamed="false"> >>>>>> <switch>retries</switch> >>>>>> </argument> >>>>>> </command> >>>>>> >>>>>> Kindly ask for any assistance or working example. As backup way I'm >>>>>> thinking about binary command which will execute bash script with curl >>>>>> -GET. But don't like to create additional files on system. >>>>>> >>>>>> BR, >>>>>> Leonid. >>>>>> >>>>>> ------------------------------------------------------------ >>>>>> ------------------ >>>>>> Check out the vibrant tech community on one of the world's most >>>>>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot >>>>>> _______________________________________________ >>>>>> Please read the OpenNMS Mailing List FAQ: >>>>>> http://www.opennms.org/index.php/Mailing_List_FAQ >>>>>> >>>>>> opennms-discuss mailing list >>>>>> >>>>>> To *unsubscribe* or change your subscription options, see the bottom >>>>>> of this page: >>>>>> https://lists.sourceforge.net/lists/listinfo/opennms-discuss >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Mike Diehn >>>>> Development Operations >>>>> CD-adapco - Lebanon, NH >>>>> 603 277 3188 >>>>> >>>>> ------------------------------------------------------------ >>>>> ------------------ >>>>> Check out the vibrant tech community on one of the world's most >>>>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot >>>>> _______________________________________________ >>>>> Please read the OpenNMS Mailing List FAQ: >>>>> http://www.opennms.org/index.php/Mailing_List_FAQ >>>>> >>>>> opennms-discuss mailing list >>>>> >>>>> To *unsubscribe* or change your subscription options, see the bottom >>>>> of this page: >>>>> https://lists.sourceforge.net/lists/listinfo/opennms-discuss >>>>> >>>> >>>> ------------------------------------------------------------ >>>> ------------------ >>>> Check out the vibrant tech community on one of the world's most >>>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot >>>> _______________________________________________ >>>> Please read the OpenNMS Mailing List FAQ: >>>> http://www.opennms.org/index.php/Mailing_List_FAQ >>>> >>>> opennms-discuss mailing list >>>> >>>> To *unsubscribe* or change your subscription options, see the bottom of >>>> this page: >>>> https://lists.sourceforge.net/lists/listinfo/opennms-discuss >>>> >>> >>> >>> >>> -- >>> Mike Diehn >>> Development Operations >>> CD-adapco - Lebanon, NH >>> 603 277 3188 >>> >>> ------------------------------------------------------------ >>> ------------------ >>> Check out the vibrant tech community on one of the world's most >>> engaging tech sites, SlashDot.org! http://sdm.link/slashdot >>> _______________________________________________ >>> Please read the OpenNMS Mailing List FAQ: >>> http://www.opennms.org/index.php/Mailing_List_FAQ >>> >>> opennms-discuss mailing list >>> >>> To *unsubscribe* or change your subscription options, see the bottom of >>> this page: >>> https://lists.sourceforge.net/lists/listinfo/opennms-discuss >>> >> >> >> >> -- >> С уважением, >> Ермилов Леонид. >> > > > > -- > С уважением, > Ермилов Леонид. > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, SlashDot.org! http://sdm.link/slashdot > _______________________________________________ > Please read the OpenNMS Mailing List FAQ: > http://www.opennms.org/index.php/Mailing_List_FAQ > > opennms-discuss mailing list > > To *unsubscribe* or change your subscription options, see the bottom of > this page: > https://lists.sourceforge.net/lists/listinfo/opennms-discuss > -- Mike Diehn Development Operations CD-adapco - Lebanon, NH 603 277 3188 |