PRTG Manual: SNMP Custom String Lookup Sensor
The SNMP Custom String Lookup sensor monitors a string that a specific object identifier (OID) returns via the Simple Network Management Protocol (SNMP). It can map the string directly to a sensor status by using a defined lookup file. Basically, this sensor does a "reverse lookup". You have to define all potential return strings in the lookup file as text values, each in one lookup entry. Graphs and data tables show the value to which the string is mapped, usually an integer (lookup type SingleInt). For more information, see section Example.
The sensor can show the following:
- A retrieved string value and its status, as defined in the corresponding lookup file
- Dutch: SNMP Aangepaste Tekst Lookup
- French: Requête de chaîne personnalisée SNMP
- German: SNMP-Zeichenfolge mit Lookup
- Japanese: SNMP カスタム文字列のルックアップ
- Portuguese: Pesquisa da sequência de caracteres customizada SNMP
- Russian: Подстановка пользовательской строки по SNMP
- Simplified Chinese: SNMP 自定义字符串查询
- Spanish: Búsqueda de cadena personalizada de SNMP
- It might not work to query data from a probe device via SNMP (querying localhost, 127.0.0.1, or ::1). Add this device to PRTG with the IP address that it has in your network and create the SNMP sensor on this device instead.
- This sensor supports the IPv6 protocol.
- This sensor has a very low performance impact.
- This sensor uses lookups to determine the status values of one or more channels. This means that possible states are defined in a lookup file. You can change the behavior of a channel by editing the lookup file that the channel uses. For details, see section Define Lookups.
- See section Example for a sample lookup definition for this sensor.
- See the Knowledge Base: How do I find out which OID I need for an SNMP Custom sensor?
The Add Sensor dialog appears when you manually add a new sensor to a device. It only shows the setting fields that are required for creating the sensor. Therefore, you do not see all setting fields in this dialog. You can change (nearly) all settings in the sensor's Settings tab later.
The following settings in the Add Sensor dialog differ in comparison to the sensor's Settings tab.
OID Settings
Setting |
Description |
---|---|
Channel Name |
Enter a name for the channel in which the sensor shows the results at the specified OID. Enter a string. You can change this value later in the respective channel settings of this sensor. |
Lookup |
Select a lookup file that you stored in the \lookups\custom subfolder of the PRTG program directory on the probe system. This lookup file must contain all potential strings that the monitored OID can return. |
Click the Settings tab of a sensor to change its settings.
Usually, a sensor connects to the IP Address or DNS Name of the parent device on which you created the sensor. See the device settings for details. For some sensors, you can explicitly define the monitoring target in the sensor settings. See below for details on available settings.
Setting |
Description |
---|---|
Sensor Name |
Enter a meaningful name to identify the sensor. By default, PRTG shows this name in the device tree, as well as in alarms, logs, notifications, reports, maps, libraries, and tickets.
|
Parent Tags |
Shows tags that the sensor inherits from its parent device, parent group, and parent probe. This setting is shown for your information only and cannot be changed here. |
Tags |
Enter one or more tags. Confirm each tag with the Spacebar key, a comma, or the Enter key. You can use tags to group objects and use tag-filtered views later on. Tags are not case-sensitive. Tags are automatically inherited.
The sensor has the following default tags that are automatically predefined in the sensor's settings when you add the sensor:
|
Priority |
Select a priority for the sensor. This setting determines the position of the sensor in lists. The highest priority is at the top of a list. Choose from the lowest priority ( |
Setting |
Description |
---|---|
OID |
Enter the OID of the SNMP object that you want to receive a string from.
|
Lookup |
Shows the lookup file that this sensor uses. Once you have created the sensor, you cannot change this value. It is shown for reference purposes only. If you need to change this value, add the sensor anew. |
If Value Changes |
Define what the sensor does when the sensor value changes:
|
Setting |
Description |
---|---|
Primary Channel |
Select a channel from the list to define it as the primary channel. In the device tree, the last value of the primary channel is always displayed below the sensor's name. The available options depend on what channels are available for this sensor.
|
Graph Type |
Define how different channels are shown for this sensor:
|
Stack Unit |
This setting is only visible if you enable Stack channels on top of each other as Graph Type. Select a unit from the list. All channels with this unit are stacked on top of each other. By default, you cannot exclude single channels from stacking if they use the selected unit. However, there is an advanced procedure to do so. |
By default, all of the following settings are inherited from objects that are higher in the hierarchy. You should change them centrally in the root group settings if necessary. To change a setting for this object only, click under the corresponding setting name to disable the inheritance. You then see the options described below.
For more information, see section Inheritance of Settings.
Click to interrupt the inheritance.
Setting |
Description |
---|---|
Scanning Interval |
Select a scanning interval from the dropdown list. The scanning interval determines the amount of time that the sensor waits between two scans. Choose from:
|
If a Sensor Query Fails |
Select the number of scanning intervals that the sensor has time to reach and to check a device again if a sensor query fails. Depending on the option that you select, the sensor can try to reach and to check a device again several times before the sensor shows the Down status. This can avoid false alarms if the monitored device only has temporary issues. For previous scanning intervals with failed requests, the sensor shows the Warning status. Choose from:
|
Schedules, Dependencies, and Maintenance Window
You cannot interrupt the inheritance for schedules, dependencies, and maintenance windows. The corresponding settings from the parent objects are always active. However, you can define additional schedules, dependencies, and maintenance windows. They are active at the same time as the parent objects' settings.
Setting |
Description |
---|---|
Schedule |
Select a schedule from the list. You can use schedules to monitor during a certain time span (days or hours) every week. Choose from:
|
Maintenance Window |
Select if you want to set up a one-time maintenance window. During a maintenance window, monitoring stops for the selected object and all child objects. They show the Paused status instead. Choose between:
|
Maintenance Begins |
This setting is only visible if you enable Set up a one-time maintenance window above. Use the date time picker to enter the start date and time of the one-time maintenance window. |
Maintenance Ends |
This setting is only visible if you enable Set up a one-time maintenance window above. Use the date time picker to enter the end date and time of the one-time maintenance window. |
Dependency Type |
Select a dependency type. You can use dependencies to pause monitoring for an object depending on the status of a different object. You can choose from:
|
Dependency |
This setting is only visible if you enable Select a sensor above. Click |
Dependency Delay (Sec.) |
This setting is only visible if you enable Select a sensor above. Define a time span in seconds for the dependency delay. After the master sensor for this dependency returns to the Up status, PRTG additionally delays the monitoring of the dependent objects by the time span you define. This can prevent false alarms, for example, after a server restart or to give systems more time for all services to start. Enter an integer value.
|
Click to interrupt the inheritance.
Setting |
Description |
---|---|
User Group Access |
Define the user groups that have access to the sensor. You see a table with user groups and group access rights. The table contains all user groups in your setup. For each user group, you can choose from the following group access rights:
|
You have to provide all possible return strings for this sensor in one lookup file. For example, consider an OID that can return one of the three strings Good, Deficient, or Bad. Then you have to define a lookup file for this sensor that contains all these possible string values as text, each text value in one lookup entry:
<?xml version="1.0" encoding="UTF-8"?>
<ValueLookup id="mylookupfile" desiredValue="0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="PaeValueLookup.xsd">
<Lookups>
<SingleInt state="Ok" value="0">
Good
</SingleInt>
<SingleInt state="Warning" value="1">
Deficient
</SingleInt>
<SingleInt state="Error" value="2">
Bad
</SingleInt>
</Lookups>
</ValueLookup>
If a retrieved string matches one of the text values, the sensor maps it into the defined integer value ("reverse lookup") that is shown, for example, in data graphs. Depending on the integer, the sensor shows the respective status and converts the integer back to the original string to show it as a channel value. If the OID returns a string that the lookup definition does not contain, the sensor shows the Down status with a corresponding error message.
For example, you create an SNMP Custom String Lookup sensor, apply the example lookup definition from above (store it into the \lookups\custom subfolder of the PRTG program directory), and the specified OID returns the string Good. Then the sensor maps the string Good to the integer value 0 that is shown in the live graph of the sensor, for example. According to the status definition state="Ok", the sensor status is Up in this case. The integer 0 is converted back to the string Good, which is shown as the channel value.
The string match is not case sensitive.
Use the lookup type SingleInt for this sensor. BitFields and ranges are not supported.
If you imported an SNMP library (this is an .oidlib file) that contains lookups (you can see this in section Lookup in the MIB Importer), you can define your own sensor states for returning values. Use the lookupname of the imported SNMP library as id parameter in a custom lookup definition. This overrides the lookups that an .oidlib file might contain with your own status definitions. See section Define Lookups for details about this mechanism.
KNOWLEDGE BASE
What SNMP sensors does PRTG offer?
My SNMP sensors don't work. What can I do?
How do I find out which OID I need for an SNMP Custom sensor?
PAESSLER TOOLS
MIB Importer
For more information about sensor settings, see the following sections: