Forum: CFEngine Help Subject: CFEngine use of SIGAR API: System Information Gathering and Reporting Author: mvpel Link to topic: https://cfengine.com/forum/read.php?3,27288,27288#msg-27288
While working on implementing sys.mac_addresses for HP-UX, I came across SIGAR: http://www.hyperic.com/products/sigar -- Hyperic's System Information Gatherer (SIGAR) is a cross-platform API for collecting software inventory data. SIGAR is core of HQ's auto-discovery functionality, and you can use it to extend auto-discovery behavior. SIGAR includes support for Linux, FreeBSD, Windows, Solaris, AIX, HP-UX and Mac OSX across a variety of versions and architectures. Users of the SIGAR API are given portable access to inventory and monitoring data including: - System memory, swap, cpu, load average, uptime, logins - Per-process memory, cpu, credential info, state, arguments, environment, open files - File system detection and metrics - Network interface detection, configuration information and metrics - Network route and connection tables This information is available in most operating systems, but each OS has its own way(s) providing it. SIGAR provides developers with one API to access this information regardless of the underlying platform. The core API is implemented in pure C with bindings currently implemented for Java, Perl and C#. --------------- This seems like a very good fit for CFEngine, and could simplify the system reconnaissance code within CFEngine and extend it to other platforms, while avoiding the kind of problems we've seen arise from parsing external command output, like in old bug #1125 [ https://cfengine.com/bugtracker/view.php?id=1125 ]. It's Apache 2.0 licensed, which is compatible for inclusion in GPLv3 projects. Has this been considered by the CFEngine maintainers? Does it look like something worth investigating further? _______________________________________________ Help-cfengine mailing list Help-cfengine@cfengine.org https://cfengine.org/mailman/listinfo/help-cfengine