Monitoring Chassis Cluster Faults
You can use SNMP traps and system log messages for fault monitoring of SRX Series chassis clusters.
SNMP Traps
Table 1 lists the SNMP traps supported on SRX Series devices. Note that only the primary node sends SNMP traps. For details of each trap, see the Network Management and Monitoring Guide, MIB Reference for SRX1400, SRX3400, and SRX3600 Services Gateways, and MIB Reference for SRX5600 and SRX5800 Services Gateways.
Trap Name |
SNMPv2 Trap OID |
Category |
Platforms Supported |
Varbinds |
---|---|---|---|---|
authenticationFailure |
1.3.6.1.6.3.1.1.5.5 |
Authentication |
All Junos OS devices |
None |
linkDown |
1.3.6.1.6.3.1.1.5.3 |
Link |
All Junos OS devices |
|
linkUp |
1.3.6.1.6.3.1.1.5.4 |
Link |
All Junos OS devices |
|
pingProbeFailed |
1.3.6.1.2.1.80.0.1 |
Remote operations |
All Junos OS devices |
|
pingTestFailed |
1.3.6.1.2.1.80.0.2 |
Remote operations |
All Junos OS devices |
|
pingTestCompleted |
1.3.6.1.2.1.80.0.3 |
Remote operations |
All Junos OS devices |
|
traceRoutePathChange |
1.3.6.1.2.1.81.0.1 |
Remote operations |
All Junos OS devices |
|
traceRouteTestFailed |
1.3.6.1.2.1.81.0.2 |
Remote operations |
All Junos OS devices |
|
traceRouteTestCompleted |
1.3.6.1.2.1.81.0.3 |
Remote operations |
All Junos OS devices |
|
fallingAlarm |
1.3.6.1.2.1.16.0.1 |
RMON alarm |
All Junos OS devices |
|
risingAlarm |
1.3.6.1.2.1.16.0.2 |
RMON alarm |
All Junos OS devices |
|
bgpEstablished |
1.3.6.1.2.1.15.7.1 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
bgpBackwardTransition |
1.3.6.1.2.1.15.7.2 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfVirtIfStateChange |
1.3.6.1.2.1.14.16.2.1 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfNbrStateChange |
1.3.6.1.2.1.14.16.2.2 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfVirtNbrStateChange |
1.3.6.1.2.1.14.16.2.3 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfIfConfigError |
1.3.6.1.2.1.14.16.2.4 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfVirtIfConfigError |
1.3.6.1.2.1.14.16.2.5 |
Routing |
M, T, MX, J, EX, SRX Branch |
1: 2: 3: 4: 5: |
ospfIfAuthFailure |
1.3.6.1.2.1.14.16.2.6 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfVirtIfAuthFailure |
1.3.6.1.2.1.14.16.2.7 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfIfRxBadPacket |
1.3.6.1.2.1.14.16.2.8 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfVirtIfRxBadPacket |
1.3.6.1.2.1.14.16.2.9 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfTxRetransmit |
1.3.6.1.2.1.14.16.2.10 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfVirtIfTxRetransmit |
1.3.6.1.2.1.14.16.2.11 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfMaxAgeLsa |
1.3.6.1.2.1.14.16.2.13 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
ospfIfStateChange |
1.3.6.1.2.1.14.16.2.16 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
coldStart |
1.3.6.1.6.3.1.1.5.1 |
Startup |
All Junos OS devices |
None |
warmStart |
1.3.6.1.6.3.1.1.5.2 |
Startup |
All Junos OS devices |
None |
vrrpTrapNewMaster |
1.3.6.1.2.1.68.0.1 |
VRRP |
All Junos OS devices |
vrrpOperMasterIpAddr - .1.3.6.1.2.1.68.1.3.1.7 |
vrrpTrapAuthFailure |
1.3.6.1.2.1.68.0.2 |
VRRP |
All Junos OS devices |
|
mplsTunnelUp |
1.3.6.1.2.1.10.166.3.0.1 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
mplsTunnelDown |
1.3.6.1.2.1.10.166.3.0.2 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
mplsTunnelRerouted |
1.3.6.1.2.1.10.166.3.0.3 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
mplsTunnelReoptimized |
1.3.6.1.2.1.10.166.3.0.4 |
Routing |
M, T, MX, J, EX, SRX Branch |
|
jnxPowerSupplyFailure |
1.3.6.1.4.1.2636.4.1.1 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxFanFailure |
1.3.6.1.4.1.2636.4.1.2 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxOverTemperature |
1.3.6.1.4.1.2636.4.1.3 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxRedundancySwitchOver |
1.3.6.1.4.1.2636.4.1.4 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxFruRemoval |
1.3.6.1.4.1.2636.4.1.5 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxFruInsertion |
1.3.6.1.4.1.2636.4.1.6 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxFruPowerOff |
1.3.6.1.4.1.2636.4.1.7 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxFruPowerOn |
1.3.6.1.4.1.2636.4.1.8 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxFruFailed |
1.3.6.1.4.1.2636.4.1.9 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxFruOffline |
1.3.6.1.4.1.2636.4.1.10 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxFruOnline |
1.3.6.1.4.1.2636.4.1.11 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxFruCheck |
1.3.6.1.4.1.2636.4.1.12 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxFEBSwitchover |
1.3.6.1.4.1.2636.4.1.13 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxHardDiskFailed |
1.3.6.1.4.1.2636.4.1.14 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxHardDiskMissing |
1.3.6.1.4.1.2636.4.1.15 |
Chassis (alarm conditions) |
All Junos OS devices |
|
jnxPowerSupplyOK |
1.3.6.1.4.1.2636.4.2.1 |
Chassis (cleared alarm conditions) |
All Junos OS devices |
|
jnxFanOK |
1.3.6.1.4.1.2636.4.2.2 |
Chassis (cleared alarm conditions) |
All Junos OS devices |
|
jnxTemperatureOK |
Chassis (cleared alarm conditions) |
All Junos OS devices |
|
|
jnxFRUOK |
1.3.6.1.4.1.2636.4.2.4 |
Chassis (cleared alarm conditions) |
All Junos OS devices |
|
jnxCmCfgChange |
1.3.6.1.4.1.2636.4.5.0.1 |
Configuration |
All Junos OS devices |
|
jnxCmRescueChange |
1.3.6.1.4.1.2636.4.5.0.2 |
Configuration |
All Junos OS devices |
|
jnxPingRttThresholdExceeded |
1.3.6.1.4.1.2636.4.9.0.1 |
Remote operations |
All Junos OS devices except EX and high-end SRX Series devices |
|
jnxPingRttStdDevThresholdExceeded |
1.3.6.1.4.1.2636.4.9.0.2 |
Remote operations |
All Junos OS devices except EX and high-end SRX Series devices |
|
jnxPingRttJitterThresholdExceeded |
1.3.6.1.4.1.2636.4.9.0.3 |
Remote operations |
All Junos OS devices except EX and high-end SRX Series devices |
|
jnxPingEgressThresholdExceeded |
1.3.6.1.4.1.2636.4.9.0.4 |
Remote operations |
All Junos OS devices except EX and high-end SRX Series devices |
|
jnxPingEgressStdDevThresholdExceed |
1.3.6.1.4.1.2636.4.9.0.5 |
Remote operations |
All Junos OS devices except EX and high-end SRX Series devices |
|
jnxPingEgressJitterThresholdExceeded |
1.3.6.1.4.1.2636.4.9.0.6 |
Remote operations |
All Junos OS devices except EX and high-end SRX Series devices |
|
jnxPingIngressThresholdExceeded |
1.3.6.1.4.1.2636.4.9.0.7 |
Remote operations |
All Junos OS devices except EX and high-end SRX Series devices |
|
jnxPingIngressStddevThresholdExceeded |
1.3.6.1.4.1.2636.4.9.0.8 |
Remote operations |
All Junos OS devices except EX and high-end SRX Series devices |
|
jnxPingIngressJitterThresholdExceeded |
1.3.6.1.4.1.2636.4.9.0.9 |
Remote operations |
All Junos OS devices except EX and high-end SRX Series devices |
|
jnxAccessAuthServiceUp |
1.3.6.1.4.1.2636.3.51.1.0.1 |
Routing |
J Series and SRX Series |
None |
jnxAccessAuthServiceDown |
1.3.6.1.4.1.2636.3.51.1.0.2 |
Routing |
J Series and SRX Series |
None |
jnxAccessAuthServerDisabled |
1.3.6.1.4.1.2636.3.51.1.0.3 |
Routing |
J Series and SRX Series |
jnxUserAAAServerName - .1.3.6.1.4.1.2636.3.51.1.1.3.1.0 |
jnxAccessAuthServerEnabled |
1.3.6.1.4.1.2636.3.51.1.0.4 |
Routing |
J Series and SRX Series |
jnxUserAAAServerName - .1.3.6.1.4.1.2636.3.51.1.1.3.1.0 |
jnxJsFwAuthFailure |
1.3.6.1.4.1.2636.3.39.1.2.1.0.1 |
Routing |
J Series and SRX Series |
|
jnxJsFwAuthServiceUp |
1.3.6.1.4.1.2636.3.39.1.2.1.0.2 |
Routing |
J Series and SRX Series |
None |
jnxJsFwAuthServiceDown |
1.3.6.1.4.1.2636.3.39.1.2.1.0.3 |
Routing |
J Series and SRX Series |
None |
jnxJsFwAuthCapacityExceeded |
1.3.6.1.4.1.2636.3.39.1.2.1.0.4 |
Routing |
J Series and SRX Series |
None |
jnxJsScreenAttack |
1.3.6.1.4.1.2636.3.39.1.8.1.0.1 |
Routing |
J Series and SRX Series |
|
jnxJsScreenCfgChange |
1.3.6.1.4.1.2636.3.39.1.8.1.0.2 |
Routing |
J Series and SRX Series |
|
jnxRmonAlarmGetFailure |
1.3.6.1.4.1.2636.4.3.0.1 |
RMON alarm |
All Junos OS devices |
|
jnxRmonGetOk |
1.3.6.1.4.1.2636.4.3.0.2 |
RMON alarm |
All Junos OS devices |
|
jnxSyslogTrap |
.1.3.6.1.4.1.2636.4.12.0.1 |
Services |
All Junos OS devices |
|
jnxEventTrap |
.1.3.6.1.4.1.2636.4.13.0.1 |
Services |
All Junos OS devices |
|
jnxJsAvPatternUpdateTrap |
.1.3.6.1.4.1.2636.3.39.1.13.1.0.1 |
Configuration |
J Series and SRX Series |
|
jnxJsChassisClusterSwitchover |
.1.3.6.1.4.1.2636.3.39.1.14.1.0.1 |
Chassis (alarm conditions) |
All Junos OS devices |
|
bfdSessUp |
.1.3.6.1.4.1.2636.5.3.1.0.1 |
Routing |
All Junos OS devices |
|
bfdSessDown |
.1.3.6.1.4.1.2636.5.3.1.0.2 |
Routing |
All Junos OS devices |
|
jnxBfdSessTxIntervalHigh |
.1.3.6.1.4.1.2636.3.45.1.0.1 |
Routing |
All Junos OS devices |
|
jnxBfdSessDetectionTimeHigh |
.1.3.6.1.4.1.2636.3.45.1.0.2 |
Routing |
All Junos OS devices |
|
jnxBgpM2Established |
.1.3.6.1.4.1.2636.5.1.1.1.0.1 |
Routing |
All Junos OS devices |
|
jnxBgpM2BackwardTransition |
.1.3.6.1.4.1.2636.5.1.1.1.0.2 |
Routing |
All Junos OS devices |
|
If the fxp0 interface fails on the backup Routing Engine, it does not send any traps. The system logging (syslog) feature can be used to monitor the secondary node fxp0 interface by logging a link down message.
System Log Messages
The system logging feature can be sent by both the primary and secondary nodes. You can configure the system to send specific syslog messages to the external syslog servers based on regular expressions or severity. For more information, see the System Log Explorer.
The following sample shows the jnxSyslog trap configuration
for a ui_commit_progress
(configuration
commit in progress) event.
jnxSyslog Trap Configuration
event-options { policy syslogtrap { events [ ui_commit ui_commit_progress ]; then { raise-trap; } } }
jnxSyslog Trap
Jul 6 13:31:21 snmpd[0] <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Jul 6 13:31:21 snmpd[0] <<< V2 Trap Jul 6 13:31:21 snmpd[0] <<< Source: 116.197.179.6 Jul 6 13:31:21 snmpd[0] <<< Destination: 116.197.179.5 Jul 6 13:31:21 snmpd[0] <<< Version: SNMPv2 Jul 6 13:31:21 snmpd[0] <<< Community: petblr Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : sysUpTime.0 Jul 6 13:31:21 snmpd[0] <<< type : TimeTicks Jul 6 13:31:21 snmpd[0] <<< value: (284292835) 789:42:08.35 Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : snmpTrapOID.0 Jul 6 13:31:21 snmpd[0] <<< type : Object Jul 6 13:31:21 snmpd[0] <<< value: jnxSyslogTrap Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : jnxSyslogEventName.83 Jul 6 13:31:21 snmpd[0] <<< type : OctetString Jul 6 13:31:21 snmpd[0] <<< value: "UI_COMMIT_PROGRESS" Jul 6 13:31:21 snmpd[0] <<< HEX : 55 49 5f 43 4f 4d 4d 49 Jul 6 13:31:21 snmpd[0] <<< 54 5f 50 52 4f 47 52 45 Jul 6 13:31:21 snmpd[0] <<< 53 53 Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : jnxSyslogTimestamp.83 Jul 6 13:31:21 snmpd[0] <<< type : OctetString Jul 6 13:31:21 snmpd[0] <<< HEX : 07 da 07 06 0d 1f 11 00 Jul 6 13:31:21 snmpd[0] <<< 2b 00 00 Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : jnxSyslogSeverity.83 Jul 6 13:31:21 snmpd[0] <<< type : Number Jul 6 13:31:21 snmpd[0] <<< value: 7 Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : jnxSyslogFacility.83 Jul 6 13:31:21 snmpd[0] <<< type : Number Jul 6 13:31:21 snmpd[0] <<< value: 24 Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : jnxSyslogProcessId.83 Jul 6 13:31:21 snmpd[0] <<< type : Gauge Jul 6 13:31:21 snmpd[0] <<< value: 84003 Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : jnxSyslogProcessName.83 Jul 6 13:31:21 snmpd[0] <<< type : OctetString Jul 6 13:31:21 snmpd[0] <<< value: "mgd" Jul 6 13:31:21 snmpd[0] <<< HEX : 6d 67 64 Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : jnxSyslogHostName.83 Jul 6 13:31:21 snmpd[0] <<< type : OctetString Jul 6 13:31:21 snmpd[0] <<< HEX : Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : jnxSyslogMessage.83 Jul 6 13:31:21 snmpd[0] <<< type : OctetString Jul 6 13:31:21 snmpd[0] <<< value: "UI_COMMIT_PROGRESS: Commit opera Jul 6 13:31:21 snmpd[0] <<< tion in progress: notifying mib Jul 6 13:31:21 snmpd[0] <<< 2d(15)" Jul 6 13:31:21 snmpd[0] <<< HEX : 55 49 5f 43 4f 4d 4d 49 Jul 6 13:31:21 snmpd[0] <<< 54 5f 50 52 4f 47 52 45 Jul 6 13:31:21 snmpd[0] <<< 53 53 3a 20 43 6f 6d 6d Jul 6 13:31:21 snmpd[0] <<< 69 74 20 6f 70 65 72 61 Jul 6 13:31:21 snmpd[0] <<< 74 69 6f 6e 20 69 6e 20 Jul 6 13:31:21 snmpd[0] <<< 70 72 6f 67 72 65 73 73 Jul 6 13:31:21 snmpd[0] <<< 3a 20 20 6e 6f 74 69 66 Jul 6 13:31:21 snmpd[0] <<< 79 69 6e 67 20 6d 69 62 Jul 6 13:31:21 snmpd[0] <<< 32 64 28 31 35 29 Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : jnxSyslogAvAttribute.83.1 Jul 6 13:31:21 snmpd[0] <<< type : OctetString Jul 6 13:31:21 snmpd[0] <<< value: "message" Jul 6 13:31:21 snmpd[0] <<< HEX : 6d 65 73 73 61 67 65 Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : jnxSyslogAvValue.83.1 Jul 6 13:31:21 snmpd[0] <<< type : OctetString Jul 6 13:31:21 snmpd[0] <<< value: " notifying mib2d(15)" Jul 6 13:31:21 snmpd[0] <<< HEX : 20 6e 6f 74 69 66 79 69 Jul 6 13:31:21 snmpd[0] <<< 6e 67 20 6d 69 62 32 64 Jul 6 13:31:21 snmpd[0] <<< 28 31 35 29 Jul 6 13:31:21 snmpd[0] <<< Jul 6 13:31:21 snmpd[0] <<< OID : snmpTrapEnterprise.0 Jul 6 13:31:21 snmpd[0] <<< type : Object Jul 6 13:31:21 snmpd[0] <<< value: jnxProductNameSRX240 Jul 6 13:31:21 snmpd[0] <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
A switchover can be detected using a failover trap, the chassis cluster status, or an automatic failover trap.
Failover Trap
The trap message can help you troubleshoot failovers. It contains the following information:
Cluster ID and node ID
Reason for the failover
Redundancy group that is involved in the failover
Redundancy group’s previous state and current state
The cluster can be in any of the different states at any given instant: hold, primary, secondary-hold, secondary, ineligible, and disabled. Traps are generated for the following state transitions (only a transition from a hold state does not trigger a trap):
primary <–> secondary
primary –> secondary-hold
secondary-hold –> secondary
secondary –> ineligible
ineligible –> disabled
ineligible –> primary
secondary –> disabled
A transition can be triggered due to events such as interface monitoring, SPU monitoring, failures, and manual failovers.
Event triggering is applicable for all redundancy groups including RG0, RG1, and so on. All redundancy group failover events trigger the same trap, and the actual group can be identified by examining the jnxJsChClusterSwitchoverInfoRedundancyGroup parameter in the trap varbind.
The trap is forwarded over the control link if the outgoing interface is on a node different from the node of the Routing Engine that generates the trap. The following are sample traps for manual and automatic failovers. Note that the traps are generated by the current primary devices before the failover occurs.
A failover in any redundancy group (RG) other than redundancy group 0 does not make the other node the primary node.
In the following example, node 0 is the primary node in RG0, while it is the secondary node in RG1. Node 0 remains the primary node for the cluster. Only when the failover happens on node 1 in RG0 does node 1 become the primary node for the cluster. So even if a switchover happens on other groups, the primary node should be queried for all statistics and data as previously mentioned.
Junos OS can be configured to send a desirable IP address as the source IP address of SNMP trap PDUs. Otherwise, SNMP traps always contain the outgoing interface IP address.
Chassis Cluster Status
user@host> show chassis cluster status Cluster ID: 12 Node Priority Status Preempt Manual failover Redundancy group: 0 , Failover count: 3 node 255 primary no yes node1 1 secondary-hold no yes Redundancy group: 1 , Failover count: 4 node0 100 secondary no yes node1 255 primary no yes
Manual Failover Trap
Jul 6 05:14:57 snmpd[0] <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Jul 6 05:14:57 snmpd[0] <<< V2 Trap Jul 6 05:14:57 snmpd[0] <<< Source: 192.168.29.2 Jul 6 05:14:57 snmpd[0] <<< Destination: 10.204.132.188 Jul 6 05:14:57 snmpd[0] <<< Version: SNMPv2 Jul 6 05:14:57 snmpd[0] <<< Community: test Jul 6 05:14:57 snmpd[0] <<< Jul 6 05:14:57 snmpd[0] <<< OID : sysUpTime.0 Jul 6 05:14:57 snmpd[0] <<< type : TimeTicks Jul 6 05:14:57 snmpd[0] <<< value: (754507) 2:05:45.07 Jul 6 05:14:57 snmpd[0] <<< Jul 6 05:14:57 snmpd[0] <<< OID : snmpTrapOID.0 Jul 6 05:14:57 snmpd[0] <<< type : Object Jul 6 05:14:57 snmpd[0] <<< value: jnxJsChassisClusterSwitchover Jul 6 05:14:57 snmpd[0] <<< Jul 6 05:14:57 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoRedundancyGroup.0 Jul 6 05:14:57 snmpd[0] <<< type : OctetString Jul 6 05:14:57 snmpd[0] <<< value: "1" Jul 6 05:14:57 snmpd[0] <<< HEX : 31 Jul 6 05:14:57 snmpd[0] <<< Jul 6 05:14:57 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoClusterId.0 Jul 6 05:14:57 snmpd[0] <<< type : OctetString Jul 6 05:14:57 snmpd[0] <<< value: "12" Jul 6 05:14:57 snmpd[0] <<< HEX : 31 32 Jul 6 05:14:57 snmpd[0] <<< Jul 6 05:14:57 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoNodeId.0 Jul 6 05:14:57 snmpd[0] <<< type : OctetString Jul 6 05:14:57 snmpd[0] <<< value: "0" Jul 6 05:14:57 snmpd[0] <<< HEX : 30 Jul 6 05:14:57 snmpd[0] <<< Jul 6 05:14:57 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoPreviousState.0 Jul 6 05:14:57 snmpd[0] <<< type : OctetString Jul 6 05:14:57 snmpd[0] <<< value: "primary" Jul 6 05:14:57 snmpd[0] <<< HEX : 70 72 69 6d 61 72 79 Jul 6 05:14:57 snmpd[0] <<< Jul 6 05:14:57 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoCurrentState.0 Jul 6 05:14:57 snmpd[0] <<< type : OctetString Jul 6 05:14:57 snmpd[0] <<< value: "secondary-hold" Jul 6 05:14:57 snmpd[0] <<< HEX : 73 65 63 6f 6e 64 61 72 Jul 6 05:14:57 snmpd[0] <<< 79 2d 68 6f 6c 64 Jul 6 05:14:57 snmpd[0] <<< Jul 6 05:14:57 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoReason.0 Jul 6 05:14:57 snmpd[0] <<< type : OctetString Jul 6 05:14:57 snmpd[0] <<< value: "manual failover" Jul 6 05:14:57 snmpd[0] <<< HEX : 6d 61 6e 75 61 6c 20 66 Jul 6 05:14:57 snmpd[0] <<< 61 69 6c 6f 76 65 72 Jul 6 05:14:57 snmpd[0] <<< Jul 6 05:14:57 snmpd[0] <<< OID : snmpTrapEnterprise.0 Jul 6 05:14:57 snmpd[0] <<< type : Object Jul 6 05:14:57 snmpd[0] <<< value: jnxProductNameSRX5600 Jul 6 05:14:57 snmpd[0] <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Automatic Failover Trap
Jul 6 03:12:20 snmpd[0] <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Jul 6 03:12:20 snmpd[0] <<< V1 Trap Jul 6 03:12:20 snmpd[0] <<< Source: 192.168.29.2 Jul 6 03:12:20 snmpd[0] <<< Destination: 10.204.132.188 Jul 6 03:12:20 snmpd[0] <<< Version: SNMPv1 Jul 6 03:12:20 snmpd[0] <<< Community: test Jul 6 03:12:20 snmpd[0] <<< Agent addr: 10.255.131.37 Jul 6 03:12:20 snmpd[0] <<< sysUpTime: (18763) 0:03:07.63 Jul 6 03:12:20 snmpd[0] <<< Enterprise: jnxJsChassisClusterMIB Jul 6 03:12:20 snmpd[0] <<< Generic trap: 6, Specific trap: 1 Jul 6 03:12:20 snmpd[0] <<< Jul 6 03:12:20 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoRedundancyGroup.0 Jul 6 03:12:20 snmpd[0] <<< type : OctetString Jul 6 03:12:20 snmpd[0] <<< value: "1" Jul 6 03:12:20 snmpd[0] <<< HEX : 31 Jul 6 03:12:20 snmpd[0] <<< Jul 6 03:12:20 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoClusterId.0 Jul 6 03:12:20 snmpd[0] <<< type : OctetString Jul 6 03:12:20 snmpd[0] <<< value: "12" Jul 6 03:12:20 snmpd[0] <<< HEX : 31 32 Jul 6 03:12:20 snmpd[0] <<< Jul 6 03:12:20 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoNodeId.0 Jul 6 03:12:20 snmpd[0] <<< type : OctetString Jul 6 03:12:20 snmpd[0] <<< value: "0" Jul 6 03:12:20 snmpd[0] <<< HEX : 30 Jul 6 03:12:20 snmpd[0] <<< Jul 6 03:12:20 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoPreviousState.0 Jul 6 03:12:20 snmpd[0] <<< type : OctetString Jul 6 03:12:20 snmpd[0] <<< value: "secondary-hold" Jul 6 03:12:20 snmpd[0] <<< HEX : 73 65 63 6f 6e 64 61 72 Jul 6 03:12:20 snmpd[0] <<< 79 2d 68 6f 6c 64 Jul 6 03:12:20 snmpd[0] <<< Jul 6 03:12:20 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoCurrentState.0 Jul 6 03:12:20 snmpd[0] <<< type : OctetString Jul 6 03:12:20 snmpd[0] <<< value: "secondary" Jul 6 03:12:20 snmpd[0] <<< HEX : 73 65 63 6f 6e 64 61 72 Jul 6 03:12:20 snmpd[0] <<< 79 Jul 6 03:12:20 snmpd[0] <<< Jul 6 03:12:20 snmpd[0] <<< OID : jnxJsChClusterSwitchoverInfoReason.0 Jul 6 03:12:20 snmpd[0] <<< type : OctetString Jul 6 03:12:20 snmpd[0] <<< value: "back to back failover interval expired" Jul 6 03:12:20 snmpd[0] <<< HEX : 62 61 63 6b 20 74 6f 20 Jul 6 03:12:20 snmpd[0] <<< 62 61 63 6b 20 66 61 69 Jul 6 03:12:20 snmpd[0] <<< 6c 6f 76 65 72 20 69 6e Jul 6 03:12:20 snmpd[0] <<< 74 65 72 76 61 6c 20 65 Jul 6 03:12:20 snmpd[0] <<< 78 70 69 72 65 64 Jul 6 03:12:20 snmpd[0] <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Other Indications for Failover
When a failover occurs in the RG0 redundancy group:
An SNMP warm start trap is sent by the new primary node.
After a failover, LinkUp traps are sent for all the interfaces that come up on the new primary node.
Syslog messages are sent from the new primary node.
Managing and Monitoring a Chassis Cluster Using Operational and Event Scripts
Junos OS operation (op) scripts automate network and router management and troubleshooting. Op scripts can perform any function available through the remote procedure calls (RPCs) supported by either of the two application programming interfaces (APIs): the Junos OS Extensible Markup Language (XML) API and the Junos OS XML Management Protocol API. Scripts are written in the Extensible Stylesheet Language Transformations (XSLT) or Stylesheet Language Alternative Syntax (SLAX) scripting languages.
Op scripts allow you to:
Monitor the overall status of a routing platform.
Customize the output of operational mode commands.
Reconfigure the routing platform to avoid or work around known problems in the Junos OS software.
Change the router’s configuration in response to a problem.
Junos OS event scripts automate network and router management and troubleshooting. These are operational scripts triggered by event policies.
An example of a jnx event trap follows. In the example, the ev-syslog-trap
event script raises a jnxEvent trap whenever an alarm is triggered on the device.
jnx event trap
{ events SYSTEM; attributes-match { SYSTEM.message matches "Alarm set"; } then { event-script ev-syslog-trap.slax { arguments { event SYSTEM; message "{$$.message}"; } } } }
The following trap is sent to bring a link down on the device to set an alarm.
Apr 16 05:09:43 snmpd[0] <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< Apr 16 05:09:43 snmpd[0] <<< V2 Trap Apr 16 05:09:43 snmpd[0] <<< Source: 116.197.178.12 Apr 16 05:09:43 snmpd[0] <<< Destination: 66.129.237.197 Apr 16 05:09:43 snmpd[0] <<< Version: SNMPv2 Apr 16 05:09:43 snmpd[0] <<< Community: test Apr 16 05:09:43 snmpd[0] <<< Apr 16 05:09:43 snmpd[0] <<< OID : sysUpTime.0 Apr 16 05:09:43 snmpd[0] <<< type : TimeTicks Apr 16 05:09:43 snmpd[0] <<< value: (246317536) 684:12:55.36 Apr 16 05:09:43 snmpd[0] <<< Apr 16 05:09:43 snmpd[0] <<< OID : snmpTrapOID.0 Apr 16 05:09:43 snmpd[0] <<< type : Object Apr 16 05:09:43 snmpd[0] <<< value: jnxEventTrap Apr 16 05:09:43 snmpd[0] <<< Apr 16 05:09:43 snmpd[0] <<< OID : jnxEventTrapDescr.0 Apr 16 05:09:43 snmpd[0] <<< type : OctetString Apr 16 05:09:43 snmpd[0] <<< value: "'Event-Trap'" Apr 16 05:09:43 snmpd[0] <<< HEX : 27 45 76 65 6e 74 2d 54 Apr 16 05:09:43 snmpd[0] <<< 72 61 70 27 Apr 16 05:09:43 snmpd[0] <<< Apr 16 05:09:43 snmpd[0] <<< OID : jnxEventAvAttribute.1 Apr 16 05:09:43 snmpd[0] <<< type : OctetString Apr 16 05:09:43 snmpd[0] <<< value: "'event'" Apr 16 05:09:43 snmpd[0] <<< HEX : 27 65 76 65 6e 74 27 Apr 16 05:09:43 snmpd[0] <<< Apr 16 05:09:43 snmpd[0] <<< OID : jnxEventAvValue.1 Apr 16 05:09:43 snmpd[0] <<< type : OctetString Apr 16 05:09:43 snmpd[0] <<< value: "'SYSTEM'" Apr 16 05:09:43 snmpd[0] <<< HEX : 27 53 59 53 54 45 4d 27 Apr 16 05:09:43 snmpd[0] <<< Apr 16 05:09:43 snmpd[0] <<< OID : jnxEventAvAttribute.2 Apr 16 05:09:43 snmpd[0] <<< type : OctetString Apr 16 05:09:43 snmpd[0] <<< value: "'message'" Apr 16 05:09:43 snmpd[0] <<< HEX : 27 6d 65 73 73 61 67 65 Apr 16 05:09:43 snmpd[0] <<< 27 Apr 16 05:09:43 snmpd[0] <<< Apr 16 05:09:43 snmpd[0] <<< OID : jnxEventAvValue.1 Apr 16 05:09:43 snmpd[0] <<< type : OctetString Apr 16 05:09:43 snmpd[0] <<< value: "' Minor alarm set, ge-1/0/0: Link down'" Apr 16 05:09:43 snmpd[0] <<< HEX : 27 20 4d 69 6e 6f 72 20 Apr 16 05:09:43 snmpd[0] <<< 61 6c 61 72 6d 20 73 65 Apr 16 05:09:43 snmpd[0] <<< 74 2c 20 67 65 2d 31 2f Apr 16 05:09:43 snmpd[0] <<< 30 2f 30 3a 20 4c 69 6e Apr 16 05:09:43 snmpd[0] <<< 6b 20 64 6f 77 6e 27 Apr 16 05:09:43 snmpd[0] <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
Using the Utility MIB for Monitoring a Chassis Cluster
The Juniper Networks utility MIB (jnxUtil) is a powerful tool to expose Junos OS data using SNMP. A generic utility MIB is defined to hold data populated by op scripts or event scripts. There are five separate tables in this MIB, one for each of the following data types: 32-bit counters, 64-bit counters, signed integers, unsigned integers, and octet strings. Each data instance is identified by an arbitrary ASCII name defined when the data is populated. Each data instance also has a corresponding timestamp identifying when it was last updated.
The data in these MIB tables can be populated using hidden CLI commands, which are also accessible from an op script using the jcs:invoke remote procedure call (RPC) API.
One of the examples we use for reading power on the device, which is not available using SNMP, is the jnxUtil MIB. With a simple event script, you can read the power output every minute and populate the jnxUtil MIB. Similarly, you can write op scripts or event scripts that can populate a variety of data of different types. For more information about utility MIB examples for sample scripts and usage of the utility MIB, see Utility MIB Examples.