Integration of Oxidized with NetXMS

Started by lhpaladin, June 05, 2026, 05:35:58 AM

Previous topic - Next topic

lhpaladin

Hi,

I'm trying to integrate NetXMS with Oxidized, but it seems the module isn't loading completely.

Adding the settings to the netxmsd.conf file results in the following message during system initialization:

[backup] Network device backup interface is not available
The URL and credential settings are all correct.

Thank you for your attention.

Tatjana Dubrovica

Hi,

That message is expected if the Oxidized module itself is not loaded — it's logged at startup once the server has scanned all loaded modules and found none providing a device backup interface.

The thing to check: adding the OXIDIZED settings section to netxmsd.conf only provides configuration values — it does not load the module. You also need to add the module to the load list:

Module = oxidized

So a complete config looks like this:

Module = oxidized

*OXIDIZED
BaseURL = https://oxidized.example.com
Login = user
Password = secret
DefaultModel = ios

Once the module is actually loaded, you should instead see:

[backup] Network device backup interface is provided by module OXIDIZED

If you've already got Module = oxidized in place and still see "not available", look at the lines just above it in the server log — the module reports the specific reason there, e.g.:

- Oxidized integration module initialization failed (cannot parse module configuration)
- Oxidized integration module initialization failed (invalid base URL) — the BaseURL must start with http:// or https://.

Starting the server with -D5 and checking the backup/oxidized debug-tag output will show exactly where it stops. Note that the Oxidized server being temporarily unreachable does not cause this message — that only produces a warning ("Oxidized server is not reachable, will retry on demand"), and the interface still initializes.

One more thing to confirm: the Oxidized integration was introduced in NetXMS 6.1.0, so make sure you're running 6.1.0 or later — on earlier versions the module doesn't exist.

Best regards,
Tatjana

lhpaladin

Thank you for your reply, Tatjana.

My mistake was because I had the following definition:

Module = webapi,Y
[WEBAPI]
...

Module = oxidized.nxm
[OXIZIDIZED]
...

The module declarations need to come before the configuration:

Module = webapi,Y
Module = oxidized.nxm

[WEBAPI]
...
[OXIDIZED]
...

This way, it works!

Thank you!

lhpaladin

Another question: can the password be entered using `nxencpasswd`?

Thank you!

Filipp Sudanov

Quote from: lhpaladin on June 12, 2026, 03:58:29 AMAnother question: can the password be entered using `nxencpasswd`?
Ups, that was forgotten in the implementation. Hopefully will be fixed in 6.2, created a ticket for it: https://github.com/netxms/netxms/issues/3321

lhpaladin

Hi Filipp,

Thanks for feedback.

I think one thing that could be implemented would be permissions to view the list of backups performed and another to export or view the backup content.

Alex Kirhenshtein

Thanks for the suggestion — I've opened an issue for it: https://github.com/netxms/netxms/issues/3409

At the moment all backup-related read operations (list of backups, latest backup, individual backup by ID) are gated only by "Read" access on the node, so anyone who can see the node can also pull the full device configuration with whatever it contains. Splitting that into a separate right for the backup list and another for viewing/exporting the actual content makes sense to me.

There are a few things to settle first — mainly what the default should be for existing installations, and the fact that the object access rights mask is nearly out of free bits — so I'll discuss it with the team before we implement anything. Feel free to add your thoughts to the issue.