CyberAlphaWolf

Server : Apache
System : Linux 182.49.167.72.host.secureserver.net 4.18.0-553.92.1.el8_10.x86_64 #1 SMP Wed Jan 14 06:31:58 EST 2026 x86_64
User : kikai ( 1014)
PHP Version : 8.3.30
Disable Function : NONE
Directory :  /lib/fm-agent/plugins/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //lib/fm-agent/plugins/sysctl.py
import agent_util
import csv
import sys


def get_sysctl_dict():
    sysctl = agent_util.which("sysctl")
    status, output = agent_util.execute_command("%s -a" % sysctl)
    if status != 0:
        raise Exception(output)
    metadata = {}
    for item in output.splitlines():
        m = item.split(" = ")
        try:
            metadata[m[0]] = int(m[-1].strip())
        except:
            pass
    return metadata


class SysctlPlugin(agent_util.Plugin):
    textkey = "sysctl_v2"
    label = "Sysctl"

    @classmethod
    def get_metadata(self, config):
        status = agent_util.SUPPORTED
        msg = None

        # check if sysctl is even installed
        installed = agent_util.which("sysctl")
        if not installed:
            self.log.info("sysctl binary not found")
            status = agent_util.UNSUPPORTED
            msg = "sysctl binary not found"

        metadata = {}
        if status is agent_util.SUPPORTED:
            metadata = get_sysctl_dict()

        data = {
            "sysctl": {
                "label": "Sysctl metric",
                "options": None,
                "status": status,
                "error_message": msg,
                "option_string": True,
            }
        }

        return data

    def check(self, textkey, data, config):
        metadata = get_sysctl_dict()
        res = None
        try:
            res = metadata[data]
        except:
            pass
        return res

XYZEAZ - Cyber Alpha Wolf © All Rights Reserved