<!--startmeta
custom_edit_url: "https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/snmp/npm-catalog/integrations/a10_thunder.md"
meta_yaml: "https://github.com/netdata/netdata/edit/master/src/go/plugin/go.d/collector/snmp/npm-catalog/metadata.yaml"
sidebar_label: "A10 Thunder"
learn_status: "Published"
learn_rel_path: "Network Performance Monitoring/Device Metrics/Integrations"
keywords: ['a10', 'thunder', 'snmp', 'adc', 'npm']
message: "DO NOT EDIT THIS FILE DIRECTLY, IT IS GENERATED BY THE NPM CATALOG metadata.yaml FILE"
endmeta-->

<!-- markdownlint-disable-file -->

# A10 Thunder


<img src="https://netdata.cloud/img/SNMP.png" width="150"/>


Plugin: go.d.plugin
Module: snmp

<img src="https://img.shields.io/badge/maintained%20by-Netdata-%2300ab44" />

## Overview

Monitor A10 Thunder (adc) with Netdata over SNMP. Netdata recognizes the device automatically by its `sysObjectID` (recognized across 1 device identifiers) and collects the metrics this profile declares — on top of the generic SNMP baseline — with no manual OID configuration.

Netdata's SNMP collector matches the device to the **a10-thunder.yaml** profile via `sysObjectID`/`sysDescr`, then polls the OIDs it declares.

This integration is supported on all platforms.

This integration supports multiple instances configured side-by-side.


### Default Behavior

#### Auto-Detection

Auto-detected as A10 Thunder via sysObjectID/sysDescr.

#### Limits

The default configuration for this integration does not impose any limits.

#### Performance Impact

The default configuration for this integration is not expected to impose a significant performance impact on the system.

## Setup


You can configure the **snmp** collector in two ways:

| Method                | Best for                                                                                 | How to                                                                                                                                 |
|-----------------------|------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------|
| [**UI**](#via-ui)     | Fast setup without editing files                                                         | Go to **Nodes → Configure this node → Collectors → Jobs**, search for **snmp**, then click **+** to add a job. |
| [**File**](#via-file) | If you prefer configuring via file, or need to automate deployments (e.g., with Ansible) | Edit `go.d/snmp.conf` and add a job.                                                                        |

:::important

UI configuration requires paid Netdata Cloud plan.

:::


### Prerequisites

#### SNMP access

SNMP must be enabled on the device and reachable from the Netdata Agent acting as the site's SNMP hub.


### Configuration

#### Options

Configure the SNMP collector with the device hostname and SNMP credentials. See the SNMP collector reference for all options.


#### via UI

Configure the **snmp** collector from the Netdata web interface:

1. Go to **Nodes**.
2. Select the node **where you want the snmp data-collection job to run** and click the :gear: (**Configure this node**). That node will run the data collection.
3. The **Collectors → Jobs** view opens by default.
4. In the Search box, type _snmp_ (or scroll the list) to locate the **snmp** collector.
5. Click the **+** next to the **snmp** collector to add a new job.
6. Fill in the job fields, then click **Test** to verify the configuration and **Submit** to save.
    - **Test** runs the job with the provided settings and shows whether data can be collected.
    - If it fails, an error message appears with details (for example, connection refused, timeout, or command execution errors), so you can adjust and retest.


#### via File

The configuration file name for this integration is `go.d/snmp.conf`.

The file format is YAML. Generally, the structure is:

```yaml
update_every: 1
autodetection_retry: 0
jobs:
  - name: some_name1
  - name: some_name2
```
You can edit the configuration file using the [`edit-config`](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration/README.md#edit-configuration-files) script from the
Netdata [config directory](https://github.com/netdata/netdata/blob/master/docs/netdata-agent/configuration/README.md#locate-your-config-directory).

```bash
cd /etc/netdata 2>/dev/null || cd /opt/netdata/etc/netdata
sudo ./edit-config go.d/snmp.conf
```

##### Examples
There are no configuration examples.



## Alerts

There are no alerts configured by default for this integration.



## Metrics

On top of the **generic SNMP baseline** (the *Generic SNMP Device* integration — interfaces, system, IP/TCP/UDP, host resources), this A10 Thunder profile adds the metrics below. Each is collected **only where the device exposes the matching OID** — inclusion means the profile requests it; availability depends on the device model and software.

**65 metrics** in 18 groups; each row is a chart context usable in alerts.

| Group | Metrics |
|---|---|
| Environment / Temperature | 1 |
| Hardware / Fan | 2 |
| Hardware / Power | 2 |
| LoadBalancer / Server | 5 |
| LoadBalancer / ServiceGroup | 1 |
| LoadBalancer / VirtualServer | 15 |
| Network / Connection | 4 |
| Network / Interface | 4 |
| Network / NAT | 3 |
| Network / SSL | 1 |
| Network / Session | 1 |
| System / Application | 9 |
| System / CPU | 1 |
| System / Connection | 5 |
| System / Disk | 2 |
| System / Memory | 2 |
| System / Session | 6 |
| System / Uptime | 1 |

### Environment / Temperature

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axSysHwPhySystemTemp` | `Cel` | device | The physical system temperature in Celsius |

### Hardware / Fan

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axFanSpeed` | `{revolution}/min` | per ax_fan_name | The fan's speed |
| `snmp.device_prof_axFanStatus` | `{status}` | per ax_fan_name | Fan status |

### Hardware / Power

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axPowerSupplyStatus` | `{status}` | per ax_power_supply_name | Power Supply status |
| `snmp.device_prof_axPowerSupplyVoltageStatus` | `{status}` | per ax_power_supply_voltage_description | Power Supply voltage status |

### LoadBalancer / Server

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axServerEnabledState` | `{status}` | per ax_server_name | The enabled state for this server |
| `snmp.device_prof_axServerMonitorState` | `{status}` | per ax_server_name | The server monitor status |
| `snmp.device_prof_axServerStatServerCurConns` | `{connection}` | per ax_server_stat_name | The current connections from server side |
| `snmp.device_prof_axServerStatServerStatus` | `{status}` | per ax_server_stat_name | Server status |
| `snmp.device_prof_axServerStatServerTotalCurrL7Reqs` | `{request}` | per ax_server_stat_name | The number of current L7 requests if applicable |

### LoadBalancer / ServiceGroup

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axServiceGroupDisplayStatus` | `{status}` | per ax_service_group_name, ax_service_group_type, ax_service_group_lb_algorithm | Service group status |

### LoadBalancer / VirtualServer

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axVirtualServerDisplayStatus` | `{status}` | per ax_virtual_server_name, ax_virtual_server_ha_group, ax_virtual_server_enabled | Display status of the virtual server |
| `snmp.device_prof_axVirtualServerPortStatCurConns` | `{connection}` | per ax_virtual_server_port_stat_address, ax_virtual_server_stat_port_type, ax_virtual_server_stat_port_num, ax_virtual_server_port_stat_name | Current connections from client side |
| `snmp.device_prof_axVirtualServerStatBytesIn` | `By/s` | per ax_virtual_server_stat_address, ax_virtual_server_stat_name | The number of bytes received from client to server |
| `snmp.device_prof_axVirtualServerStatBytesOut` | `By/s` | per ax_virtual_server_stat_address, ax_virtual_server_stat_name | The number of bytes sent from server to client |
| `snmp.device_prof_axVirtualServerStatCurConns` | `{connection}` | per ax_virtual_server_stat_address, ax_virtual_server_stat_name | The current connections from client side |
| `snmp.device_prof_axVirtualServerStatPersistConns` | `{connection}` | per ax_virtual_server_stat_address, ax_virtual_server_stat_name | The persistent connections from client side |
| `snmp.device_prof_axVirtualServerStatPktsIn` | `{packet}/s` | per ax_virtual_server_stat_address, ax_virtual_server_stat_name | The number of packets received from client to server |
| `snmp.device_prof_axVirtualServerStatPktsOut` | `{packet}/s` | per ax_virtual_server_stat_address, ax_virtual_server_stat_name | The number of packets sent from server to client |
| `snmp.device_prof_axVirtualServerStatPortDisplayStatus` | `{status}` | per ax_virtual_server_port_stat_address, ax_virtual_server_stat_port_type, ax_virtual_server_stat_port_num, ax_virtual_server_port_stat_name | Virtual server port display status |
| `snmp.device_prof_axVirtualServerStatPortStatus` | `{status}` | per ax_virtual_server_port_stat_address, ax_virtual_server_stat_port_type, ax_virtual_server_stat_port_num, ax_virtual_server_port_stat_name | Virtual server port status |
| `snmp.device_prof_axVirtualServerStatStatus` | `{status}` | per ax_virtual_server_stat_address, ax_virtual_server_stat_name | Virtual server status |
| `snmp.device_prof_axVirtualServerStatTotConns` | `{connection}/s` | per ax_virtual_server_stat_address, ax_virtual_server_stat_name | The total connections from client side |
| `snmp.device_prof_axVirtualServerStatTotalCurrL7Reqs` | `{request}` | per ax_virtual_server_stat_address, ax_virtual_server_stat_name | The number of current L7 requests if applicable |
| `snmp.device_prof_axVirtualServerStatTotalL7Reqs` | `{request}/s` | per ax_virtual_server_stat_address, ax_virtual_server_stat_name | The total number of L7 requests if applicable |
| `snmp.device_prof_axVirtualServerStatTotalSuccL7Reqs` | `{request}/s` | per ax_virtual_server_stat_address, ax_virtual_server_stat_name | The number of successful L7 requests if applicable |

### Network / Connection

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axSessionGlobalStatTCPEstablished` | `{connection}` | device | The count of TCP established |
| `snmp.device_prof_axSessionGlobalStatTCPHalfOpen` | `{connection}` | device | The count of TCP half open |
| `snmp.device_prof_axSessionGlobalStatTCPSynHalfOpen` | `{connection}` | device | The count of TCP SYN half open |
| `snmp.device_prof_axSessionGlobalStatUDP` | `{connection}` | device | The count of UDP connections |

### Network / Interface

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_ifAdminStatus` | `{status}` | per interface, interface | Current administrative state of the interface |
| `snmp.device_prof_ifHighSpeed` | `bit/s` | per interface, interface | Estimate of the interface's current bandwidth |
| `snmp.device_prof_ifNumber` | `{interface}` | device | Number of network interfaces regardless of their current state present on this system |
| `snmp.device_prof_ifOperStatus` | `{status}` | per interface, interface | Current operational state of the interface |

### Network / NAT

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axAppGlobalTotalNewIPNatConnections` | `{connection}/s` | device | Total new IP-NAT connections |
| `snmp.device_prof_axSessionGlobalStatReverseNATTCP` | `{connection}` | device | The count of reverse NAT TCP |
| `snmp.device_prof_axSessionGlobalStatReverseNATUDP` | `{connection}` | device | The count of reverse NAT UDP |

### Network / SSL

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axAppGlobalTotalSSLConnections` | `{connection}/s` | device | Total new SSL connections |

### Network / Session

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axSessionGlobalStatNonTcpUdpIPSession` | `{session}` | device | The count of non TCP/UDP IP sessions |

### System / Application

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axAppGlobalBufferConfigLimit` | `1` | device | Application buffer configured limit |
| `snmp.device_prof_axAppGlobalBufferCurrentUsage` | `1` | device | Application buffer current usage |
| `snmp.device_prof_axAppGlobalTotalCurrentConnections` | `{connection}` | device | Total current connections |
| `snmp.device_prof_axAppGlobalTotalL7Requests` | `{request}/s` | device | Total L7 requests |
| `snmp.device_prof_axAppGlobalTotalNewConnections` | `{connection}/s` | device | Total new connections |
| `snmp.device_prof_axAppGlobalTotalNewL4Connections` | `{connection}/s` | device | Total new L4 connections |
| `snmp.device_prof_axAppGlobalTotalNewL7Connections` | `{connection}/s` | device | Total new L7 connections |
| `snmp.device_prof_axGlobalAppPacketDrop` | `{packet}` | device | Total number of buffer drops in the last 10 seconds |
| `snmp.device_prof_axGlobalTotalAppPacketDrop` | `{packet}/s` | device | Total number of accumulative buffer drops |

### System / CPU

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_cpu_usage` | `%` | device | The current CPU utilization |

### System / Connection

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axSessionGlobalStatConnCount` | `{connection}` | device | The count of current connections |
| `snmp.device_prof_axSessionGlobalStatConnFree` | `{connection}/s` | device | The count of freed connections |
| `snmp.device_prof_axSessionGlobalStatConnSMPAllocated` | `{connection}` | device | The count of allocated SMP connections |
| `snmp.device_prof_axSessionGlobalStatConnSMPFree` | `{connection}` | device | The count of free SMP connections |
| `snmp.device_prof_axSessionGlobalStatFreeCurrentConns` | `{connection}` | device | The count of free current connections |

### System / Disk

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axSysDiskFreeSpace` | `By` | device | The free space of the disk |
| `snmp.device_prof_axSysDiskTotalSpace` | `By` | device | The total space of the disk |

### System / Memory

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axSysMemoryTotal` | `By` | device | The total memory |
| `snmp.device_prof_axSysMemoryUsage` | `By` | device | The usage memory |

### System / Session

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_axConnReuseStatTotalActivePersist` | `{session}` | device | The total count of active persistent connection-reuse sessions |
| `snmp.device_prof_axConnReuseStatTotalEstablished` | `{session}` | device | The total count of established connection-reuse sessions |
| `snmp.device_prof_axConnReuseStatTotalOpenPersist` | `{session}` | device | The total count of open persistent connection-reuse sessions |
| `snmp.device_prof_axConnReuseStatTotalTerminated` | `{session}` | device | The total count of terminated connection-reuse sessions |
| `snmp.device_prof_axGlobalTotalL4Session` | `{session}` | device | Total number of L4 sessions |
| `snmp.device_prof_axSessionGlobalStatOther` | `{session}` | device | The count of others |

### System / Uptime

| Metric (chart context) | Unit | Scope | Description |
|---|---|---|---|
| `snmp.device_prof_systemUptime` | `s` | device | Time since the system was last rebooted or powered on. |
