Language selection:
Skip to main navigation Skip to main content Skip to page footer

Didactum Monitoring Devices and Sensors – Integration into NetXMS

This guide describes the complete integration of Didactum monitoring devices into NetXMS. The goal is centralized monitoring of all connected sensors – temperature, humidity, leakage, voltage, door contacts, and others – via SNMP, including automatic object detection, threshold monitoring, alerting, trend graphs, and SNMP trap processing.

1. Fundamentals and architecture

NetXMS is an open-source monitoring platform with extensive capabilities for network topology visualization, automatic device detection, and flexible data collection concepts. SNMP-capable devices such as Didactum monitoring units are managed as nodes and monitored via Data Collection Items (DCIs).

NetXMS architecture overview

ComponentFunctionProtocol / Port
NetXMS ServerCentral monitoring server, database connection, alarm processingTCP 4701 (clients)
NetXMS Management ConsoleJava/Eclipse-based desktop application for configurationTCP 4701
NetXMS Web ConsoleBrowser-based interface (nxmc-web)HTTP/HTTPS 8080
SNMP pollerQueries OID values from the Didactum deviceUDP 161
SNMP trap receiverReceives proactive alarms from the Didactum deviceUDP 162
NetXMS AgentOptional agent for advanced monitoring (not required for Didactum)TCP 4700

Processing flow for SNMP devices

  1. Node Discovery: NetXMS detects the Didactum device automatically via Network Discovery or a manually created node.
  2. SNMP Walk: NetXMS performs an SNMP walk when the node is created and recognizes device properties.
  3. DCI configuration: Data Collection Items are created for the desired OIDs.
  4. Polling: The SNMP poller queries the DCIs at configured intervals and stores values in the database.
  5. Threshold check: NetXMS compares measurements against configured thresholds and generates alarms when limits are exceeded.
  6. Alerting: Alarms trigger notifications by email, SMS, or ticket.

2. Prerequisites

  • NetXMS Server 4.x or newer (current stable version)
  • Linux server (Debian/Ubuntu or RHEL/CentOS) or Windows Server as the NetXMS server
  • PostgreSQL 12+, MySQL/MariaDB, or Microsoft SQL Server as the database
  • NetXMS Management Console or Web Console with administrator access
  • SNMP tools (snmpwalk, snmpget) on the NetXMS server
  • Didactum monitoring device reachable on the network, SNMP enabled
  • UDP port 161 from the NetXMS server to the Didactum device allowed
  • UDP port 162 on the NetXMS server allowed for SNMP traps
  • SNMP community string known (default: public)

Example network configuration

DeviceIP addressRole
NetXMS server192.168.1.70Monitoring server
Didactum Monitoring Unit192.168.1.100Monitored device (SNMP agent)

3. SNMP preparation on the Didactum device

3.1 Enable SNMP

  1. Open the Didactum web interface: 192.168.1.100, log in with an admin account.
  2. Navigation: Settings → Network → SNMP (or: Settings → Network → SNMP).
  3. Set the following parameters:
    • SNMP enabled: Yes
    • SNMP version: v2c (recommended) or v3
    • Community string: public (change in production)
    • SNMP port: 161
    • Allowed Managers: enter the IP of the NetXMS server (192.168.1.70)
    • SNMP Trap Receiver: IP of the NetXMS server, port 162
  4. Save the settings.

Warning: Change the default community string public in production environments. Use the same string in the NetXMS SNMP configuration.

3.2 Test reachability from the NetXMS server

# SNMP Walk – list all Didactum OIDs:
snmpwalk -v2c -c public 192.168.1.100 1.3.6.1.4.1.3854

# Query temperature sensor 1 directly:
snmpget -v2c -c public 192.168.1.100 1.3.6.1.4.1.3854.1.2.2.1.16.1.3.1

# System description (basic test):
snmpget -v2c -c public 192.168.1.100 1.3.6.1.2.1.1.1.0

Note: Didactum returns temperature and voltage values with a factor of 10 (235 = 23.5 °C). This must be taken into account when configuring thresholds in NetXMS.

4. Prepare NetXMS

4.1 Install NetXMS on Debian/Ubuntu

# Add repository:
curl -s packages.netxms.org/netxms.gpg | sudo apt-key add -
echo "deb packages.netxms.org/debian/ stable main" \
  | sudo tee /etc/apt/sources.list.d/netxms.list

# Install packages:
sudo apt update
sudo apt install netxms-server netxms-webui netxms-dbdrv-pgsql -y

# NetXMS server configuration:
sudo nano /etc/netxmsd.conf

4.2 Install NetXMS on RHEL/CentOS/Rocky Linux

# Add repository:
sudo rpm -ivh packages.netxms.org/rhel/netxms-release-latest.rpm

# Install packages:
sudo dnf install netxms-server netxms-webui -y

# Enable NetXMS service:
sudo systemctl enable --now netxmsd

4.3 Basic NetXMS server configuration

sudo nano /etc/netxmsd.conf
# Database connection:
DBDriver = pgsql.ddr
DBServer = 127.0.0.1
DBName   = netxms
DBLogin  = netxms
DBPassword = securePassword

# Enable SNMP trap reception:
EnableSNMPTraps = yes
SNMPTrapPort    = 162

# Discovery settings:
EnableAutoDiscovery = yes

# Logging:
LogFile = /var/log/netxms/netxmsd.log
LogLevel = info
# Initialize database:
sudo -u netxms nxdbmgr init

# Start NetXMS server:
sudo systemctl start netxmsd
sudo systemctl status netxmsd

4.4 Integrate the Didactum MIB file into NetXMS

# Copy MIB file to the NetXMS MIB directory:
sudo cp DIDACTUM-RACKMONI2-MIB.mib /usr/share/netxms/mibs/

# Restart NetXMS server so the MIB is loaded:
sudo systemctl restart netxmsd

In the Management Console: Tools → MIB Explorer → Upload MIB. After import, OID numbers can be displayed as readable names.

5. Create Didactum device as a node

5.1 Create node manually (Management Console)

  1. Open NetXMS Management Console and log in with an administrator account.
  2. In the Object Browser: right-click Infrastructure ServicesCreate → Node.
  3. Fill in the following fields:
    • Name: didactum-rack01
    • Primary hostname / IP: 192.168.1.100
    • Alias: Didactum Rack Monitoring – Server Room A
  4. Under Communications:
    • SNMP version: v2c
    • SNMP community: public
    • SNMP port: 161
    • SNMP timeout: 1500 ms
    • SNMP retries: 3
  5. Under Agent:
    • Monitoring via: SNMP only (no NetXMS agent on the device)
  6. Click OK. NetXMS performs an SNMP walk automatically.

5.2 Create node via Web Console

  1. Open Web Console: 192.168.1.70/nxmc.
  2. Navigation: Configuration → Nodes → Create node.
  3. Enter IP address, name, and SNMP parameters (as above).
  4. Click Save.

5.3 Create node via REST API

# Generate API token (one-time):
curl -s -u admin:netxms \
  "http://192.168.1.70:8080/api/v1/sessions" \
  -H "Content-Type: application/json" \
  -d '{"login":"admin","password":"netxms"}'

# Create node:
curl -s -X POST \
  "http://192.168.1.70:8080/api/v1/objects" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <TOKEN>" \
  -d '{
    "objectType": "node",
    "name": "didactum-rack01",
    "primaryName": "192.168.1.100",
    "alias": "Didactum Rack Monitoring – Server Room A",
    "snmpVersion": "v2c",
    "snmpCommunity": "public",
    "parentId": 2
  }'

5.4 Create container for Didactum devices

  1. In the Object Browser: right-click Infrastructure ServicesCreate → Container.
  2. Name: Didactum Monitoring Devices
  3. Move all Didactum nodes into this container (drag & drop).
  4. Container properties → Automatic binding: create a rule that automatically assigns all nodes with SNMP community public and sysDescr containing didactum.

6. SNMP configuration in NetXMS

6.1 Configure SNMP communities globally

In the Management Console: Configuration → Network Discovery → SNMP Communities.

# Alternatively via nxdbmgr or configuration file:
sudo nano /etc/netxmsd.conf

# Community list for Network Discovery:
DefaultCommunity = public
# Additional communities:
# Community = monitoring_ro
# Community = didactum_snmp

6.2 Configure SNMP v3

  1. In node properties: Communications → SNMP version: v3.
  2. Additional fields:
    • Security name: SNMP v3 username from the Didactum device
    • Authentication method: SHA
    • Authentication password: authentication password
    • Encryption method: AES
    • Encryption password: encryption password

6.3 Trigger SNMP walk manually

In the Management Console: right-click the Didactum node → Poll → SNMP Walk. The result shows all available OIDs of the device.

# On the command line (NetXMS tool):
nxsnmpwalk -v 2c -c public 192.168.1.100 1.3.6.1.4.1.3854

6.4 Configure automatic network discovery

  1. Navigation: Configuration → Network Discovery.
  2. Add discovery range: 192.168.1.0/24
  3. Enable discovery protocols: ICMP + SNMP
  4. SNMP community: public
  5. Filter: only automatically import devices with sysDescr containing didactum

7. DCI configuration (Data Collection Items)

Data Collection Items (DCIs) are the central concept in NetXMS for data collection. Each OID to be monitored is configured as a separate DCI. DCIs store values in the database and form the basis for graphs, thresholds, and dashboards.

7.1 Create DCI manually (Management Console)

  1. Right-click the Didactum node → Properties → Data Collection.
  2. Click AddDCI for single parameter.
  3. Enter the following parameters for temperature sensor 1:
    • Description: Temperature Sensor 1 – Rack Front
    • Origin: SNMP agent
    • Data type: Integer (32-bit)
    • SNMP OID: .1.3.6.1.4.1.3854.1.2.2.1.16.1.3.1
    • Polling interval: 300 seconds (5 minutes)
    • Retention time: 90 days
  4. Under Thresholds: enter thresholds (see section 9).
  5. Click ApplyOK.

7.2 DCI transformation for temperature (factor ÷ 10)

Since Didactum returns temperature values × 10, a transformation must be configured:

  1. In the DCI editor: tab Transformation.
  2. Transformation script: enter NXSL script:
/* NXSL transformation script: divide raw value by 10 */
return $1 / 10.0;
  1. Unit name: °C
  2. Multiplier: None
  3. Save. The displayed value is now correct in °C (e.g. 23.5 °C instead of 235).

7.3 Create DCIs for all sensors using a DCI template

Instead of creating each DCI individually, it is recommended to create a DCI template that is applied to all Didactum nodes:

  1. Navigation: Configuration → DCI Templates → New template.
  2. Name: Didactum Rack Monitoring
  3. Create all subsequent DCIs (temperature, leakage, humidity, voltage, etc.) in the template.
  4. Assign the template to the node: Node properties → Data Collection → Apply template → Didactum Rack Monitoring.

7.4 All DCIs for Didactum at a glance

DCI nameOIDData typeTransformationUnit
Temperature S1.1.3.6.1.4.1.3854.1.2.2.1.16.1.3.1Integer÷ 10°C
Temperature S2.1.3.6.1.4.1.3854.1.2.2.1.16.1.3.2Integer÷ 10°C
Temperature Status S1.1.3.6.1.4.1.3854.1.2.2.1.16.1.4.1IntegerEnum
Leakage Status S1.1.3.6.1.4.1.3854.1.2.2.1.18.1.4.1Integer0/1
Leakage Status S2.1.3.6.1.4.1.3854.1.2.2.1.18.1.4.2Integer0/1
Humidity S1.1.3.6.1.4.1.3854.1.2.2.1.17.1.3.1Integer% RH
Humidity Status S1.1.3.6.1.4.1.3854.1.2.2.1.17.1.4.1IntegerEnum
Voltage S1.1.3.6.1.4.1.3854.1.2.2.1.15.1.3.1Integer÷ 10V
Door contact S1.1.3.6.1.4.1.3854.1.2.2.1.10.1.3.1Integer0/1
Smoke detector S1.1.3.6.1.4.1.3854.1.2.2.1.14.1.3.1Integer0/1
Motion sensor S1.1.3.6.1.4.1.3854.1.2.2.1.11.1.3.1Integer0/1
System Uptime.1.3.6.1.2.1.1.3.0Integer÷ 100Seconds

7.5 Polling intervals by sensor type

Sensor typeRecommended intervalReason
Temperature300 seconds (5 min)Slow physical changes
Humidity300 seconds (5 min)Slow physical changes
Leakage60 seconds (1 min)Time critical – immediate alarm
Voltage300 seconds (5 min)Voltage fluctuations
Door contact60 seconds (1 min)Security critical
Smoke detector60 seconds (1 min)Security critical
Motion sensor60 seconds (1 min)Security critical

8. OID reference for NetXMS

All OIDs are based on the Didactum enterprise OID base 1.3.6.1.4.1.3854. The placeholder {n} stands for the sensor index (1 = first sensor, etc.).

8.1 Temperature sensors

OIDDescriptionUnitNetXMS transformationNote
1.3.6.1.4.1.3854.1.2.2.1.16.1.3.{n}Temperature value sensor n°C × 10return $1 / 10.0;Raw value ÷ 10 for °C
1.3.6.1.4.1.3854.1.2.2.1.16.1.4.{n}Temperature status sensor nEnum 0/1/20=OK, 1=Warn, 2=Alarm
1.3.6.1.4.1.3854.1.2.2.1.16.1.7.{n}Upper limit sensor n°C × 10return $1 / 10.0;Informational
1.3.6.1.4.1.3854.1.2.2.1.16.1.8.{n}Lower limit sensor n°C × 10return $1 / 10.0;Informational
1.3.6.1.4.1.3854.1.2.2.1.16.1.2.{n}Sensor name nTextFor DCI labeling

8.2 Leakage sensors

OIDDescriptionUnitNetXMS thresholdNote
1.3.6.1.4.1.3854.1.2.2.1.18.1.4.{n}Leakage status sensor n0=OK, 1=Leakage≥ 1 → CRITICALImmediate alarm
1.3.6.1.4.1.3854.1.2.2.1.18.1.3.{n}Leakage value sensor n0=dry≥ 1 → CRITICALAlternative to the status OID
1.3.6.1.4.1.3854.1.2.2.1.18.1.2.{n}Sensor name nTextFor labeling

8.3 Humidity sensors

OIDDescriptionUnitNetXMS thresholdNote
1.3.6.1.4.1.3854.1.2.2.1.17.1.3.{n}Humidity value sensor n% RH> 70 → WARN, > 80 → CRITNo transformation factor
1.3.6.1.4.1.3854.1.2.2.1.17.1.4.{n}Humidity status nEnum 0/1/2≥ 1 → WARN0=OK, 1=Warn, 2=Alarm
1.3.6.1.4.1.3854.1.2.2.1.17.1.7.{n}Upper limit sensor n% RHInformational
1.3.6.1.4.1.3854.1.2.2.1.17.1.8.{n}Lower limit sensor n% RHInformational

8.4 Other sensors

OIDDescriptionUnitNetXMS thresholdNote
1.3.6.1.4.1.3854.1.2.2.1.15.1.3.{n}Voltage value sensor nV × 10< 2070 or > 2530 → WARNRaw value ÷ 10 for V
1.3.6.1.4.1.3854.1.2.2.1.15.1.4.{n}Voltage status sensor nEnum 0/1/2≥ 1 → WARN0=OK, 1=Warn, 2=Alarm
1.3.6.1.4.1.3854.1.2.2.1.10.1.3.{n}Door contact status n0=closed, 1=open≥ 1 → CRITPolicy-dependent
1.3.6.1.4.1.3854.1.2.2.1.11.1.3.{n}Shock / motion n0=none, 1=alarm≥ 1 → WARNSecurity alarm
1.3.6.1.4.1.3854.1.2.2.1.14.1.3.{n}Smoke detector status n0=OK, 1=alarm≥ 1 → CRITImmediate alarm
1.3.6.1.2.1.1.3.0System Uptime (sysUpTime)Hundredths of secondsStandard MIB
1.3.6.1.2.1.1.1.0Device description (sysDescr)TextFor node identification

9. Configure thresholds and alarms

9.1 Create threshold for temperature DCI

  1. Open DCI: right-click node → Properties → Data Collection → Temperature S1 → Edit → Thresholds.
  2. Click Add threshold.
  3. Configure warning threshold:
    • Condition: Greater than
    • Value: 30 (after transformation, in °C)
    • Event: SYS_THRESHOLD_REACHED with severity WARNING
    • Rearm event: SYS_THRESHOLD_REARMED
    • Repeat interval: 600 seconds
  4. Add critical threshold:
    • Condition: Greater than
    • Value: 35 (in °C)
    • Event: SYS_THRESHOLD_REACHED with severity CRITICAL
  5. Add lower warning threshold:
    • Condition: Less than
    • Value: 5 (in °C)
    • Event: severity WARNING

9.2 Threshold for leakage DCI (immediate alarm)

  1. Open DCI Leakage Status S1Thresholds → Add.
  2. Settings:
    • Condition: Greater than or equal
    • Value: 1
    • Event: Custom event DIDACTUM_LEAK_DETECTED with severity CRITICAL
    • Repeat interval: 300 seconds (repeat every 5 minutes while active)
  3. Set the DCI polling interval to 60 seconds.

9.3 Create custom events for Didactum

  1. Navigation: Configuration → Event Configuration → New event.
  2. Create event for leakage:
    • Name: DIDACTUM_LEAK_DETECTED
    • Severity: Critical
    • Message: LEAKAGE DETECTED on %n (%a) – Sensor %4! Immediate action required!
  3. Create event for temperature alarm:
    • Name: DIDACTUM_TEMP_ALARM
    • Severity: Major
    • Message: Temperature alarm on %n (%a) – Current value: %4 °C

9.4 Recommended thresholds for all sensor types

Sensor typeWarning (after transformation)Critical (after transformation)Standard
IT rack temperature> 30.0 °C or < 5 °C> 35.0 °CASHRAE A1: 15–32 °C
UPS room temperature> 25.0 °C> 30.0 °CManufacturer specification
High humidity> 70 % RH> 80 % RHASHRAE: 20–80 % RH
Low humidity< 20 % RH< 10 % RHASHRAE: 20–80 % RH
Leakage≥ 1 (immediate)Immediate alarm
230 V AC voltage< 207 V or > 253 V< 196 V or > 260 VEN 50160 ±10 %
Door contact / smoke / motion≥ 1Policy-dependent

9.5 Configure alarm notification

  1. Navigation: Configuration → Actions → New action.
  2. Email notification action:
    • Type: Send e-mail
    • To: admin@example.com
    • Subject: NetXMS Alarm: %n – %m
    • Message: Alarm on %n (%a)\nSeverity: %S\nMessage: %m\nTime: %T
  3. Link Event Processing Policy:
    • Event: DIDACTUM_LEAK_DETECTED
    • Action: email notification
    • Create alarm: severity Critical, alarm text: LEAKAGE on %n

10. SNMP trap integration

NetXMS natively receives SNMP traps through the integrated trap receiver (UDP port 162). Traps are processed as events and can trigger alarms and notifications – without active polling.

10.1 Enable SNMP trap receiver

# Check/set in /etc/netxmsd.conf:
EnableSNMPTraps = yes
SNMPTrapPort    = 162

# Open firewall port:
sudo ufw allow 162/udp

# Restart NetXMS:
sudo systemctl restart netxmsd

10.2 Configure trap-to-event mapping

  1. Navigation: Configuration → SNMP Trap Mapping → Add.
  2. Create mapping for leakage trap:
    • Trap OID: .1.3.6.1.4.1.3854.1.7.2
    • Event: DIDACTUM_LEAK_DETECTED
    • Trap description: Didactum leakage alarm
  3. Mapping for temperature alarm:
    • Trap OID: .1.3.6.1.4.1.3854.1.7.1
    • Event: DIDACTUM_TEMP_ALARM
  4. Similarly for all other trap OIDs (see table below).

10.3 Trap mapping via configuration file

sudo nano /etc/netxms/trap-map.conf
# Didactum SNMP trap mappings
# Format: OID:EventName:Severity:Message

.1.3.6.1.4.1.3854.1.7.1:DIDACTUM_TEMP_ALARM:MAJOR:Temperature alarm from %SOURCEIP%
.1.3.6.1.4.1.3854.1.7.2:DIDACTUM_LEAK_DETECTED:CRITICAL:Leakage detected on %SOURCEIP%
.1.3.6.1.4.1.3854.1.7.3:DIDACTUM_HUMIDITY_ALARM:MAJOR:Humidity alarm from %SOURCEIP%
.1.3.6.1.4.1.3854.1.7.4:DIDACTUM_VOLTAGE_ALARM:MAJOR:Voltage alarm from %SOURCEIP%
.1.3.6.1.4.1.3854.1.7.10:DIDACTUM_DOOR_OPEN:WARNING:Door contact opened on %SOURCEIP%
.1.3.6.1.4.1.3854.1.7.14:DIDACTUM_SMOKE_ALARM:CRITICAL:Smoke detector alarm from %SOURCEIP%
.1.3.6.1.4.1.3854.1.7.99:DIDACTUM_REBOOT:WARNING:Device rebooted %SOURCEIP%

10.4 Send trap test

# Send test trap for leakage from another system:
snmptrap -v2c -c public 192.168.1.70 '' \
  .1.3.6.1.4.1.3854.1.7.2 \
  .1.3.6.1.4.1.3854.1.2.2.1.18.1.4.1 i 1

# Check trap reception in the NetXMS log:
sudo tail -f /var/log/netxms/netxmsd.log | grep -i trap

10.5 Important Didactum trap OIDs

Trap OIDEventNetXMS severityRecommended response
1.3.6.1.4.1.3854.1.7.1Temperature alarmMajorAlarm + email
1.3.6.1.4.1.3854.1.7.2Leakage alarmCriticalAlarm + email + SMS
1.3.6.1.4.1.3854.1.7.3Humidity alarmMajorAlarm + email
1.3.6.1.4.1.3854.1.7.4Voltage alarmMajorAlarm + email
1.3.6.1.4.1.3854.1.7.10Door contact openedWarningAlarm (policy-dependent)
1.3.6.1.4.1.3854.1.7.14Smoke detector alarmCriticalAlarm + email + SMS
1.3.6.1.4.1.3854.1.7.99Device rebootWarningAlarm + logging

11. Dashboards and visualization

11.1 Create dashboard for Didactum sensors

  1. Navigation: Dashboards → New dashboard.
  2. Name: Didactum Rack Monitoring
  3. Add dashboard elements:
    • Line chart: Temperature trend for sensors 1 and 2 (last 24 hours)
    • Line chart: Humidity sensor 1 (last 24 hours)
    • Gauge: Current temperature sensor 1 (with color scale: green/yellow/red)
    • Status indicator: Leakage sensor 1 (green = OK, red = alarm)
    • Status indicator: Leakage sensor 2
    • Status indicator: Door contact (green = closed, red = open)
    • Alarm viewer: Current alarms of the container Didactum Monitoring Devices
  4. Save dashboard and set it as the start page.

11.2 Network topology map with Didactum devices

  1. Navigation: Network Maps → New map.
  2. Name: Server Room A – Monitoring Overview
  3. Add objects: insert the Didactum node as an icon.
  4. Background: use a server room floor plan as the background image.
  5. Icon color: automatic based on node status (green/yellow/red).
  6. Show DCI values directly on the map: right-click icon → Add DCI value → select Temperature S1.

11.3 Historical data and graphs

  1. Right-click a DCI in the Data Collection editor → Show graph.
  2. Select time range: last 24 hours, 7 days, 30 days.
  3. Combine multiple DCIs in one graph: Graph → Add data source → add second DCI.
  4. Save graph as a template: Graph → Save as template → Didactum Temperature Trend.

11.4 Reporting

  1. Navigation: Reporting → New report.
  2. Report type: DCI summary report
  3. Nodes: container Didactum Monitoring Devices
  4. DCIs: temperature min/max/avg, humidity min/max/avg
  5. Time range: monthly
  6. Report format: PDF or HTML
  7. Automatic email delivery: monthly on the 1st day of the month

12. Troubleshooting

ProblemPossible cause / solution
Node shows “SNMP unreachable”Firewall: UDP port 161 allowed? Community string correct in node properties? IP address correct? Test: snmpwalk -v2c -c public 192.168.1.100 from the NetXMS server.
DCI values are not collectedSNMP polling enabled? OID entered correctly (with leading dot: .1.3.6.1.4.1.3854...)? Data type correct? Check NetXMS log: tail -f /var/log/netxms/netxmsd.log.
Temperature shows 235 instead of 23.5 °CTransformation script is missing or incorrect. In the DCI → Transformation field: enter return $1 / 10.0;. Check NXSL syntax.
Traps are not receivedOpen UDP port 162 on the NetXMS server in the firewall. EnableSNMPTraps = yes in netxmsd.conf? Correct trap receiver IP on the Didactum device? Restart NetXMS.
Threshold does not trigger an alarmThreshold configured correctly? Event Processing Policy links the event ID to an action? Alarm severity set correctly? Check event log.
No email notificationsSMTP server configured in NetXMS? Configuration → Server Configuration → SMTP Server. Is the action linked with the Event Processing Policy?
DCI template is not applied to the nodeAssign the template explicitly to the node: Node properties → Data Collection → Apply template. Check automatic binding.
SNMP walk does not find any Didactum OIDsAllowed Managers entered on the Didactum device: IP of the NetXMS server? SNMP enabled on the device? Device reachable by ping?
Management Console cannot connectNetXMS server service running? TCP port 4701 allowed? systemctl status netxmsd. Check connection settings in the console.

Diagnostic commands overview

# Check NetXMS server status:
sudo systemctl status netxmsd

# Restart NetXMS server:
sudo systemctl restart netxmsd

# Follow the main NetXMS log in real time:
sudo tail -f /var/log/netxms/netxmsd.log

# Test SNMP reachability:
snmpwalk -v2c -c public 192.168.1.100 1.3.6.1.4.1.3854

# Query a single OID:
snmpget -v2c -c public 192.168.1.100 1.3.6.1.4.1.3854.1.2.2.1.16.1.3.1

# NetXMS SNMP tool:
nxsnmpwalk -v 2c -c public 192.168.1.100 1.3.6.1.4.1.3854
nxsnmpget -v 2c -c public 192.168.1.100 1.3.6.1.4.1.3854.1.2.2.1.16.1.3.1

# Check database connection:
sudo -u netxms nxdbmgr check

# Update database schema (after update):
sudo -u netxms nxdbmgr upgrade

# Send test trap:
snmptrap -v2c -c public 192.168.1.70 '' \
  .1.3.6.1.4.1.3854.1.7.2 \
  .1.3.6.1.4.1.3854.1.2.2.1.18.1.4.1 i 1

# Check trap reception in the log:
sudo grep -i "trap" /var/log/netxms/netxmsd.log | tail -20

# Check firewall ports (ufw):
sudo ufw status verbose

# Open ports 161 and 162:
sudo ufw allow 161/udp
sudo ufw allow 162/udp

# NetXMS database status:
sudo -u netxms nxdbmgr info

Appendix: NetXMS configuration quick reference

TaskNavigation path in Management Console
Create nodeObject Browser → right-click → Create → Node
Configure DCIRight-click node → Properties → Data Collection → Add
DCI transformationDCI → Edit → Transformation → NXSL script
Create thresholdDCI → Edit → Thresholds → Add threshold
DCI templateConfiguration → DCI Templates → New template
Create eventConfiguration → Event Configuration → New event
Event Processing PolicyConfiguration → Event Processing Policy → Add rule
Create action (email/SMS)Configuration → Actions → New action
SNMP trap mappingConfiguration → SNMP Trap Mapping → Add
Network DiscoveryConfiguration → Network Discovery
Create dashboardDashboards → New dashboard
Network mapNetwork Maps → New map
MIB BrowserTools → MIB Explorer
Alarm overviewAlarms → Active alarms
Configure SMTPConfiguration → Server Configuration → SMTP Server

For firmware-specific OIDs and supported sensor types, always consult the current Didactum device documentation.

This website uses cookies

This website uses cookies to improve user experience. By using our website you consent to all cookies in accordance with our Cookie Policy.

Essential cookies enable basic functions and are necessary for the website to function properly.
Statistics cookies collect information anonymously. This information helps us to understand how our visitors use our website.
Marketing cookies are used by third parties or publishers to display personalized advertisements. They do this by tracking visitors across websites.