| Osmius agent for Powerhawk2 | |
|
| Agent name: osm_ag_POWRHAWK | Agent code: POWRHAWK | |
| Subject: | User manual agente de Osmius para powerhawk2 | |
| Date: 19/04/2010 | Revision date: | |
This agent can monitor several parameters of Power supply units manufactured by Unite. It has been tested against CL-Amp current meters switch in Power Distribution Units PDU http://www.unitetechnologies.com/products.aspx and temperature sensors. However, we recommend checking its functionality before implanting it in a production environment.
This Agent has been developed using functionalities and enhancements of Osmius framework and ACE libraries, so it is necessary to install the ACE libraries for the proper deployment and operation of agente. See chapter: installation.
This PowerHawk2 osmius agent provides up to 32 basic events with configuration parameters to allow scaling of a very simple way. The basic events have been chosen by network experts. This agent also provides a general interface so the Osmius users can create customized events and associate them with any Instance within the monitoring system. Using the Osmius Web Console the users access to a MIB Navigator to load MIBS and to search for the appropriate snmp oid to create their own events.
In this agent all the provided events are non-intrusive events, remote events, so they can be retrieved from the network outside of the Instance being monitored. Events are build upon SNMP protocol version 1 or 2.
Osmius also has an agent to receive and process **SNMP Traps** and to redirect them into the event correlation system as they were Osmius “normal” events. For each Agent Type (Instance Type) we can configure several “Trap Events” and in this PowerHawk2 Agent we only need one trap event because all powerhawk2 threshold alarms (current, temperature, humidity, etc..) use these same three traps: trapCritical, trapWarning and trapCleared.
As a general rule each Osmius agent can monitor one instance type. If you are not familiar with these concepts check out the glossary. Each instance is individually defined in the configuration file (if you want further information go to agents and instances); depending on agent type is the instance type and depending on instance is the connection info.
The connection information or connection_info is data that the agent needs to know to connect to the instance. (See more about the connection_info)
In the particular case of PowerHawk2 agent the CONNECTION_INFO field has no information needs as it uses the generic SNMP fields like Nodename, read community and snmp port.
CONNECTION_INFO=
The type defines the instance type to be monitored. Every declared instance must be associated with a type as you can see here
In PowerHawk2 devices:
TYPE= POWRHAWK
Here is briefly the capabilities of this agent, further down on this page each event is described in more detail.
| EVENT | DESCRIPTION | c | w | a | tseconds | Extra parameters / Remarks |
|---|---|---|---|---|---|---|
| PHNAMEUN | Unit Name | 1 | 0 | 0 | 86400 | Informative event. Not user-configurable |
| PHSERNUM | Serial Number | 1 | 0 | 0 | 86400 | Informative event. Not user-configurable |
| PHMACADR | Unit medium access control (MAC) address | 1 | 0 | 0 | 86400 | Informative event. Not user-configurable |
| PHHWTYPE | Hardware type | 1 | 0 | 0 | 86400 | Informative event. Not user-configurable |
| PHFMWREV | Firmware revision number | 1 | 0 | 0 | 86400 | Informative event. Not user-configurable |
| PHBOLREV | Bootloader revision number | 1 | 0 | 0 | 86400 | Informative event. Not user-configurable |
| PHINP1AV a PHINP2AV | INPUT (1 o 2) Availablility | 0 | 2 | 2 | 300 | Silent mode ( -s) recommmended |
| PHINP1VL a PHINP2VL | INPUT (1 o 2) current reading in the relevant measurement units | 0 | 0 | 0 | 300 | Interesting parameter for capacity plannings |
| PHPDU1AV a PHPDU2AV | PDU (1 o 2) Availablility | 0 | 2 | 2 | 300 | Silent mode ( -s) recommmended |
| PHPDU1PO a PHPDU2PO | PDU (1 o 2) RMS Volts value in volts | 0 | 245 | 250 | 300 | Interesting parameter for capacity plannings |
| PHPDU1CU a PHPDU2CU | PDU (1 o 2) RMS current value in 0.1 Amps | 0 | 110 | 120 | 300 | Interesting parameter for capacity plannings |
| PHPDU1TE a PHPDU2TE | PDU (1 o 2) Total energy value in 0.1 kWh | 0 | 480000 | 500000 | 300 | Interesting parameter for capacity plannings |
| PHPDU1KV a PHPDU2KV | PDU (1 o 2) Kilo Volt-Amperes value in 0.1 kVA | 0 | 45 | 55 | 300 | Interesting parameter for capacity plannings |
| PHPDU1KW a PHPDU2KW | PDU (1 o 2) Kilo Watts value in 0.1 kW | 0 | 2 | 2 | 300 | Interesting parameter for capacity plannings |
| PHUSER01 a PHUSER10 | Get the SNMP values for the proposed parameters | 1 | 0 | 0 | 600 | Silent mode ( -s) recommmended You can define from PHUSER01 to PHUSER10 (10 events) -O oid -N override_nodename -K ovr_community -P ovr_port -V 1 |
PHNAMEUN returns Unit Name of the device
Return values:
| VALUE | MEANING |
| -1 | Error |
| 0 | Failed to retrieve the value |
| 1 | Value correctly retrieved |
Recommended parameters:
| Comparison type | Inverse. The higher value the lower severity (-c 1) |
| Monitoring interval | 86400 seconds |
| Warning threshold | 0 |
| Alert threshold | 0 |
Parameter setting example:
PHNAMEUN = -t 86400 -c 1 -w 0 -a 0 -T "Unit Name"
Remarks:
This is an “info” event, then it doesn't configurable with the Osmius console. The information text will be into the event text.
This event uses the Net-SNMP libraries.
PHSERNUM returns the Serial Number of the decice.
Return values:
| VALUE | MEANING |
| -1 | Error |
| 0 | Failed to retrieve the value |
| 1 | Value correctly retrieved |
Recommended parameters:
| Comparison type | Inverse. The higher value the lower severity (-c 1) |
| Monitoring interval | 86400 seconds |
| Warning threshold | 0 |
| Alert threshold | 0 |
Parameter setting example:
PHSERNUM = -t 86400 -c 1 -w 0 -a 0 -T "Serial Number"
Remarks:
This is an “info” event, then it doesn't configurable with the Osmius console. The information text will be into the event text.
This event uses the Net-SNMP libraries.
PHMACADR returns the MAC Adress of the device.
Return values:
| VALUE | MEANING |
| -1 | Error |
| 0 | Failed to retrieve the value |
| 1 | Value correctly retrieved |
Recommended parameters:
| Comparison type | Inverse. The higher value the lower severity (-c 1) |
| Monitoring interval | 86400 seconds |
| Warning threshold | 0 |
| Alert threshold | 0 |
Parameter setting example:
PHMACADR = -t 86400 -c 1 -w 0 -a 0 -T "MAC address"
Remarks:
This is an “info” event, then it doesn't configurable with the Osmius console. The information text will be into the event text.
This event uses the Net-SNMP libraries.
PHHWTYPE returns the Hardware Type of the device.
Return values:
| VALUE | MEANING |
| -1 | Error |
| 0 | Failed to retrieve the value |
| 1 | Value correctly retrieved |
Recommended parameters:
| Comparison type | Inverse. The higher value the lower severity (-c 1) |
| Monitoring interval | 86400 seconds |
| Warning threshold | 0 |
| Alert threshold | 0 |
Parameter setting example:
PHHWTYPE = -t 86400 -c 1 -w 0 -a 0 -T "Hardware Type"
Remarks:
This is an “info” event, then it doesn't configurable with the Osmius console. The information text will be into the event text.
This event uses the Net-SNMP libraries.
PHFMWREV returns the Firmware revision of the device.
Return values:
| VALUE | MEANING |
| -1 | Error |
| 0 | Failed to retrieve the value |
| 1 | Value correctly retrieved |
Recommended parameters:
| Comparison type | Inverse. The higher value the lower severity (-c 1) |
| Monitoring interval | 86400 seconds |
| Warning threshold | 0 |
| Alert threshold | 0 |
Parameter setting example:
PHFMWREV = -t 86400 -c 1 -w 0 -a 0 -T "Firmware revision number"
Remarks:
This is an “info” event, then it doesn't configurable with the Osmius console. The information text will be into the event text.
This event uses the Net-SNMP libraries.
PHBOLREV returns the Bootloader revision of the device.
Return values:
| VALUE | MEANING |
| -1 | Error |
| 0 | Failed to retrieve the value |
| 1 | Value correctly retrieved |
Recommended parameters:
| Comparison type | Inverse. The higher value the lower severity (-c 1) |
| Monitoring interval | 86400 seconds |
| Warning threshold | 0 |
| Alert threshold | 0 |
Parameter setting example:
PHBOLREV = -t 86400 -c 1 -w 0 -a 0 -T "Bootloader revision number"
Remarks:
This is an “info” event, then it doesn't configurable with the Osmius console. The information text will be into the event text.
This event uses the Net-SNMP libraries.
PHINP1AV to PHINP1AV return sensors INPUT1 to INPUT2 availability than can be measure temperature, humidity or other analogue values.
Possible values: active(1), notInService(2), notReady(3), createAndGo(4), createAndWait(5), destroy(6)
Return values:
| VALUE | MEANING |
| -1 | Error |
| 0 | Not available |
| 1 | Not available |
| >2 | Available |
Recommended parameters:
| Comparison type | Direct. The higher value the higher severity (-c 0) |
| Monitoring interval | 300 seconds - 1 hour –> depends on instance importance |
| Warning threshold | 2 |
| Alert threshold | 2 |
Parameter setting example:
PHINP1AV = -t 300 -c 0 -w 2 -a 2 -T "Sensor 1 Availability"
Remarks: This event uses the Osmius SNMP interface which in turn uses Net-SNMP libraries.
PHINP1VL to PHINP2VL return INPUT1 to INPUT2 values than can be temperature, humidity or other analogue values.
Return values:
| VALUE | MEANING |
| -1 | Error |
| X | Value measured by the sensor |
Recommended parameters:
| Comparison type | Direct. The higher value the higher severity (-c 0) |
| Monitoring interval | 300 seconds - 1 hour –> depends on instance importance |
| Warning threshold | 0 |
| Alert threshold | 0 |
Parameter setting example:
AMINTEMP = -t 300 -c 0 -w 0 -a 0 -T "Sensor 1 value"
Remarks: This event uses the Osmius SNMP interface which in turn uses Net-SNMP libraries.
PHPDU1AV to PHPDU2AV return PDU1 to PDU2 availability.
Possible values: active(1), notInService(2), notReady(3), createAndGo(4), createAndWait(5), destroy(6)
Return values:
| VALUE | MEANING |
| -1 | Error |
| 0 | Not available |
| 1 | Not available |
| >2 | Available |
Recommended parameters:
| Comparison type | Direct. The higher value the higher severity (-c 0) |
| Monitoring interval | 300 seconds - 1 hour –> depends on instance importance |
| Warning threshold | 2 |
| Alert threshold | 2 |
Parameter setting example:
PHPDU1AV = -t 300 -c 0 -w 0 -a 0 -T "PDU1 Availability"
Remarks: This event uses the Osmius SNMP interface which in turn uses Net-SNMP libraries.
PHPDU1PO a PHPDU2PO return PDU1 to PDU2 power RMS Volts value in volts.
Return values:
| VALUE | MEANING |
| -1 | Error |
| X | Value measured by the PDU |
Recommended parameters:
| Comparison type | Direct. The higher value the higher severity (-c 0) |
| Monitoring interval | 300 seconds - 1 hour –> depends on instance importance |
| Warning threshold | 245 |
| Alert threshold | 250 |
Parameter setting example:
PHPDU1PO = -t 300 -c 0 -w 245 -a 250 -T "RMS Volts value in volts"
Remarks: This event uses the Osmius SNMP interface which in turn uses Net-SNMP libraries.
PHPDU1CU to PHPDU2CU return PDU1 to PDU2 current value in RMS current value in 0.1 Amps.
Return values:
| VALUE | MEANING |
| -1 | Error |
| X | Value measured by the PDU |
Recommended parameters:
| Comparison type | Direct. The higher value the higher severity (-c 0) |
| Monitoring interval | 300 seconds - 1 hour –> depends on instance importance |
| Warning threshold | 110 |
| Alert threshold | 120 |
Parameter setting example:
PHPDU1CU = -t 300 -c 0 -w 110 -a 120 -T "RMS current value in 0.1 Amps"
Remarks: This event uses the Osmius SNMP interface which in turn uses Net-SNMP libraries.
PHPDU1TE to PHPDU1TE return PDU1 to PDU2 total energy value in 0.1 kWh.
Return values:
| VALUE | MEANING |
| -1 | Error |
| X | Value measured by the PDU |
Recommended parameters:
| Comparison type | Direct. The higher value the higher severity (-c 0) |
| Monitoring interval | 300 seconds - 1 hour –> depends on instance importance |
| Warning threshold | 480000 |
| Alert threshold | 500000 |
Parameter setting example:
PHPDU1TE = -t 300 -c 0 -w 480000 -a 500000 -T "Total energy value in 0.1 kWh"
Remarks: This event uses the Osmius SNMP interface which in turn uses Net-SNMP libraries.
PHPDU1KV to PHPDU2KV return PDU1 to PDU2 Kilo Volt-Amperes value in 0.1 kVA.
Return values:
| VALUE | MEANING |
| -1 | Error |
| X | Value measured by the PDU |
Recommended parameters:
| Comparison type | Direct. The higher value the higher severity (-c 0) |
| Monitoring interval | 300 seconds - 1 hour –> depends on instance importance |
| Warning threshold | 45 |
| Alert threshold | 55 |
Parameter setting example:
PHPDU1KV = -t 300 -c 0 -w 45 -a 55 -T "Kilo Volt-Amperes value in 0.1 kVA"
Remarks: This event uses the Osmius SNMP interface which in turn uses Net-SNMP libraries.
PHPDU1KW to PHPDU2KW return PDU1 to PDU2 Kilo Watts value in 0.1 kW.
Return values:
| VALUE | MEANING |
| -1 | Error |
| X | Value measured by the PDU |
Recommended parameters:
| Comparison type | Direct. The higher value the higher severity (-c 0) |
| Monitoring interval | 300 seconds - 1 hour –> depends on instance importance |
| Warning threshold | 45 |
| Alert threshold | 55 |
Parameter setting example:
PHPDU1KW = -t 300 -c 0 -w 45 -a 55 -T "Kilo Watts value in 0.1 kW"
Remarks: This event uses the Osmius SNMP interface which in turn uses Net-SNMP libraries.
PHUSER01 to PHUSER10 launches a SNMP get using the provided parameters. If the oid result is numeric this event returns a numeric value. If the oid result is a string this event returns 1 when everything is ok and the string within the event text. If something fails the returned value is 0.
Extra parameters:
| PARAMETER | MEANING | Mandatory |
| -O | -O “oid”- oid to recover. Try first one of these commands “snmpwalk -v1 -O f -c community target_IP” or “snmpget -v1 -c community -o oid target_IP. | Yes |
| -N | -L “nodename” - This node name overrides the one in the Instance CONNECTION_INFO and the default one (agent hostname). | No |
| -K | -K “community” - This “community name” overrides the one in the instance CONNECTION_INFO and the default one (“public”). | No |
| -P | -P “port” - This “port” overrides the one in the instance CONNECTION_INFO and the default one (161). | No |
| -Q | -Q “timeout” - timeout in seconds for the snmpget operations. Defaults to 0, no timeout. | No |
| -V | -V “version” - SNMP protocol version. Allowed values are [1, 2]. Defaults 2 (v2c). | No |
Return Values:
| VALUE | MEANING |
| -1 | Error |
| 0 | Failed to retrieve |
| 1 | String value correctly retrieved |
| N | Numeric value correctly retrieved |
Recommended Parameters:
| Comparison Type | Inverted or Direct. Depending on the oid parameter. |
| monitoring interval | 300 segundos – 1 hora –> depends on the instance classification |
| warning threshold | 0 or N depending on the oid type |
| critical threshold | or N depending on the oid type |
Parameter setting example:
PHUSER01 = -t 300 -c 1 -w 0 -a 0 -T "Product data signature" -O ".1.3.6.1.4.1.3711.24.1.1.99.0" -K secret_community -P 177 -Q 3 -V 1
Remarks:
The associated SNMP text will be into the event text.
This event uses the Net-SNMP libraries
Here is briefly the capabilities of this agent about its trap events, further down on this page we will describe each of the trap events in more detail.
| EVENT | DESCRIPTION |
|---|---|
| PHTRAPGN | Generic Trap Event |
This Agent only need one trap event because all powerhawk2 threshold alarms (current, temperature, humidity, etc..) use these same three traps: trapCritical, trapWarning and trapCleared.
In order to compile, this agent requires a set of prerequisites, which are generic to compile any Osmius agent, you can see these prerequisites.
In this particular agent you must also install Net-SNMP librares (Ubuntu “libsnmp”) that can be found here: http://net-snmp.sourceforge.net/ and in you OS repositories.
From the agent directory using console or terminal.
$ACE_ROOT/bin/mpc.pl -type gnuace osm_ag_POWRHAWK.mpc
make -f Makefile.Osm_Ag_POWRHAWK_Osmius
Binaries are automatically installed in the bin directory of OSM_ROOT base directory.
The Osmius POWRHAWK Agent have the same running features of the other Osmius agents. You can check it out int he section Start and Stop Agents.
Without Osmius web console:
| osm_ag_POWRHAWK -c osm_ag_POWRHAWK.ini -m MASTERAG -p 1950 -d [>> osm_ag_POWRHAWK.log]1) |
The Osmius POWRHAWK Osmius agent, like the others Osmius agents, allows the execution in standalone mode. This option may be particularly useful when developing a new agent or to perform specific agent tests.
Basically you have to add a new value, called SNDCMD, to Osmius agent configuration file (osm_ag_POWRHAWK.ini) as shown here.
Setting Master Agent communications port to zero, for example:
| osm_ag_POWRHAWK -c osm_ag_POWRHAWK.ini -m 00000000 -p 0 -d |
Test performed to POWRHAWK Osmius agent.
| Date: | 01/03/2010 | |
|---|---|---|
| Test | Result | Remarks |
| Creating an instance with all its events in silent mode | OK | N/A |
| Creating an instance with all its events with custom text | OK | N/A |
| Creating an instance with all its events but no custom text | OK | N/A |
| Declare 1 instance with all events set to 60 seconds and keep running for 48 hours | OK no memory leaks detected | |
| Declare 2 instances, cause a disconnect and then reconnect | N.A. | N/A |
| Declare 1 instance and test each event | OK | Sometimes it seems that the device gets over-questioned |
| Elimination of general parameter and check unbootable | OK | N/A |
| Elimination of instance CONN_INFO and check unbootable | Can't do this | no connect info |
| Event | oid | |
|---|---|---|
| PHNAMEUN | Unit name | .1.3.6.1.4.1.3711.24.1.1.99.7.0 |
| PHSERNUM | Serial Number | .1.3.6.1.4.1.3711.24.1.1.99.11.0 |
| PHMACADR | Unit medium access control (MAC) address | .1.3.6.1.4.1.3711.24.1.1.99.16.0 |
| PHHWTYPE | Hardware type | .1.3.6.1.4.1.3711.24.1.1.98.1.0 |
| PHFMWREV | Firmware revision number | .1.3.6.1.4.1.3711.24.1.1.98.2.0 |
| PHBOLREV | Bootloader revision number | .1.3.6.1.4.1.3711.24.1.1.98.3.0 |
| PHINP1AV | INPUT1 Available | .1.3.6.1.4.1.3711.24.1.1.1.2.2.1.2.1 |
| PHINP1VL | INPUT1 The current reading in the relevant measurement units | .1.3.6.1.4.1.3711.24.1.1.1.2.2.1.7.1 |
| PHINP2AV | INPUT2 Available | .1.3.6.1.4.1.3711.24.1.1.1.2.2.1.2.2 |
| PHINP2VL | INPUT2 The current reading in the relevant measurement units | .1.3.6.1.4.1.3711.24.1.1.1.2.2.1.7.2 |
| PHPDU1AV | PDU1 Available | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.2.1 |
| PHPDU1PO | PDU1 RMS Volts value in volts | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.3.1 |
| PHPDU1CU | PDU1 RMS current value in 0.1 Amps | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.4.1 |
| PHPDU1TE | PDU1 Total energy value in 0.1 kWh | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.5.1 |
| PHPDU1KV | PDU1 Kilo Volt-Amperes value in 0.1 kVA | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.6.1 |
| PHPDU1KW | PDU1 Kilo Watts value in 0.1 kW | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.7.1 |
| PHPDU2AV | PDU2 Available | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.2.2 |
| PHPDU2PO | PDU2 RMS Volts value in volts | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.3.2 |
| PHPDU2CU | PDU2 RMS current value in 0.1 Amps | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.4.2 |
| PHPDU2TE | PDU2 Total energy value in 0.1 kWh | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.5.2 |
| PHPDU2KV | PDU2 Kilo Volt-Amperes value in 0.1 kVA | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.6.2 |
| PHPDU2KW | PDU2 Kilo Watts value in 0.1 kW | .1.3.6.1.4.1.3711.24.1.1.7.3.1.1.7.2 |