On Fri, Feb 9, 2018 at 12:02 AM, QI Fuli <[email protected]> wrote: > This patch is used to add $ndctl create-monitor command, by which users can > create a new monitor. Users can select the DIMMS to be monitored by using > [--dimm] [--bus] [--region] [--namespace] options. The notifications can > be outputed to a special file or syslog by using [--output] option, the > special file will be placed under /var/log/ndctl. A name is also required for > a monitor,so users can destroy the monitor by the name. When a monitor is > created successfully, a file with same name will be created under > /var/ndctl/monitor. > Example: > #ndctl create-monitor --monitor m_nmem1 --dimm nmem1 --output m_nmem.log
Hi Qi, This is getting closer to where I want to see this go, but still some architecture details to incorporate. I mentioned on the cover letter that systemd can handle starting, stopping, and show the status of the monitor. The other detail to incorporate is that monitor events can come DIMMs, but also namespaces, regions, and the bus. The event list I have collected to date is: dimm-spares-remaining dimm-media-temperature dimm-controller-temperature dimm-health-state dimm-unclean-shutdown dimm-detected namespace-media-error namespace-detected region-media-error region-detected bus-media-error bus-address-range-scrub-complete bus-detected ...and I think all of those should be separate options, probably something like the following, but I'd Vishal to comment if this scheme can be handled with the bash tab-completion implementation: ndctl monitor --dimm-events=spares-remaining,media-temperature --namespace-events=all --regions-events --bus=ACPI.NFIT ...where an empty --<object>-events option is equivalent to --<object>-events=all. Also, similar to "ndctl list" specifying specific buses, namespaces, etc causes the monitor to filter the objects based on those properties. Since "ndctl list" already has this filtering implemented I'd like to see it refactored and shared between the 2 implementations rather than duplicated as is done in this patch. In other words rework cmd_list() into a generic nvdimm object walking routine with callback functions to 'list' or 'monitor' a given object that matches the filter. Let me know if the above makes sense. I'm thinking the 'ndctl list' refactoring might be something I need to handle. _______________________________________________ Linux-nvdimm mailing list [email protected] https://lists.01.org/mailman/listinfo/linux-nvdimm
