The Jinja2 template for node_exporter.service omits the necessary trailing backslash (\) after the --web.listen-address argument when collectors.textfile is defined and there are further arguments.
vyos@vyos# show service monitoring |commands set prometheus node-exporter collectors textfile set prometheus node-exporter listen-address '127.0.0.1'
and the systemd unit file:
[Service]
User=node_exporter
ExecStart=/usr/sbin/node_exporter \
--web.listen-address=127.0.0.1:9100
--collector.textfile.directory=/run/node_exporter/collector
[Install]This results in subsequent arguments, such as --collector.textfile.directory, not being correctly passed to the node_exporter executable. Consequently, the collectors are not being loaded.
system image is : VyOS 2025.04.17-0018-rolling