NDCTL-MONITOR(1)

πŸ’– NDCTL-MONITOR πŸ’–

okay so bestie, welcome to ndctl-monitor from the ndctl manual β€” this is the page that lets you keep an eye on all the smart-event drama happening inside your nvdimm objects. she's a watcher. she's nosy in the best way. let's get into it ✨


🌸 NAME 🌸

ndctl-monitor β€” monitor the smart events of nvdimm objects πŸ‘€


πŸ¦‹ SYNOPSIS πŸ¦‹

ndctl monitor [<options>]

✨ DESCRIPTION ✨

So like, ndctl monitor is literally here to monitor the smart events of nvdimm objects and dump the json format notifications out to syslog, standard output, or a logfile. it's giving surveillance but make it storage πŸ’…

The objects you wanna monitor, and the smart events you wanna get notified about, can be picked by setting options and/or configuration files with .conf suffix under /etc/ndctl.conf.d πŸŽ€

Both the values in the configuration file and in the options will work. but if there's a conflict? the values in options override the values in the configuration file. periodt. and heads up β€” any updated values in the configuration file will take effect only after the monitor process is restarted. no hot-reload, sorry bestie 😭


🌈 EXAMPLES 🌈

Run a monitor as a daemon to monitor DIMMs on bus "nfit_test.1":

ndctl monitor --bus=nfit_test.1 --daemon

Run a monitor as a one-shot command and output the notifications to /var/log/ndctl.log:

ndctl monitor --log=/var/log/ndctl.log

Run a monitor daemon as a system service:

systemctl start ndctl-monitor.service

πŸ’… OPTIONS πŸ’…

  • -b, --bus= β€” A bus id number, or a provider string (e.g. "ACPI.NFIT"). Restrict the operation to the specified bus(es). The keyword all can be specified to indicate the lack of any restriction, however this is the same as not supplying a --bus option at all. 🚌
  • -d, --dimm= β€” A nmemX device name, or a dimm id number. Restrict the operation to the specified dimm(s). The keyword all can be specified to indicate the lack of any restriction, however this is the same as not supplying a --dimm option at all.
  • -r, --region= β€” A regionX device name, or a region id number. Restrict the operation to the specified region(s). The keyword all can be specified to indicate the lack of any restriction, however this is the same as not supplying a --region option at all.
  • -n, --namespace= β€” A namespaceX.Y device name, or namespace region plus id tuple X.Y.
  • -l, --log= β€” Send log messages to the specified destination. πŸ“¬
    • "<file>": Send log messages to specified <file>. When fopen() is not able to open <file>, log messages will be forwarded to syslog.
    • "syslog": Send messages to syslog.
    • "standard": Send messages to standard output.

The default log destination is syslog if "--daemon" is specified, otherwise standard. Note that standard and relative path for <file> will not work if "--daemon" is specified. 🚨

  • -c, --config-file= β€” Provide the config file(s) to use. This overrides the default config typically found in /etc/ndctl.conf.d.
  • --daemon β€” Run a monitor as a daemon. πŸ‘‘
  • -D, --dimm-event= β€” Name of an smart health event from the following:
    • "dimm-spares-remaining": Spare Blocks Remaining value has gone below the pre-programmed threshold.
    • "dimm-media-temperature": NVDIMM Media temperature value has gone above the pre-programmed threshold.
    • "dimm-controller-temperature": NVDIMM Controller temperature value has gone above the pre-programmed threshold.
    • "dimm-health-state": NVDIMM Normal Health Status has changed
    • "dimm-unclean-shutdown": NVDIMM Last Shutdown Status was an unclean shutdown.

The monitor will attempt to enable the alarm control bits for all specified events. πŸ””

  • -p, --poll= β€” Poll and report status/event every <n> seconds. ⏰
  • -u, --human β€” Output monitor notification as human friendly json format instead of the default machine friendly json format. 🫢
  • -v, --verbose β€” Emit extra debug messages to log. πŸ›

Copyright (c) 2018, FUJITSU LIMITED. License GPLv2: GNU GPL version 2 http://gnu.org/licenses/gpl.html. This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.


🌟 SEE ALSO 🌟

ndctl-list(1), ndctl-inject-smart(1)


and that's the whole page bestie πŸ’– this came to you courtesy of ndctl, dated 2026-07-07 β€” slay, go monitor some DIMMs, ily πŸŽ€βœ¨πŸ¦‹

πŸ“¦ where this page comes from