cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Integrating dynaTrace into other tools with SNMP v2

dconnett
Contributor

Hello,

We are integrating dynaTrace into another correlation engine by relaying the incidents with SNMP. Unfortunately the defaulty SNMP action did not contain adaquete information for our correlation engine.

 

We instead opted to use the SNMPv2 plugin which indeed does have all the necessary information (for example, the affected hosts).

 

Unfortunately sometimes the snmp message gets truncated. I have checked the SNMP log and the PDU writer shows that it is indeed writing out the entire SNMP message. It's only when I take a network trace that I noticed that much of the data is missing.

 

Has anyone else experienced this before? Perhaps there is a better solution to relay data from dynaTrace incidents? Perhaps an XML/SOAP based message?

15 REPLIES 15

richard_boyd22
Inactive

What is your ability to translate the outputs?  I have a client who was able to build an adapter for NetCool which read e-mails generated by the Extended EMail Action Plugin, do you think that's an option?

I did look at this, but I was trying to avoid this solution as we have already developed our interfaces to read the SNMP MIB. Though if the SNMP solution does not work, this may have to do.

 

Does that plugin contain all the information in a normal incident, including the affected hosts?

Yep.

  • AGENT_NAME,

  • AGENT_NAME_1

  •  AGENT_NAME_2,

  •  AGENT_NAME_3,

  •  AGENT_NAME_4,

  •  AGENT_NAME_5,

  •  AGENT_HOST,

  •  AGENT_HOST_1,

  •  AGENT_HOST_2,

  •  AGENT_HOST_3,

  •  AGENT_HOST_4,

  •  AGENT_HOST_5,

  •  ALL_AGENT_NAMES,

  •  ALL_AGENT_HOSTS,

  •  ALL_AGENTS,

  •  AGENT_GROUP_NAME,

  •  AGENT_GROUP_NAME_1,

  •  AGENT_GROUP_NAME_2,

  •  AGENT_GROUP_NAME_3,

  •  AGENT_GROUP_NAME_4,

  •  AGENT_GROUP_NAME_5,

  •  ALL_AGENT_GROUP_NAMES,

  •  MONITOR_NAME,

  •  MONITOR_NAME_1,

  •  MONITOR_NAME_2,

  •  MONITOR_NAME_3,

  •  MONITOR_NAME_4,

  •  MONITOR_NAME_5,

  •  MONITOR_HOST,

  •  MONITOR_HOST_1,

  •  MONITOR_HOST_2,

  •  MONITOR_HOST_3,

  •  MONITOR_HOST_4,

  •  MONITOR_HOST_5,

  •  ALL_MONITOR_NAMES,

  •  ALL_MONITOR_HOSTS,

  •  ALL_MONITORS,

  •  COLLECTOR_NAME,

  •  COLLECTOR_NAME_1,

  •  COLLECTOR_NAME_2,

  •  COLLECTOR_NAME_3,

  •  COLLECTOR_NAME_4,

  •  COLLECTOR_NAME_5,

  •  COLLECTOR_HOST,

  •  COLLECTOR_HOST_1,

  •  COLLECTOR_HOST_2,

  •  COLLECTOR_HOST_3,

  •  COLLECTOR_HOST_4,

  •  COLLECTOR_HOST_5,

  •  ALL_COLLECTOR_NAMES,

  •  ALL_COLLECTOR_HOSTS,

  •  ALL_COLLECTORS,

  •  SERVER_NAME,

  •  SERVER_NAME_1,

  •  SERVER_NAME_2,

  •  SERVER_NAME_3,

  •  SERVER_NAME_4,

  •  SERVER_NAME_5,

  •  ALL_SERVER_NAMES,

  •  DYNATRACE_SERVER_NAME,

  •  DYNATRACE_SERVER_REST_PORT,

  •  MESSAGE,

  •  RULE_NAME,

  •  RULE_DESCRIPTION,

  •  SENSITIVITY,

  •  SESSION_ID,

  •  SESSION_NAME,

  •  START_TIME,

  •  END_TIME,

  •  DURATION,

  •  IS_OPEN,

  •  IS_CLOSED,

  •  SEVERITY,

  •  KEY,

  •  STATE,

  •  SYSTEM_PROFILE,

  •  APPLICATION,

  •  VIOLATED_MEASURE_NAME,

  •  VIOLATED_MEASURE_DESCRIPTION,

  •  VIOLATED_MEASURE_VALUE,

  •  VIOLATED_MEASURE_UNIT,

  •  VIOLATED_MEASURE_SPLITTINGS,

  •  VIOLATED_MEASURE_TRESHOLD_UPPER_SEVERE,

  •  VIOLATED_MEASURE_TRESHOLD_LOWER_SEVERE,

  •  VIOLATED_MEASURE_TRESHOLD_UPPER_WARNING,

  •  VIOLATED_MEASURE_TRESHOLD_LOWER_WARNING,

  •  VIOLATED_MEASURE_METRIC_NAME,

  •  VIOLATED_MEASURE_METRIC_DESCRIPTION,

  •  VIOLATED_MEASURE_METRIC_GROUP,

  •  VIOLATED_MEASURE_METRIC_UNIT,

  •  VIOLATED_TRIGGER_VALUE_SOURCE_TYPE,

  •  VIOLATED_TRIGGER_VALUE_SOURCE_NAME,

  •  VIOLATED_TRIGGER_VALUE_SOURCE_HOST,

  •  VIOLATED_TRIGGER_VALUE,

  •  VIOLATION_HEADER_1,

  •  VIOLATION_MESSAGE_1,

  •  VIOLATION_HEADER_2,

  •  VIOLATION_MESSAGE_2,

  •  VIOLATION_HEADER_3,

  •  VIOLATION_MESSAGE_3,

  •  VIOLATION_HEADER_4,

  •  VIOLATION_MESSAGE_4,

  •  VIOLATION_HEADER_5,

  •  VIOLATION_MESSAGE_5,

  •  INCIDENT_STARTED_ENDED,

  •  IMAGE_WARNING_OK,

  •  DASHBOARD_URL_1,

  •  DASHBOARD_URL_2,

  •  DASHBOARD_URL_3,

  •  DASHBOARD_URL_4,

  •  DASHBOARD_URL_5.

I just got done playing with this plugin, it's got great customizability in terms of which variables we need to access, unfortunately using SMTP to relay messages directly into another application is somewhat clunky, and generally not supported.

 

This plugin would be far more useful if it could relay the message out in other formats like SOAP for example.

 

Actually I would be willing to fork this plugin and develop a SOAP extension if I could have access to this plugin's code. Not sure how feasible that is.

Hi David,

As Mike mentioned below, you can consider using the Generic Execution Plugin.  The Generic Execution Plugin version 5.5.2 invokes any web service. It maintains 100+ predefined variables, similar to the Extended Mail Action Plugin. Please let me know if  the Generic Execution Plugin works for you.

Eugene.  

 

 

Eugene,

I cannot figure out how to call RESTful web services. When I mark the Web Service check box it asks for a WSDL file. RESTful web services do not use WSDL files.

For REST calls you'll probably need to re-engineer the code (get some guidance from License Count plugin for the connection methodology and from the GEP to parse/pass incident details)

David,

As of right now the Generic Execution Plugin implements JAX-WS SOAP web services only. We have customers who asked us for this interface and we've implemented it. In your post from 5:01 PM yesterday you mentioned need in the SOAP extension. Again, this is already done in the 5.5.2 version of the Generic Execution Plugin.

In terms of RESTFul web services: we can surely add RESTful web services to the plugin.  Do you have customer(s) which need this type of web services or they can use JAX-WS web services for integration? Please let us know.  Also provide your timeframe when customer(s) need this feature to .be available.

Eugene.

 

Eugene,

I am at Costco, and we do need this feature. The timeframe is short though. I am playing with the generic execution code as we speak to see what I can come up with. If I make a breakthrough I will post it here.

Hi David,

I'm adding need in integration with the RESTful web services to my queue and will upload new version of the plugin to the Generic Execution Plugin page. We can add this feature relatively quickly and most likely meet your customer deadline if you give us idea what  "The timeframe is short though..." means. 

 Eugene.

Well right now the SNMP plugin was our main way of integrating data into other tools. Unfortunately it is failing when PDUs get too big (not sure why).

 

I have a ticket open right now that I am trying to resolve. So I guess you could say ASAP (smile)

 

 

Hi David,

We will work and add support for RESTful web services to the GE plugin quickly. I'd like to suggest that while we are working on it, could you please make sure that the parameter “Maximum Number of Message Octets" of the SNMP v2 plugin is set to large enough value? It can be 4K, 8K and higher. We have re-ordered data inside of the SNMP v2 traps to make sure that informative data like host names comes in the trap first. Of course, it does not guarantee data truncation because of size of the traps, I think use of the GE plugin with web services calls or invoking shell scripts remotely is the best way to integrate dynaTrace with customers applications, but SNMP v2 may be an option.

Eugene.

Thanks Eugene,

I did try modifying the octect parameters, but it seems no matter what I do, the packet gets truncated.

 

My Engineer over here is recommending that I just output the entire incident into XML and relay that somehow.

Hi David,

I've just updated SNMPv2 plugin page. Now the “Maximum Number of Message Octets” parameter can be set to 0 or -1 to prevent truncation of SNMP traps. When using it, please make sure that your network can handle traffic that could be created by excessive incidents thrown in your environment.

In terms of the RESTful interface: could you please provide me with the example of the RESTful web service that the Generic Execution plugin will be calling? This will help me to speed up work.

Please feel free to send me e-mails directly.

Eugene.

 

MichaelFerguson
Dynatrace Helper
Dynatrace Helper

Would this work.   This has just been updated recently.

Generic Execution Plugin

Regards,

Mike