Source: https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/net/cisco/cisco_asav_snmp
For Zabbix version: 6.2 and higher
Secure Firewall ASA Virtual is the virtualized option of popular Secure Firewall ASA solution and offers security in traditional physical data centers and private and public clouds.
Learn more about Cisco ASAv: https://www.cisco.com/c/en/us/products/collateral/security/adaptive-security-virtual-appliance-asav/adapt-security-virtual-appliance-ds.html
This template was tested on:
See Zabbix template operation for basic instructions.
Refer to the vendor documentation.
No specific Zabbix configuration is required.
Name | Description | Default |
---|---|---|
{$CISCO.LLD.FILTER.IF.ADMIN.MATCHES} | Filter of discoverable interfaces by admin status. 1 - Up 2 - Down 3 - Testing |
1 |
{$CISCO.LLD.FILTER.IF.ADMIN.NOT_MATCHES} | Filter to exclude discovered interfaces by admin status. |
CHANGE_IF_NEEDED |
{$CISCO.LLD.FILTER.IF.CONTROL.MATCHES} | Filter triggers by discoverable interface names. Used in overrides. Triggers will only be created for interfaces whose names contain the value of the macro. |
.* |
{$CISCO.LLD.FILTER.IF.DESC.MATCHES} | Filter by discoverable interface description. |
.* |
{$CISCO.LLD.FILTER.IF.DESC.NOT_MATCHES} | Filter to exclude discovered interfaces by description. |
CHANGE_IF_NEEDED |
{$CISCO.LLD.FILTER.IF.NAME.MATCHES} | Filter by discoverable interface names. |
.* |
{$CISCO.LLD.FILTER.IF.NAME.NOT_MATCHES} | Filter to exclude discovered interfaces by name. |
CHANGE_IF_NEEDED |
{$CPU.UTIL.CRIT} | - |
90 |
{$MEMORY.UTIL.MAX} | - |
90 |
{$SNMP.TIMEOUT} | The time interval for SNMP agent availability trigger expression. |
5m |
There are no template links in this template.
Name | Description | Type | Key and additional info |
---|---|---|---|
CPU discovery | Discovery of cpmCPUTotalTable, a table of CPU monitoring entries. |
SNMP | cisco.asav.cpu.discovery |
Interface discovery | Network interfaces discovery |
SNMP | cisco.asav.net.if.discovery Filter: AND- {#CISCO.IF.NAME} MATCHES_REGEX - {#CISCO.IF.NAME} NOT_MATCHES_REGEX - {#CISCO.IF.STATUS.ADMIN} MATCHES_REGEX - {#CISCO.IF.STATUS.ADMIN} NOT_MATCHES_REGEX - {#CISCO.IF.DESC} MATCHES_REGEX - {#CISCO.IF.DESC} NOT_MATCHES_REGEX Overrides: Don't create triggers for matching interface |
Memory discovery | Discovery of ciscoMemoryPoolTable, a table of memory pool monitoring entries. |
SNMP | cisco.asav.memory.discovery |
Physical entry discovery | Information about a particular physical entity. |
SNMP | cisco.asav.physical.entry.discovery |
Session discovery | Remote access session discovery |
SNMP | cisco.asav.session.discovery |
Group | Name | Description | Type | Key and additional info |
---|---|---|---|---|
CPU | Cisco ASAv: CPU [{#SNMPINDEX}] Utilization | MIB: CISCO-PROCESS-MIB The overall CPU busy percentage in the last 5 minute period. This object deprecates the object cpmCPUTotal5min and increases the value range to (0..100). |
SNMP | cisco.asav.cpu.util[{#SNMPINDEX}] |
Inventory | Cisco ASAv: System description | MIB: RFC1213-MIB A textual description of the entity. This value should include the full name and version identification of the system's hardware type, software operating-system, and networking software. It is mandatory that this only contain printable ASCII characters. |
SNMP | cisco.asav.model Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Inventory | Cisco ASAv: Contact | MIB: RFC1213-MIB The textual identification of the contact person for this managed node, together with information on how to contact this person. |
SNMP | cisco.asav.contact Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Inventory | Cisco ASAv: Host name | MIB: RFC1213-MIB An administratively-assigned name for this managed node. By convention, this is the node's fully-qualified domain name. |
SNMP | cisco.asav.name Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Inventory | Cisco ASAv: Location | MIB: RFC1213-MIB The physical location of this node (e.g.,
|
||
Inventory | Cisco ASAv: {#CISCO.ASAV.PHYS.NAME} Physical description | MIB: ENTITY-MIB A textual description of physical entity. This object should contain a string that identifies the manufacturer's name for the physical entity, and should be set to a distinct value for each version or model of the physical entity. |
SNMP | cisco.asav.phys.description[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Inventory | Cisco ASAv: {#CISCO.ASAV.PHYS.NAME} Physical class | MIB: ENTITY-MIB An indication of the general hardware type of the physical entity. An agent should set this object to the standard enumeration value that most accurately indicates the general class of the physical entity, or the primary class if there is more than one entity. If no appropriate standard registration identifier exists for this physical entity, then the value 'other(1)' is returned. If the value is unknown by this agent, then the value 'unknown(2)' is returned. |
SNMP | cisco.asav.phys.class[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Inventory | Cisco ASAv: {#CISCO.ASAV.PHYS.NAME} Physical name | MIB: ENTITY-MIB The textual name of the physical entity. The value of this object should be the name of the component as assigned by the local device and should be suitable for use in commands entered at the device's port or module number, such as |
||
Inventory | Cisco ASAv: {#CISCO.ASAV.PHYS.NAME} Hardware revision | MIB: ENTITY-MIB The vendor-specific hardware revision string for the physical entity. The preferred value is the hardware revision identifier actually printed on the component itself (if present). Note that if revision information is stored internally in a non-printable (e.g., binary) format, then the agent must convert such information to a printable format, in an implementation-specific manner. If no specific hardware revision string is associated with the physical component, or if this information is unknown to the agent, then this object will contain a zero-length string. |
SNMP | cisco.asav.phys.hw[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Inventory | Cisco ASAv: {#CISCO.ASAV.PHYS.NAME} Software revision | MIB: ENTITY-MIB The vendor-specific software revision string for the physical entity. Note that if revision information is stored internally in a non-printable (e.g., binary) format, then the agent must convert such information to a printable format, in an implementation-specific manner. If no specific software programs are associated with the physical component, or if this information is unknown to the agent, then this object will contain a zero-length string. |
SNMP | cisco.asav.phys.sw[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Inventory | Cisco ASAv: {#CISCO.ASAV.PHYS.NAME} Serial number | MIB: ENTITY-MIB The vendor-specific serial number string for the physical entity. The preferred value is the serial number string actually printed on the component itself (if present). On the first instantiation of an physical entity, the value of entPhysicalSerialNum associated with that entity is set to the correct vendor-assigned serial number, if this information is available to the agent. If a serial number is unknown or non-existent, the entPhysicalSerialNum will be set to a zero-length string instead. |
SNMP | cisco.asav.phys.sn[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Inventory | Cisco ASAv: {#CISCO.ASAV.PHYS.NAME} Manufacturer name | MIB: ENTITY-MIB The name of the manufacturer of this physical component. The preferred value is the manufacturer name string actually printed on the component itself (if present). Note that comparisons between instances of the entPhysicalModelName, entPhysicalFirmwareRev, entPhysicalSoftwareRev, and the entPhysicalSerialNum objects, are only meaningful amongst entPhysicalEntries with the same value of entPhysicalMfgName. If the manufacturer name string associated with the physical component is unknown to the agent, then this object will contain a zero-length string. |
SNMP | cisco.asav.phys.mfgname[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Inventory | Cisco ASAv: {#CISCO.ASAV.PHYS.NAME} Model name | MIB: ENTITY-MIB The vendor-specific model name identifier string associated with this physical component. The preferred value is the customer-visible part number, which may be printed on the component itself. If the model name string associated with the physical component is unknown to the agent, then this object will contain a zero-length string. |
SNMP | cisco.asav.phys.model[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Memory | Cisco ASAv: {#SNMPVALUE} Used memory | MIB: CISCO-MEMORY-POOL-MIB Indicates the number of bytes from the memory pool that are currently in use by applications on the managed device. |
SNMP | cisco.asav.memory.used[{#SNMPINDEX}] |
Memory | Cisco ASAv: {#SNMPVALUE} Free memory | MIB: CISCO-MEMORY-POOL-MIB Indicates the number of bytes from the memory pool that are currently unused on the managed device. Note that the sum of ciscoMemoryPoolUsed and ciscoMemoryPoolFree is the total amount of memory in the pool |
SNMP | cisco.asav.memory.free[{#SNMPINDEX}] |
Memory | Cisco ASAv: {#SNMPVALUE} Memory utilization | Memory utilization in %. |
CALCULATED | cisco.asav.memory.util[{#SNMPINDEX}] Expression: last(//cisco.asav.memory.used[{#SNMPINDEX}])/(last(//cisco.asav.memory.free[{#SNMPINDEX}])+last(//cisco.asav.memory.used[{#SNMPINDEX}]))*100 |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Interface name | MIB: CISCO-PORT-MIB Descriptive name that identifies this port. |
SNMP | cisco.asav.net.if.name[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Interface description | MIB: IF-MIB A textual string containing information about the interface |
SNMP | cisco.asav.net.if.descr[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Operational status | MIB: IF-MIB The current operational state of the interface. The testing(3) state indicates that no operational packets can be passed. |
SNMP | cisco.asav.net.if.operstatus[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Administrative status | MIB: IF-MIB The desired state of the interface. The testing(3) state indicates that no operational packets can be passed. |
SNMP | cisco.asav.net.if.adminstatus[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Incoming traffic | MIB: IF-MIB The total number of octets received on the interface, including framing characters. |
SNMP | cisco.asav.net.if.in.traffic[{#SNMPINDEX}] Preprocessing: - MULTIPLIER: - CHANGE_PER_SECOND |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Incoming unicast packets | MIB: IF-MIB The number of packets, delivered by this sub-layer to a higher (sub-)layer, which were not addressed to a multicast or broadcast address at this sub-layer |
SNMP | cisco.asav.net.if.in.ucastpkts[{#SNMPINDEX}] Preprocessing: - CHANGE_PER_SECOND |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Incoming multicast packets | MIB: IF-MIB The number of packets, delivered by this sub-layer to a higher (sub-)layer, which were addressed to a multicast address at this sub-layer. For a MAC layer protocol, this includes both Group and Functional addresses. |
SNMP | cisco.asav.net.if.in.multicastpkts[{#SNMPINDEX}] Preprocessing: - CHANGE_PER_SECOND |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Incoming broadcast packets | MIB: IF-MIB The number of packets, delivered by this sub-layer to a higher (sub-)layer, which were addressed to a broadcast address at this sub-layer. |
SNMP | cisco.asav.net.if.in.broadcastpkts[{#SNMPINDEX}] Preprocessing: - CHANGE_PER_SECOND |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Outgoing traffic | MIB: IF-MIB The total number of octets transmitted out of the interface, including framing characters. This object is a 64-bit version of ifOutOctets. |
SNMP | cisco.asav.net.if.out.traffic[{#SNMPINDEX}] Preprocessing: - MULTIPLIER: - CHANGE_PER_SECOND |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Outgoing unicast packets | MIB: IF-MIB The total number of packets that higher-level protocols requested be transmitted, and which were not addressed to a multicast or broadcast address at this sub-layer, including those that were discarded or not sent. |
SNMP | cisco.asav.net.if.out.ucastpkts[{#SNMPINDEX}] Preprocessing: - CHANGE_PER_SECOND |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Outgoing multicast packets | MIB: IF-MIB The total number of packets that higher-level protocols requested be transmitted, and which were addressed to a multicast address at this sub-layer, including those that were discarded or not sent. For a MAC layer protocol, this includes both Group and Functional addresses. |
SNMP | cisco.asav.net.if.out.multicastpkts[{#SNMPINDEX}] Preprocessing: - CHANGE_PER_SECOND |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Outgoing broadcast packets | MIB: IF-MIB The total number of packets that higher-level protocols requested be transmitted, and which were addressed to a broadcast address at this sub-layer, including those that were discarded or not sent. |
SNMP | cisco.asav.net.if.out.broadcastpkts[{#SNMPINDEX}] Preprocessing: - CHANGE_PER_SECOND |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Link speed | MIB: IF-MIB An estimate of the interface's current bandwidth in bits per second |
SNMP | cisco.asav.net.if.highspeed[{#SNMPINDEX}] Preprocessing: - MULTIPLIER: - DISCARD_UNCHANGED_HEARTBEAT: |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Incoming utilization | Interface utilization percentage |
CALCULATED | cisco.asav.net.if.in.util[{#SNMPINDEX}] Preprocessing: - IN_RANGE: ⛔️ON_FAIL: - JAVASCRIPT: Expression: last(//cisco.asav.net.if.in.traffic[{#SNMPINDEX}]) * (last(//cisco.asav.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//cisco.asav.net.if.highspeed[{#SNMPINDEX}]) + (last(//cisco.asav.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 |
Network interfaces | Cisco ASAv: {#CISCO.IF.NAME} Outgoing utilization | Interface utilization percentage |
CALCULATED | cisco.asav.net.if.out.util[{#SNMPINDEX}] Preprocessing: - IN_RANGE: ⛔️ON_FAIL: - JAVASCRIPT: Expression: last(//cisco.asav.net.if.out.traffic[{#SNMPINDEX}]) * (last(//cisco.asav.net.if.highspeed[{#SNMPINDEX}]) <> 0) / ( last(//cisco.asav.net.if.highspeed[{#SNMPINDEX}]) + (last(//cisco.asav.net.if.highspeed[{#SNMPINDEX}]) = 0) ) * 100 |
Remote access session | Cisco ASAv: {#CISCO.CRAS.USER} [{#CISCO.CRAS.INDEX}] Authenticate method | MIB: CISCO-REMOTE-ACCESS-MONITOR-MIB The method used to authenticate the user prior to establishing the session. |
SNMP | cisco.asav.session.authen.method[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Remote access session | Cisco ASAv: {#CISCO.CRAS.USER} [{#CISCO.CRAS.INDEX}] Authorize method | MIB: CISCO-REMOTE-ACCESS-MONITOR-MIB The method used to authorize the user prior to establishing the session. |
SNMP | cisco.asav.session.author.method[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Remote access session | Cisco ASAv: {#CISCO.CRAS.USER} [{#CISCO.CRAS.INDEX}] Session duration | MIB: CISCO-REMOTE-ACCESS-MONITOR-MIB The number of seconds elapsed since this session was established. |
SNMP | cisco.asav.session.duration[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Remote access session | Cisco ASAv: {#CISCO.CRAS.USER} [{#CISCO.CRAS.INDEX}] Local address | MIB: CISCO-REMOTE-ACCESS-MONITOR-MIB The IP address assigned to the client of this session in the private network assigned by the managed entity. |
SNMP | cisco.asav.session.addr.local[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Remote access session | Cisco ASAv: {#CISCO.CRAS.USER} [{#CISCO.CRAS.INDEX}] ISP address | MIB: CISCO-REMOTE-ACCESS-MONITOR-MIB The IP address of the peer (client) assigned by the ISP. This is the address of the client device in the public network. |
SNMP | cisco.asav.session.addr.isp[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Remote access session | Cisco ASAv: {#CISCO.CRAS.USER} [{#CISCO.CRAS.INDEX}] Session protocol | MIB: CISCO-REMOTE-ACCESS-MONITOR-MIB The protocol underlying this remote access session. |
SNMP | cisco.asav.session.protocol[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Remote access session | Cisco ASAv: {#CISCO.CRAS.USER} [{#CISCO.CRAS.INDEX}] Encryption algorithm | MIB: CISCO-REMOTE-ACCESS-MONITOR-MIB The algorithm used by this remote access session to encrypt its payload. |
SNMP | cisco.asav.session.encryption[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Remote access session | Cisco ASAv: {#CISCO.CRAS.USER} [{#CISCO.CRAS.INDEX}] Algorithm validate packets | MIB: CISCO-REMOTE-ACCESS-MONITOR-MIB The algorithm used by this remote access session to to validate packets. |
SNMP | cisco.asav.session.authen.algorithm[{#SNMPINDEX}] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Remote access session | Cisco ASAv: {#CISCO.CRAS.USER} [{#CISCO.CRAS.INDEX}] Incoming traffic | MIB: CISCO-REMOTE-ACCESS-MONITOR-MIB The rate of octets received by this Remote Access Session. This value is accumulated BEFORE determining whether or not the packet should be decompressed. |
SNMP | cisco.asav.session.in.traffic[{#SNMPINDEX}] Preprocessing: - MULTIPLIER: - CHANGE_PER_SECOND |
Remote access session | Cisco ASAv: {#CISCO.CRAS.USER} [{#CISCO.CRAS.INDEX}] Outgoing traffic | MIB: CISCO-REMOTE-ACCESS-MONITOR-MIB The rate of octets transmitted by this Remote Access Session. This value is accumulated AFTER determining whether or not the packet should be compressed. |
SNMP | cisco.asav.session.out.traffic[{#SNMPINDEX}] Preprocessing: - MULTIPLIER: - CHANGE_PER_SECOND |
Status | Cisco ASAv: SNMP agent availability | - |
INTERNAL | zabbix[host,snmp,available] Preprocessing: - DISCARD_UNCHANGED_HEARTBEAT: |
Status | Cisco ASAv: Uptime | MIB: RFC1213-MIB The time (in hundredths of a second) since the network management portion of the system was last re-initialized. |
SNMP | cisco.asav.uptime Preprocessing: - MULTIPLIER: |
Name | Description | Expression | Severity | Dependencies and additional info |
---|---|---|---|---|
Cisco ASAv: High CPU utilization | CPU utilization is too high. The system might be slow to respond. |
min(/Cisco ASAv SNMP/cisco.asav.cpu.util[{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT} |
WARNING | |
Cisco ASAv: {#CISCO.ASAV.PHYS.NAME} has been replaced | {#CISCO.ASAV.PHYS.NAME} serial number has changed. Ack to close |
last(/Cisco ASAv SNMP/cisco.asav.phys.sn[{#SNMPINDEX}],#1)<>last(/Cisco ASAv SNMP/cisco.asav.phys.sn[{#SNMPINDEX}],#2) and length(last(/Cisco ASAv SNMP/cisco.asav.phys.sn[{#SNMPINDEX}]))>0 |
INFO | Manual close: YES |
Cisco ASAv: High memory utilization | The system is running out of free memory. |
min(/Cisco ASAv SNMP/cisco.asav.memory.util[{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX} |
AVERAGE | |
Cisco ASAv: {#CISCO.IF.NAME} Link down | This trigger expression works as follows: 1. Can be triggered if operations status is down. 2. {TEMPLATE_NAME:METRIC.diff()}=1) - trigger fires only if operational status was up(1) sometime before. (So, do not fire 'ethernal off' interfaces.) WARNING: if closed manually - won't fire again on next poll, because of .diff. |
last(/Cisco ASAv SNMP/cisco.asav.net.if.operstatus[{#SNMPINDEX}])=2 and last(/Cisco ASAv SNMP/cisco.asav.net.if.operstatus[{#SNMPINDEX}],#1)<>last(/Cisco ASAv SNMP/cisco.asav.net.if.operstatus[{#SNMPINDEX}],#2) Recovery expression: last(/Cisco ASAv SNMP/cisco.asav.net.if.operstatus[{#SNMPINDEX}])<>2 |
AVERAGE | Manual close: YES |
Cisco ASAv: No SNMP data collection | SNMP is not available for polling. Please check device connectivity and SNMP settings. |
max(/Cisco ASAv SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0 |
WARNING | |
Cisco ASAv: has been restarted | Uptime is less than 10 minutes. |
last(/Cisco ASAv SNMP/cisco.asav.uptime)<10m |
INFO | Manual close: YES |
Please report any issues with the template at https://support.zabbix.com
You can also provide feedback, discuss the template or ask for help with it at ZABBIX forums.