Librenms client
The LibreNMS module interacts with the inventory management system of GAP.
LibreNMSClient
The client for LibreNMS that interacts with the inventory management system.
Source code in gso/services/librenms_client.py
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 |
|
__init__()
Initialise a new LibreNMS client with an authentication token.
Source code in gso/services/librenms_client.py
get_device(fqdn)
Get an existing device from LibreNMS.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
fqdn
|
str
|
The FQDN of a device that is retrieved. |
required |
Returns:
Type | Description |
---|---|
dict[str, Any]
|
A JSON formatted list of devices that match the queried FQDN. |
Raises:
Type | Description |
---|---|
HTTPError
|
Raises an HTTP error 404 when the device is not found |
Source code in gso/services/librenms_client.py
device_exists(fqdn)
Check whether a device exists in LibreNMS.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
fqdn
|
str
|
The hostname that should be checked for. |
required |
Returns:
Type | Description |
---|---|
bool
|
Whether the device exists or not. |
Source code in gso/services/librenms_client.py
add_device(fqdn, snmp_version)
Add a new device to LibreNMS.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
fqdn
|
str
|
The hostname of the newly added device. |
required |
snmp_version
|
SNMPVersion
|
The SNMP version of the new device, which decides the authentication parameters that LibreNMS should use to poll the device. |
required |
Source code in gso/services/librenms_client.py
remove_device(fqdn)
Remove a device from LibreNMS.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
fqdn
|
str
|
The FQDN of the hostname that should get deleted. |
required |
Returns:
Type | Description |
---|---|
dict[str, Any]
|
A JSON representation of the device that got removed. |
Raises:
Type | Description |
---|---|
HTTPError
|
Raises an exception if the request did not succeed. |
Source code in gso/services/librenms_client.py
validate_device(fqdn)
Validate a device in LibreNMS by fetching the record match the queried FQDN against its hostname.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
fqdn
|
str
|
The FQDN of the host that is validated. |
required |
Returns:
Type | Description |
---|---|
str | None
|
A list of errors, if empty the device is successfully validated. |