%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /proc/thread-self/root/proc/self/root/lib64/nagios/plugins/nccustom/
Upload File :
Create Path :
Current File : //proc/thread-self/root/proc/self/root/lib64/nagios/plugins/nccustom/check_cl_license

#!/usr/libexec/platform-python
# version 0.1, 2013/10/16
# writen by Eduard N.
# Modify by Ihor Bilyi, Phantom team, 07/2022

import os
import re
from subprocess import Popen, PIPE

# State Nagios
STATE_OK = 0
STATE_WARNING = 1
STATE_CRITICAL = 2
STATE_UNKNOWN = 3

cldetect = '/usr/bin/cldetect'

ok_pattern = re.compile(r"^OK$")
invalid_pattern = re.compile(r"^No valid license found$")

if os.path.isfile(cldetect):
    result, err = Popen([cldetect, '--check-license'], stdout=PIPE).communicate()
    result = result.decode('utf-8')
    if ok_pattern.search(result):
        print("CL license OK")
        exit(STATE_OK)
    elif invalid_pattern.search(result):
        print("Critical. No CL license found")
        exit(STATE_CRITICAL)
    else:
        print(result)
        print(err.decode('utf-8'))
        exit(STATE_UNKNOWN)
else:
    print("OK. Binary file cldetect not found -> no CL on host, CL license not needed")
    exit(STATE_OK)

Zerion Mini Shell 1.0