mirror of
https://github.com/pandorafms/pandorafms.git
synced 2025-07-28 16:24:54 +02:00
#12435 fix conflict merge develop
This commit is contained in:
commit
72d34ef99b
@ -520,18 +520,18 @@ execute_cmd "systemctl restart mysql" "Configuring and restarting database engin
|
|||||||
|
|
||||||
#Define packages
|
#Define packages
|
||||||
if [ "$PANDORA_LTS" -eq '1' ] ; then
|
if [ "$PANDORA_LTS" -eq '1' ] ; then
|
||||||
[ "$PANDORA_SERVER_PACKAGE" ] || PANDORA_SERVER_PACKAGE="http://firefly.pandorafms.com/pandorafms/latest/Tarball/LTS/pandorafms_server-7.0NG.tar.gz"
|
[ "$PANDORA_SERVER_PACKAGE" ] || PANDORA_SERVER_PACKAGE="https://firefly.pandorafms.com/pandorafms/latest/Tarball/LTS/pandorafms_server-7.0NG.tar.gz"
|
||||||
[ "$PANDORA_CONSOLE_PACKAGE" ] || PANDORA_CONSOLE_PACKAGE="http://firefly.pandorafms.com/pandorafms/latest/Tarball/LTS/pandorafms_console-7.0NG.tar.gz"
|
[ "$PANDORA_CONSOLE_PACKAGE" ] || PANDORA_CONSOLE_PACKAGE="https://firefly.pandorafms.com/pandorafms/latest/Tarball/LTS/pandorafms_console-7.0NG.tar.gz"
|
||||||
[ "$PANDORA_AGENT_PACKAGE" ] || PANDORA_AGENT_PACKAGE="https://firefly.pandorafms.com/pandorafms/latest/Tarball/pandorafms_agent_linux-7.0NG.x86_64.tar.gz"
|
[ "$PANDORA_AGENT_PACKAGE" ] || PANDORA_AGENT_PACKAGE="https://firefly.pandorafms.com/pandorafms/latest/Tarball/pandorafms_agent_linux-7.0NG.x86_64.tar.gz"
|
||||||
elif [ "$PANDORA_LTS" -ne '1' ] ; then
|
elif [ "$PANDORA_LTS" -ne '1' ] ; then
|
||||||
[ "$PANDORA_SERVER_PACKAGE" ] || PANDORA_SERVER_PACKAGE="http://firefly.pandorafms.com/pandorafms/latest/Tarball/pandorafms_server-7.0NG.tar.gz"
|
[ "$PANDORA_SERVER_PACKAGE" ] || PANDORA_SERVER_PACKAGE="https://firefly.pandorafms.com/pandorafms/latest/Tarball/pandorafms_server-7.0NG.tar.gz"
|
||||||
[ "$PANDORA_CONSOLE_PACKAGE" ] || PANDORA_CONSOLE_PACKAGE="http://firefly.pandorafms.com/pandorafms/latest/Tarball/pandorafms_console-7.0NG.tar.gz"
|
[ "$PANDORA_CONSOLE_PACKAGE" ] || PANDORA_CONSOLE_PACKAGE="https://firefly.pandorafms.com/pandorafms/latest/Tarball/pandorafms_console-7.0NG.tar.gz"
|
||||||
[ "$PANDORA_AGENT_PACKAGE" ] || PANDORA_AGENT_PACKAGE=" https://firefly.pandorafms.com/pandorafms/latest/Tarball/pandorafms_agent_linux-7.0NG.x86_64.tar.gz"
|
[ "$PANDORA_AGENT_PACKAGE" ] || PANDORA_AGENT_PACKAGE=" https://firefly.pandorafms.com/pandorafms/latest/Tarball/pandorafms_agent_linux-7.0NG.x86_64.tar.gz"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$PANDORA_BETA" -eq '1' ] ; then
|
if [ "$PANDORA_BETA" -eq '1' ] ; then
|
||||||
PANDORA_SERVER_PACKAGE="http://firefly.pandorafms.com/pandora_enterprise_nightlies/pandorafms_server-latest.tar.gz"
|
PANDORA_SERVER_PACKAGE="https://firefly.pandorafms.com/pandora_enterprise_nightlies/pandorafms_server-latest.tar.gz"
|
||||||
PANDORA_CONSOLE_PACKAGE="http://firefly.pandorafms.com/pandora_enterprise_nightlies/pandorafms_console-latest.tar.gz"
|
PANDORA_CONSOLE_PACKAGE="https://firefly.pandorafms.com/pandora_enterprise_nightlies/pandorafms_console-latest.tar.gz"
|
||||||
PANDORA_AGENT_PACKAGE="https://firefly.pandorafms.com/pandorafms/latest/Tarball/pandorafms_agent_linux-7.0NG.x86_64.tar.gz"
|
PANDORA_AGENT_PACKAGE="https://firefly.pandorafms.com/pandorafms/latest/Tarball/pandorafms_agent_linux-7.0NG.x86_64.tar.gz"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -837,7 +837,7 @@ echo "@hourly root bash -c /etc/cron.hourly/pandora_db" >> /etc/cront
|
|||||||
|
|
||||||
## Enabling agent adn configuring Agente
|
## Enabling agent adn configuring Agente
|
||||||
sed -i "s/^remote_config.*$/remote_config 1/g" $PANDORA_AGENT_CONF &>> "$LOGFILE"
|
sed -i "s/^remote_config.*$/remote_config 1/g" $PANDORA_AGENT_CONF &>> "$LOGFILE"
|
||||||
execute_cmd "/etc/init.d/pandora_agent_daemon start" "Starting PandoraFSM Agent"
|
execute_cmd "/etc/init.d/pandora_agent_daemon restart" "Starting PandoraFSM Agent"
|
||||||
systemctl enable pandora_agent_daemon &>> "$LOGFILE"
|
systemctl enable pandora_agent_daemon &>> "$LOGFILE"
|
||||||
|
|
||||||
#fix path phantomjs
|
#fix path phantomjs
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, AIX version
|
# Version 7.0NG.775, AIX version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, FreeBSD Version
|
# Version 7.0NG.775, FreeBSD Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, HP-UX Version
|
# Version 7.0NG.775, HP-UX Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, GNU/Linux
|
# Version 7.0NG.775, GNU/Linux
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, GNU/Linux
|
# Version 7.0NG.775, GNU/Linux
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, Solaris Version
|
# Version 7.0NG.775, Solaris Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Base config file for Pandora FMS Windows Agent
|
# Base config file for Pandora FMS Windows Agent
|
||||||
# (c) 2006-2023 Pandora FMS
|
# (c) 2006-2023 Pandora FMS
|
||||||
# Version 7.0NG.774
|
# Version 7.0NG.775
|
||||||
# This program is Free Software, you can redistribute it and/or modify it
|
# This program is Free Software, you can redistribute it and/or modify it
|
||||||
# under the terms of the GNU General Public Licence as published by the Free Software
|
# under the terms of the GNU General Public Licence as published by the Free Software
|
||||||
# Foundation; either version 2 of the Licence or any later version
|
# Foundation; either version 2 of the Licence or any later version
|
||||||
|
1
pandora_agents/plugins/windows/pandora_security_win/.gitignore
vendored
Normal file
1
pandora_agents/plugins/windows/pandora_security_win/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
dist
|
10
pandora_agents/plugins/windows/pandora_security_win/Makefile
Normal file
10
pandora_agents/plugins/windows/pandora_security_win/Makefile
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# Makefile for winexe.py.
|
||||||
|
.PHONY: all build_image pandora_security_win.py
|
||||||
|
|
||||||
|
all: build_image pandora_security_win.py
|
||||||
|
|
||||||
|
build_image:
|
||||||
|
docker build -t pandora_security_win docker/
|
||||||
|
|
||||||
|
pandora_security_win.py:
|
||||||
|
docker run --rm -t -v`pwd`:/pybuild pandora_security_win
|
@ -0,0 +1,5 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Build the winexe binary.
|
||||||
|
wine pip install -r src/requirements.txt
|
||||||
|
wine pyinstaller --onefile src/pandora_security_win.py
|
||||||
|
rm -rf build/ __pycache__/ pandora_security_win.spec
|
@ -0,0 +1,34 @@
|
|||||||
|
FROM i386/debian
|
||||||
|
|
||||||
|
# Update the package list.
|
||||||
|
RUN apt-get update
|
||||||
|
|
||||||
|
# Install needed packages.
|
||||||
|
RUN apt-get install --yes \
|
||||||
|
gnupg2 \
|
||||||
|
unzip \
|
||||||
|
software-properties-common \
|
||||||
|
wget \
|
||||||
|
xvfb
|
||||||
|
|
||||||
|
# Install WineHQ.
|
||||||
|
RUN wget -q https://dl.winehq.org/wine-builds/winehq.key -O- | apt-key add -
|
||||||
|
RUN apt-add-repository https://dl.winehq.org/wine-builds/debian/; apt-get update
|
||||||
|
RUN apt-get install --yes --install-recommends wine
|
||||||
|
|
||||||
|
# Use Windows 10.
|
||||||
|
COPY winetricks /tmp/winetricks
|
||||||
|
RUN /bin/bash /tmp/winetricks win10; rm -f /tmp/winetricks
|
||||||
|
|
||||||
|
# Install Python.
|
||||||
|
RUN wget https://www.python.org/ftp/python/3.8.10/python-3.8.10.exe
|
||||||
|
RUN xvfb-run wine python-3.8.10.exe /quiet Include_doc=0 Include_dev=0 Include_test=0 InstallAllUsers=1 PrependPath=1 TargetDir=c:\python; echo
|
||||||
|
ENV WINEPATH="c:\\python;c:\\python\Scripts"
|
||||||
|
|
||||||
|
# Install Python modules..
|
||||||
|
RUN wine pip.exe install wheel
|
||||||
|
RUN wine pip.exe install pyinstaller
|
||||||
|
|
||||||
|
VOLUME ["/pybuild"]
|
||||||
|
WORKDIR "/pybuild"
|
||||||
|
ENTRYPOINT ["/bin/bash", "/pybuild/build.sh"]
|
23525
pandora_agents/plugins/windows/pandora_security_win/docker/winetricks
Normal file
23525
pandora_agents/plugins/windows/pandora_security_win/docker/winetricks
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,406 @@
|
|||||||
|
import wmi, sys, winreg, os, subprocess, json, re
|
||||||
|
from datetime import datetime, timedelta
|
||||||
|
|
||||||
|
|
||||||
|
## Define modules
|
||||||
|
modules=[]
|
||||||
|
|
||||||
|
def print_module(module, print_flag=None):
|
||||||
|
"""Returns module in XML format. Accepts only {dict}.\n
|
||||||
|
- Only works with one module at a time: otherwise iteration is needed.
|
||||||
|
- Module "value" field accepts str type or [list] for datalists.
|
||||||
|
- Use print_flag to show modules' XML in STDOUT.
|
||||||
|
"""
|
||||||
|
data = dict(module)
|
||||||
|
module_xml = ("<module>\n"
|
||||||
|
"\t<name><![CDATA[" + str(data["name"]) + "]]></name>\n"
|
||||||
|
"\t<type>" + str(data["type"]) + "</type>\n"
|
||||||
|
)
|
||||||
|
|
||||||
|
if type(data["type"]) is not str and "string" not in data["type"]: #### Strip spaces if module not generic_data_string
|
||||||
|
data["value"] = data["value"].strip()
|
||||||
|
if isinstance(data["value"], list): # Checks if value is a list
|
||||||
|
module_xml += "\t<datalist>\n"
|
||||||
|
for value in data["value"]:
|
||||||
|
if type(value) is dict and "value" in value:
|
||||||
|
module_xml += "\t<data>\n"
|
||||||
|
module_xml += "\t\t<value><![CDATA[" + str(value["value"]) + "]]></value>\n"
|
||||||
|
if "timestamp" in value:
|
||||||
|
module_xml += "\t\t<timestamp><![CDATA[" + str(value["timestamp"]) + "]]></timestamp>\n"
|
||||||
|
module_xml += "\t</data>\n"
|
||||||
|
module_xml += "\t</datalist>\n"
|
||||||
|
else:
|
||||||
|
module_xml += "\t<data><![CDATA[" + str(data["value"]) + "]]></data>\n"
|
||||||
|
if "desc" in data:
|
||||||
|
module_xml += "\t<description><![CDATA[" + str(data["desc"]) + "]]></description>\n"
|
||||||
|
if "unit" in data:
|
||||||
|
module_xml += "\t<unit><![CDATA[" + str(data["unit"]) + "]]></unit>\n"
|
||||||
|
if "interval" in data:
|
||||||
|
module_xml += "\t<module_interval><![CDATA[" + str(data["interval"]) + "]]></module_interval>\n"
|
||||||
|
if "tags" in data:
|
||||||
|
module_xml += "\t<tags>" + str(data["tags"]) + "</tags>\n"
|
||||||
|
if "module_group" in data:
|
||||||
|
module_xml += "\t<module_group>" + str(data["module_group"]) + "</module_group>\n"
|
||||||
|
if "module_parent" in data:
|
||||||
|
module_xml += "\t<module_parent>" + str(data["module_parent"]) + "</module_parent>\n"
|
||||||
|
if "min_warning" in data:
|
||||||
|
module_xml += "\t<min_warning><![CDATA[" + str(data["min_warning"]) + "]]></min_warning>\n"
|
||||||
|
if "min_warning_forced" in data:
|
||||||
|
module_xml += "\t<min_warning_forced><![CDATA[" + str(data["min_warning_forced"]) + "]]></min_warning_forced>\n"
|
||||||
|
if "max_warning" in data:
|
||||||
|
module_xml += "\t<max_warning><![CDATA[" + str(data["max_warning"]) + "]]></max_warning>\n"
|
||||||
|
if "max_warning_forced" in data:
|
||||||
|
module_xml += "\t<max_warning_forced><![CDATA[" + str(data["max_warning_forced"]) + "]]></max_warning_forced>\n"
|
||||||
|
if "min_critical" in data:
|
||||||
|
module_xml += "\t<min_critical><![CDATA[" + str(data["min_critical"]) + "]]></min_critical>\n"
|
||||||
|
if "min_critical_forced" in data:
|
||||||
|
module_xml += "\t<min_critical_forced><![CDATA[" + str(data["min_critical_forced"]) + "]]></min_critical_forced>\n"
|
||||||
|
if "max_critical" in data:
|
||||||
|
module_xml += "\t<max_critical><![CDATA[" + str(data["max_critical"]) + "]]></max_critical>\n"
|
||||||
|
if "max_critical_forced" in data:
|
||||||
|
module_xml += "\t<max_critical_forced><![CDATA[" + str(data["max_critical_forced"]) + "]]></max_critical_forced>\n"
|
||||||
|
if "str_warning" in data:
|
||||||
|
module_xml += "\t<str_warning><![CDATA[" + str(data["str_warning"]) + "]]></str_warning>\n"
|
||||||
|
if "str_warning_forced" in data:
|
||||||
|
module_xml += "\t<str_warning_forced><![CDATA[" + str(data["str_warning_forced"]) + "]]></str_warning_forced>\n"
|
||||||
|
if "str_critical" in data:
|
||||||
|
module_xml += "\t<str_critical><![CDATA[" + str(data["str_critical"]) + "]]></str_critical>\n"
|
||||||
|
if "str_critical_forced" in data:
|
||||||
|
module_xml += "\t<str_critical_forced><![CDATA[" + str(data["str_critical_forced"]) + "]]></str_critical_forced>\n"
|
||||||
|
if "critical_inverse" in data:
|
||||||
|
module_xml += "\t<critical_inverse><![CDATA[" + str(data["critical_inverse"]) + "]]></critical_inverse>\n"
|
||||||
|
if "warning_inverse" in data:
|
||||||
|
module_xml += "\t<warning_inverse><![CDATA[" + str(data["warning_inverse"]) + "]]></warning_inverse>\n"
|
||||||
|
if "max" in data:
|
||||||
|
module_xml += "\t<max><![CDATA[" + str(data["max"]) + "]]></max>\n"
|
||||||
|
if "min" in data:
|
||||||
|
module_xml += "\t<min><![CDATA[" + str(data["min"]) + "]]></min>\n"
|
||||||
|
if "post_process" in data:
|
||||||
|
module_xml += "\t<post_process><![CDATA[" + str(data["post_process"]) + "]]></post_process>\n"
|
||||||
|
if "disabled" in data:
|
||||||
|
module_xml += "\t<disabled><![CDATA[" + str(data["disabled"]) + "]]></disabled>\n"
|
||||||
|
if "min_ff_event" in data:
|
||||||
|
module_xml += "\t<min_ff_event><![CDATA[" + str(data["min_ff_event"]) + "]]></min_ff_event>\n"
|
||||||
|
if "status" in data:
|
||||||
|
module_xml += "\t<status><![CDATA[" + str(data["status"]) + "]]></status>\n"
|
||||||
|
if "timestamp" in data:
|
||||||
|
module_xml += "\t<timestamp><![CDATA[" + str(data["timestamp"]) + "]]></timestamp>\n"
|
||||||
|
if "custom_id" in data:
|
||||||
|
module_xml += "\t<custom_id><![CDATA[" + str(data["custom_id"]) + "]]></custom_id>\n"
|
||||||
|
if "critical_instructions" in data:
|
||||||
|
module_xml += "\t<critical_instructions><![CDATA[" + str(data["critical_instructions"]) + "]]></critical_instructions>\n"
|
||||||
|
if "warning_instructions" in data:
|
||||||
|
module_xml += "\t<warning_instructions><![CDATA[" + str(data["warning_instructions"]) + "]]></warning_instructions>\n"
|
||||||
|
if "unknown_instructions" in data:
|
||||||
|
module_xml += "\t<unknown_instructions><![CDATA[" + str(data["unknown_instructions"]) + "]]></unknown_instructions>\n"
|
||||||
|
if "quiet" in data:
|
||||||
|
module_xml += "\t<quiet><![CDATA[" + str(data["quiet"]) + "]]></quiet>\n"
|
||||||
|
if "module_ff_interval" in data:
|
||||||
|
module_xml += "\t<module_ff_interval><![CDATA[" + str(data["module_ff_interval"]) + "]]></module_ff_interval>\n"
|
||||||
|
if "crontab" in data:
|
||||||
|
module_xml += "\t<crontab><![CDATA[" + str(data["crontab"]) + "]]></crontab>\n"
|
||||||
|
if "min_ff_event_normal" in data:
|
||||||
|
module_xml += "\t<min_ff_event_normal><![CDATA[" + str(data["min_ff_event_normal"]) + "]]></min_ff_event_normal>\n"
|
||||||
|
if "min_ff_event_warning" in data:
|
||||||
|
module_xml += "\t<min_ff_event_warning><![CDATA[" + str(data["min_ff_event_warning"]) + "]]></min_ff_event_warning>\n"
|
||||||
|
if "min_ff_event_critical" in data:
|
||||||
|
module_xml += "\t<min_ff_event_critical><![CDATA[" + str(data["min_ff_event_critical"]) + "]]></min_ff_event_critical>\n"
|
||||||
|
if "ff_type" in data:
|
||||||
|
module_xml += "\t<ff_type><![CDATA[" + str(data["ff_type"]) + "]]></ff_type>\n"
|
||||||
|
if "ff_timeout" in data:
|
||||||
|
module_xml += "\t<ff_timeout><![CDATA[" + str(data["ff_timeout"]) + "]]></ff_timeout>\n"
|
||||||
|
if "each_ff" in data:
|
||||||
|
module_xml += "\t<each_ff><![CDATA[" + str(data["each_ff"]) + "]]></each_ff>\n"
|
||||||
|
if "module_parent_unlink" in data:
|
||||||
|
module_xml += "\t<module_parent_unlink><![CDATA[" + str(data["parent_unlink"]) + "]]></module_parent_unlink>\n"
|
||||||
|
if "global_alerts" in data:
|
||||||
|
for alert in data["alert"]:
|
||||||
|
module_xml += "\t<alert_template><![CDATA[" + alert + "]]></alert_template>\n"
|
||||||
|
module_xml += "</module>\n"
|
||||||
|
|
||||||
|
if print_flag:
|
||||||
|
print (module_xml)
|
||||||
|
|
||||||
|
return (module_xml)
|
||||||
|
|
||||||
|
def check_antivirus_status():
|
||||||
|
try:
|
||||||
|
wmi_obj = wmi.WMI(namespace="root/SecurityCenter2")
|
||||||
|
antivirus_products = wmi_obj.query("SELECT * FROM AntivirusProduct")
|
||||||
|
|
||||||
|
for product in antivirus_products:
|
||||||
|
display_name = product.displayName
|
||||||
|
product_state = product.productState
|
||||||
|
product_state_hex = hex(product_state)
|
||||||
|
last_update = product.timestamp
|
||||||
|
atv_status = int(product_state_hex[3:5])
|
||||||
|
atv_uptodate = int(product_state_hex[5:7])
|
||||||
|
atv_status = 1 if atv_status in [10, 11] else 0
|
||||||
|
atv_uptodate = 1 if atv_uptodate in [00,] else 0
|
||||||
|
|
||||||
|
#print(f"{display_name}, product_state: {product_state}, product_state_hex: {product_state_hex}, last_update: {last_update}, status: {atv_status}, uptodate: {atv_uptodate}")
|
||||||
|
modules.append({
|
||||||
|
"name" : f"{display_name} Antivirus status",
|
||||||
|
"type" : "generic_proc",
|
||||||
|
"value": atv_status,
|
||||||
|
"module_group": "security",
|
||||||
|
"desc" : f"{display_name} state: {product_state}, last update: {last_update}",
|
||||||
|
})
|
||||||
|
modules.append({
|
||||||
|
"name" : f"{display_name} Antivirus up to date",
|
||||||
|
"type" : "generic_proc",
|
||||||
|
"value": atv_uptodate,
|
||||||
|
"module_group": "security",
|
||||||
|
"desc" : f"{display_name} state: {product_state}, last update: {last_update}",
|
||||||
|
})
|
||||||
|
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error check antivirus: {e}", file=sys.stderr)
|
||||||
|
|
||||||
|
def is_lock_screen_enabled():
|
||||||
|
try:
|
||||||
|
# Open the registry key
|
||||||
|
key_path = r"SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System"
|
||||||
|
with winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, key_path) as key:
|
||||||
|
# Query the value of the DisableLockScreen key
|
||||||
|
value_name = "DisableLockScreen"
|
||||||
|
value, _ = winreg.QueryValueEx(key, value_name)
|
||||||
|
|
||||||
|
# Check if the lock screen is enabled (0 means enabled)
|
||||||
|
status = value == 0
|
||||||
|
if status == False: return status
|
||||||
|
|
||||||
|
except FileNotFoundError:
|
||||||
|
# If the registry key or value is not found, consider it as enabled
|
||||||
|
status = True
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error check lockscreen: {e}", file=sys.stderr)
|
||||||
|
status = False
|
||||||
|
|
||||||
|
try:
|
||||||
|
# Define the registry key for the lock screen settings
|
||||||
|
reg_key_path = r"SOFTWARE\Policies\Microsoft\Windows\Personalization"
|
||||||
|
reg_key = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, reg_key_path)
|
||||||
|
|
||||||
|
# Query the "NoLockScreen" DWORD value
|
||||||
|
value_name = "NoLockScreen"
|
||||||
|
value, _ = winreg.QueryValueEx(reg_key, value_name)
|
||||||
|
|
||||||
|
# Check if the "NoLockScreen" value is 0 (enabled)
|
||||||
|
status = value == 0
|
||||||
|
if status == False: return status
|
||||||
|
|
||||||
|
except FileNotFoundError:
|
||||||
|
# If the registry key or value is not found, consider it as enabled
|
||||||
|
status = True
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error check lockscreen: {e}", file=sys.stderr)
|
||||||
|
status = False
|
||||||
|
|
||||||
|
return status
|
||||||
|
|
||||||
|
def check_locksreen_enables():
|
||||||
|
status = is_lock_screen_enabled()
|
||||||
|
value = 1 if status == True else 0
|
||||||
|
|
||||||
|
modules.append({
|
||||||
|
"name" : "Lockscreen status",
|
||||||
|
"type" : "generic_proc",
|
||||||
|
"value": value,
|
||||||
|
"module_group": "security",
|
||||||
|
"desc" : f"Check lockscreen enable",
|
||||||
|
})
|
||||||
|
|
||||||
|
def convert_to_human_readable_date(timestamp_str):
|
||||||
|
try:
|
||||||
|
# Parse the timestamp string without the time zone
|
||||||
|
timestamp = datetime.strptime(timestamp_str, '%Y%m%d%H%M%S')
|
||||||
|
|
||||||
|
# Convert to a human-readable format
|
||||||
|
human_readable_date = timestamp.strftime('%Y-%m-%d %H:%M:%S %z')
|
||||||
|
|
||||||
|
return human_readable_date.strip()
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error converting date: {e}", file=sys.stderr)
|
||||||
|
return None
|
||||||
|
|
||||||
|
def check_time_difference(timestamp, timedays=10):
|
||||||
|
try:
|
||||||
|
# Convert the timestamp string to a datetime object
|
||||||
|
given_timestamp = datetime.strptime(timestamp, '%Y-%m-%d %H:%M:%S')
|
||||||
|
|
||||||
|
# Get the current time
|
||||||
|
current_time = datetime.now()
|
||||||
|
|
||||||
|
#Calculate the time difference
|
||||||
|
time_difference = current_time - given_timestamp
|
||||||
|
|
||||||
|
# Check if the time difference is greater than one hour
|
||||||
|
if time_difference < timedelta(days=timedays):
|
||||||
|
return "1"
|
||||||
|
else:
|
||||||
|
return "0"
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error check time difference: {e}", file=sys.stderr)
|
||||||
|
return 0
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
def get_windows_update_info(limit=5):
|
||||||
|
try:
|
||||||
|
# Connect to the Win32_ReliabilityRecords class in the root/cimv2 namespace
|
||||||
|
wmi_conn = wmi.WMI()
|
||||||
|
|
||||||
|
# Query the Win32_ReliabilityRecords class for Windows Update information
|
||||||
|
query = "SELECT * FROM Win32_ReliabilityRecords WHERE sourcename = 'Microsoft-Windows-WindowsUpdateClient'"
|
||||||
|
result = wmi_conn.query(query)
|
||||||
|
|
||||||
|
# Extract relevant information and format output
|
||||||
|
update_info = [
|
||||||
|
{
|
||||||
|
"date": convert_to_human_readable_date(record.timegenerated.split('.')[0]),
|
||||||
|
"update": record.message
|
||||||
|
}
|
||||||
|
for record in result[:limit]
|
||||||
|
]
|
||||||
|
|
||||||
|
last_update_date=update_info[0]['date']
|
||||||
|
value=check_time_difference(last_update_date)
|
||||||
|
|
||||||
|
modules.append({
|
||||||
|
"name" : "Microsoft Update system status",
|
||||||
|
"type" : "generic_proc",
|
||||||
|
"value": value,
|
||||||
|
"module_group": "security",
|
||||||
|
"desc" : f"Check if system was updated in the last 10 days. last update: {last_update_date}",
|
||||||
|
})
|
||||||
|
return True
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error windows update check: {e}", file=sys.stderr)
|
||||||
|
return False
|
||||||
|
|
||||||
|
def is_firewall_enabled():
|
||||||
|
try:
|
||||||
|
# Run PowerShell command to check if the Windows Firewall is enabled
|
||||||
|
result = subprocess.run(
|
||||||
|
['powershell', 'Get-NetFirewallProfile |Select-Object profile, enabled | ConvertTo-Json'],
|
||||||
|
capture_output=True,
|
||||||
|
text=True
|
||||||
|
)
|
||||||
|
|
||||||
|
result_json= json.loads(result.stdout)
|
||||||
|
for profile in result_json:
|
||||||
|
modules.append({
|
||||||
|
"name" : f"Firewall profile: {profile['Profile']} status",
|
||||||
|
"type" : "generic_proc",
|
||||||
|
"value": profile["Enabled"],
|
||||||
|
"module_group": "security",
|
||||||
|
"desc" : f"Check if firewall profile {profile['Profile']} is enabled",
|
||||||
|
})
|
||||||
|
return True
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error firewall check: {e}", file=sys.stderr)
|
||||||
|
return False
|
||||||
|
|
||||||
|
def check_password_enforcement():
|
||||||
|
enforce_pass = 1
|
||||||
|
counter = 0
|
||||||
|
try:
|
||||||
|
# Connect to the WMI service
|
||||||
|
wmi_service = wmi.WMI()
|
||||||
|
|
||||||
|
# Query for user accounts
|
||||||
|
users = wmi_service.Win32_UserAccount()
|
||||||
|
|
||||||
|
# Check if each user enforces password
|
||||||
|
for user in users:
|
||||||
|
# username = user.Name
|
||||||
|
# password_required = user.PasswordRequired
|
||||||
|
if user.PasswordRequired == False :
|
||||||
|
enforce_pass = 0
|
||||||
|
counter += 1
|
||||||
|
#print(f"User: {username}, Password Required: {password_required}")
|
||||||
|
|
||||||
|
modules.append({
|
||||||
|
"name" : "All users enforced password",
|
||||||
|
"type" : "generic_proc",
|
||||||
|
"value": enforce_pass,
|
||||||
|
"module_group": "security",
|
||||||
|
"desc" : f"Check if all users has enforced password, not secure users = {counter}",
|
||||||
|
})
|
||||||
|
except Exception as e:
|
||||||
|
print(f"Error: {e}", file=sys.stderr)
|
||||||
|
print("Failed to check password enforcement for users.", file=sys.stderr)
|
||||||
|
|
||||||
|
|
||||||
|
def check_login_audit_policy():
|
||||||
|
try:
|
||||||
|
# Run the auditpol command to check the audit policy for Logon/Logoff
|
||||||
|
cmd_command = "auditpol /get /subcategory:Logon"
|
||||||
|
result = subprocess.run(cmd_command, shell=True, capture_output=True, text=True, check=True)
|
||||||
|
last_line = result.stdout.strip().split('\n')[-1]
|
||||||
|
cleaned_line = re.sub(' +', ' ', last_line)
|
||||||
|
|
||||||
|
# Interpret the result
|
||||||
|
if "Success and Failure" in result.stdout:
|
||||||
|
result = 1
|
||||||
|
elif "Aciertos y errores" in result.stdout:
|
||||||
|
result = 1
|
||||||
|
elif "No Auditing" in result.stdout:
|
||||||
|
result = 0
|
||||||
|
elif "Sin auditoría" in result.stdout:
|
||||||
|
result = 0
|
||||||
|
else:
|
||||||
|
print("Unable to determine audit policy for Logon/Logoff events.", file=sys.stderr)
|
||||||
|
result = 0
|
||||||
|
modules.append({
|
||||||
|
"name" : "Check logon event audited",
|
||||||
|
"type" : "generic_proc",
|
||||||
|
"value": result,
|
||||||
|
"module_group": "security",
|
||||||
|
"desc" : f"Check if the logon events audit log is enables, status:{cleaned_line}",
|
||||||
|
})
|
||||||
|
|
||||||
|
except subprocess.CalledProcessError as e:
|
||||||
|
print(f"Error: {e}")
|
||||||
|
print("Failed to check audit policy using auditpol command.", file=sys.stderr)
|
||||||
|
return
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
check_antivirus_status()
|
||||||
|
check_locksreen_enables()
|
||||||
|
get_windows_update_info()
|
||||||
|
is_firewall_enabled()
|
||||||
|
check_password_enforcement()
|
||||||
|
check_login_audit_policy()
|
||||||
|
|
||||||
|
for module in modules:
|
||||||
|
print_module(module, True)
|
||||||
|
|
||||||
|
|
||||||
|
# Windows Defender status values:
|
||||||
|
# 0: No action needed
|
||||||
|
# 266240: Antivirus is up to date
|
||||||
|
# 266256: Antivirus is out of date
|
||||||
|
# 266304: Antivirus is not monitoring
|
||||||
|
# 393216 (0x60000): No action needed.
|
||||||
|
# 393232 (0x60010): Antivirus is up to date.
|
||||||
|
# 393240 (0x60018): Antivirus is out of date.
|
||||||
|
# 393216 (0x60030): Antivirus is not monitoring.
|
||||||
|
# 397312 (0x61000): Antivirus is disabled.
|
||||||
|
|
||||||
|
# AVG Internet Security 2012 (from antivirusproduct WMI)
|
||||||
|
# 262144 (040000) = disabled and up to date
|
||||||
|
# 266240 (041000) = enabled and up to date
|
||||||
|
# AVG Internet Security 2012 (from firewallproduct WMI)
|
||||||
|
# 266256 (041010) = firewall enabled - (last two blocks not relevant it seems for firewall)
|
||||||
|
# 262160 (040010) = firewall disabled - (last two blocks not relevant it seems for firewall)
|
||||||
|
|
||||||
|
# Windows Defender
|
||||||
|
# 393472 (060100) = disabled and up to date
|
||||||
|
# 397584 (061110) = enabled and out of date
|
||||||
|
# 397568 (061100) = enabled and up to date
|
||||||
|
# Microsoft Security Essentials
|
||||||
|
# 397312 (061000) = enabled and up to date
|
||||||
|
# 393216 (060000) = disabled and up to date
|
@ -0,0 +1 @@
|
|||||||
|
WMI==1.5.1
|
@ -1,6 +1,6 @@
|
|||||||
# Fichero de configuracion base de agentes de Pandora
|
# Fichero de configuracion base de agentes de Pandora
|
||||||
# Base config file for Pandora agents
|
# Base config file for Pandora agents
|
||||||
# Version 7.0NG.774, AIX version
|
# Version 7.0NG.775, AIX version
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
# ==================
|
# ==================
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Fichero de configuracion base de agentes de Pandora
|
# Fichero de configuracion base de agentes de Pandora
|
||||||
# Base config file for Pandora agents
|
# Base config file for Pandora agents
|
||||||
# Version 7.0NG.774
|
# Version 7.0NG.775
|
||||||
# FreeBSD/IPSO version
|
# FreeBSD/IPSO version
|
||||||
# Licenced under GPL licence, 2003-2007 Sancho Lerena
|
# Licenced under GPL licence, 2003-2007 Sancho Lerena
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Fichero de configuracion base de agentes de Pandora
|
# Fichero de configuracion base de agentes de Pandora
|
||||||
# Base config file for Pandora agents
|
# Base config file for Pandora agents
|
||||||
# Version 7.0NG.774, HPUX Version
|
# Version 7.0NG.775, HPUX Version
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
# ==================
|
# ==================
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774
|
# Version 7.0NG.775
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# (c) 2003-2023 Pandora FMS
|
# (c) 2003-2023 Pandora FMS
|
||||||
# please visit http://pandora.sourceforge.net
|
# please visit http://pandora.sourceforge.net
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774
|
# Version 7.0NG.775
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# (c) 2003-2023 Pandora FMS
|
# (c) 2003-2023 Pandora FMS
|
||||||
# please visit http://pandora.sourceforge.net
|
# please visit http://pandora.sourceforge.net
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774
|
# Version 7.0NG.775
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# please visit http://pandora.sourceforge.net
|
# please visit http://pandora.sourceforge.net
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Fichero de configuracion base de agentes de Pandora
|
# Fichero de configuracion base de agentes de Pandora
|
||||||
# Base config file for Pandora agents
|
# Base config file for Pandora agents
|
||||||
# Version 7.0NG.774, Solaris version
|
# Version 7.0NG.775, Solaris version
|
||||||
|
|
||||||
# General Parameters
|
# General Parameters
|
||||||
# ==================
|
# ==================
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, AIX version
|
# Version 7.0NG.775, AIX version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
package: pandorafms-agent-unix
|
package: pandorafms-agent-unix
|
||||||
Version: 7.0NG.774-231214
|
Version: 7.0NG.775-240108
|
||||||
Architecture: all
|
Architecture: all
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Section: admin
|
Section: admin
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
pandora_version="7.0NG.774-231214"
|
pandora_version="7.0NG.775-240108"
|
||||||
|
|
||||||
echo "Test if you has the tools for to make the packages."
|
echo "Test if you has the tools for to make the packages."
|
||||||
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null
|
whereis dpkg-deb | cut -d":" -f2 | grep dpkg-deb > /dev/null
|
||||||
|
@ -31,7 +31,7 @@ fi
|
|||||||
if [ "$#" -ge 2 ]; then
|
if [ "$#" -ge 2 ]; then
|
||||||
VERSION="$2"
|
VERSION="$2"
|
||||||
else
|
else
|
||||||
VERSION="7.0NG.774"
|
VERSION="7.0NG.775"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Path for the generated DMG file
|
# Path for the generated DMG file
|
||||||
|
@ -19,11 +19,11 @@
|
|||||||
<choice id="com.pandorafms.pandorafms_src" visible="false">
|
<choice id="com.pandorafms.pandorafms_src" visible="false">
|
||||||
<pkg-ref id="com.pandorafms.pandorafms_src"/>
|
<pkg-ref id="com.pandorafms.pandorafms_src"/>
|
||||||
</choice>
|
</choice>
|
||||||
<pkg-ref id="com.pandorafms.pandorafms_src" version="7.0NG.774" onConclusion="none">pandorafms_src.pdk</pkg-ref>
|
<pkg-ref id="com.pandorafms.pandorafms_src" version="7.0NG.775" onConclusion="none">pandorafms_src.pdk</pkg-ref>
|
||||||
<choice id="com.pandorafms.pandorafms_uninstall" visible="true" customLocation="/Applications">
|
<choice id="com.pandorafms.pandorafms_uninstall" visible="true" customLocation="/Applications">
|
||||||
<pkg-ref id="com.pandorafms.pandorafms_uninstall"/>
|
<pkg-ref id="com.pandorafms.pandorafms_uninstall"/>
|
||||||
</choice>
|
</choice>
|
||||||
<pkg-ref id="com.pandorafms.pandorafms_uninstall" version="7.0NG.774" onConclusion="none">pandorafms_uninstall.pdk</pkg-ref>
|
<pkg-ref id="com.pandorafms.pandorafms_uninstall" version="7.0NG.775" onConclusion="none">pandorafms_uninstall.pdk</pkg-ref>
|
||||||
<!-- <installation-check script="check()" />
|
<!-- <installation-check script="check()" />
|
||||||
<script>
|
<script>
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
|
@ -5,9 +5,9 @@
|
|||||||
<key>CFBundleIconFile</key> <string>pandorafms.icns</string>
|
<key>CFBundleIconFile</key> <string>pandorafms.icns</string>
|
||||||
<key>CFBundleIdentifier</key> <string>com.pandorafms.pandorafms_uninstall</string>
|
<key>CFBundleIdentifier</key> <string>com.pandorafms.pandorafms_uninstall</string>
|
||||||
|
|
||||||
<key>CFBundleVersion</key> <string>7.0NG.774</string>
|
<key>CFBundleVersion</key> <string>7.0NG.775</string>
|
||||||
<key>CFBundleGetInfoString</key> <string>7.0NG.774 Pandora FMS on Aug 2020</string>
|
<key>CFBundleGetInfoString</key> <string>7.0NG.775 Pandora FMS on Aug 2020</string>
|
||||||
<key>CFBundleShortVersionString</key> <string>7.0NG.774</string>
|
<key>CFBundleShortVersionString</key> <string>7.0NG.775</string>
|
||||||
|
|
||||||
<key>NSPrincipalClass</key><string>NSApplication</string>
|
<key>NSPrincipalClass</key><string>NSApplication</string>
|
||||||
<key>NSMainNibFile</key><string>MainMenu</string>
|
<key>NSMainNibFile</key><string>MainMenu</string>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, GNU/Linux
|
# Version 7.0NG.775, GNU/Linux
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, FreeBSD Version
|
# Version 7.0NG.775, FreeBSD Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, HP-UX Version
|
# Version 7.0NG.775, HP-UX Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774
|
# Version 7.0NG.775
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2004-2023 Pandora FMS
|
# Copyright (c) 2004-2023 Pandora FMS
|
||||||
# https://pandorafms.com
|
# https://pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, GNU/Linux
|
# Version 7.0NG.775, GNU/Linux
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, NetBSD Version
|
# Version 7.0NG.775, NetBSD Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
# Base config file for Pandora FMS agents
|
# Base config file for Pandora FMS agents
|
||||||
# Version 7.0NG.774, Solaris Version
|
# Version 7.0NG.775, Solaris Version
|
||||||
# Licensed under GPL license v2,
|
# Licensed under GPL license v2,
|
||||||
# Copyright (c) 2003-2023 Pandora FMS
|
# Copyright (c) 2003-2023 Pandora FMS
|
||||||
# http://www.pandorafms.com
|
# http://www.pandorafms.com
|
||||||
|
@ -1038,8 +1038,8 @@ my $Sem = undef;
|
|||||||
# Semaphore used to control the number of threads
|
# Semaphore used to control the number of threads
|
||||||
my $ThreadSem = undef;
|
my $ThreadSem = undef;
|
||||||
|
|
||||||
use constant AGENT_VERSION => '7.0NG.774';
|
use constant AGENT_VERSION => '7.0NG.775';
|
||||||
use constant AGENT_BUILD => '231214';
|
use constant AGENT_BUILD => '240108';
|
||||||
|
|
||||||
# Agent log default file size maximum and instances
|
# Agent log default file size maximum and instances
|
||||||
use constant DEFAULT_MAX_LOG_SIZE => 600000;
|
use constant DEFAULT_MAX_LOG_SIZE => 600000;
|
||||||
|
@ -3,8 +3,8 @@
|
|||||||
#
|
#
|
||||||
%global __os_install_post %{nil}
|
%global __os_install_post %{nil}
|
||||||
%define name pandorafms_agent_linux
|
%define name pandorafms_agent_linux
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.775
|
||||||
%define release 231214
|
%define release 240108
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, PERL version
|
Summary: Pandora FMS Linux agent, PERL version
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
%global __os_install_post %{nil}
|
%global __os_install_post %{nil}
|
||||||
%define name pandorafms_agent_linux_bin
|
%define name pandorafms_agent_linux_bin
|
||||||
%define source_name pandorafms_agent_linux
|
%define source_name pandorafms_agent_linux
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.775
|
||||||
%define release 231214
|
%define release 240108
|
||||||
%define debug_package %{nil}
|
%define debug_package %{nil}
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, binary version
|
Summary: Pandora FMS Linux agent, binary version
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
%global __os_install_post %{nil}
|
%global __os_install_post %{nil}
|
||||||
%define name pandorafms_agent_linux_bin
|
%define name pandorafms_agent_linux_bin
|
||||||
%define source_name pandorafms_agent_linux
|
%define source_name pandorafms_agent_linux
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.775
|
||||||
%define release 231214
|
%define release 240108
|
||||||
%define debug_package %{nil}
|
%define debug_package %{nil}
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, binary version
|
Summary: Pandora FMS Linux agent, binary version
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
%global __os_install_post %{nil}
|
%global __os_install_post %{nil}
|
||||||
%define name pandorafms_agent_linux_bin
|
%define name pandorafms_agent_linux_bin
|
||||||
%define source_name pandorafms_agent_linux
|
%define source_name pandorafms_agent_linux
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.775
|
||||||
%define release 231214
|
%define release 240108
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, binary version
|
Summary: Pandora FMS Linux agent, binary version
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -3,8 +3,8 @@
|
|||||||
#
|
#
|
||||||
%global __os_install_post %{nil}
|
%global __os_install_post %{nil}
|
||||||
%define name pandorafms_agent_linux
|
%define name pandorafms_agent_linux
|
||||||
%define version 7.0NG.774
|
%define version 7.0NG.775
|
||||||
%define release 231214
|
%define release 240108
|
||||||
|
|
||||||
Summary: Pandora FMS Linux agent, PERL version
|
Summary: Pandora FMS Linux agent, PERL version
|
||||||
Name: %{name}
|
Name: %{name}
|
||||||
|
@ -9,8 +9,8 @@
|
|||||||
# Please see http://www.pandorafms.org. This code is licensed under GPL 2.0 license.
|
# Please see http://www.pandorafms.org. This code is licensed under GPL 2.0 license.
|
||||||
# **********************************************************************
|
# **********************************************************************
|
||||||
|
|
||||||
PI_VERSION="7.0NG.774"
|
PI_VERSION="7.0NG.775"
|
||||||
PI_BUILD="231214"
|
PI_BUILD="240108"
|
||||||
OS_NAME=`uname -s`
|
OS_NAME=`uname -s`
|
||||||
|
|
||||||
FORCE=0
|
FORCE=0
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# Base config file for Pandora FMS Windows Agent
|
# Base config file for Pandora FMS Windows Agent
|
||||||
# (c) 2006-2023 Pandora FMS
|
# (c) 2006-2023 Pandora FMS
|
||||||
# Version 7.0NG.774
|
# Version 7.0NG.775
|
||||||
# This program is Free Software, you can redistribute it and/or modify it
|
# This program is Free Software, you can redistribute it and/or modify it
|
||||||
# under the terms of the GNU General Public Licence as published by the Free Software
|
# under the terms of the GNU General Public Licence as published by the Free Software
|
||||||
# Foundation; either version 2 of the Licence or any later version
|
# Foundation; either version 2 of the Licence or any later version
|
||||||
@ -538,3 +538,8 @@ module_plugin "%PROGRAMFILES%\Pandora_Agent\util\autodiscover.exe" --default
|
|||||||
#module_regexp C:\server\logs\xserver.log
|
#module_regexp C:\server\logs\xserver.log
|
||||||
#module_pattern .*
|
#module_pattern .*
|
||||||
#module_end
|
#module_end
|
||||||
|
|
||||||
|
# Pandora basic security check plugin for windows.
|
||||||
|
#module_begin
|
||||||
|
#module_plugin "%PROGRAMFILES%\Pandora_Agent\util\pandora_security_win.exe"
|
||||||
|
#module_end
|
||||||
|
3
pandora_agents/win32/bin/util/pandora_security_win.exe
Executable file
3
pandora_agents/win32/bin/util/pandora_security_win.exe
Executable file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:c58891fbd16bf80f288e0ff4751801aa02dbf4e6c914625b4d49a364c7e0b511
|
||||||
|
size 7829249
|
@ -3,7 +3,7 @@ AllowLanguageSelection
|
|||||||
{Yes}
|
{Yes}
|
||||||
|
|
||||||
AppName
|
AppName
|
||||||
{Pandora FMS Windows Agent v7.0NG.774}
|
{Pandora FMS Windows Agent v7.0NG.775}
|
||||||
|
|
||||||
ApplicationID
|
ApplicationID
|
||||||
{17E3D2CF-CA02-406B-8A80-9D31C17BD08F}
|
{17E3D2CF-CA02-406B-8A80-9D31C17BD08F}
|
||||||
@ -186,7 +186,7 @@ UpgradeApplicationID
|
|||||||
{}
|
{}
|
||||||
|
|
||||||
Version
|
Version
|
||||||
{231214}
|
{240108}
|
||||||
|
|
||||||
ViewReadme
|
ViewReadme
|
||||||
{Yes}
|
{Yes}
|
||||||
|
@ -30,7 +30,7 @@ using namespace Pandora;
|
|||||||
using namespace Pandora_Strutils;
|
using namespace Pandora_Strutils;
|
||||||
|
|
||||||
#define PATH_SIZE _MAX_PATH+1
|
#define PATH_SIZE _MAX_PATH+1
|
||||||
#define PANDORA_VERSION ("7.0NG.774 Build 231214")
|
#define PANDORA_VERSION ("7.0NG.775 Build 240108")
|
||||||
|
|
||||||
string pandora_path;
|
string pandora_path;
|
||||||
string pandora_dir;
|
string pandora_dir;
|
||||||
|
@ -11,7 +11,7 @@ BEGIN
|
|||||||
VALUE "LegalCopyright", "Pandora FMS"
|
VALUE "LegalCopyright", "Pandora FMS"
|
||||||
VALUE "OriginalFilename", "PandoraAgent.exe"
|
VALUE "OriginalFilename", "PandoraAgent.exe"
|
||||||
VALUE "ProductName", "Pandora FMS Windows Agent"
|
VALUE "ProductName", "Pandora FMS Windows Agent"
|
||||||
VALUE "ProductVersion", "(7.0NG.774(Build 231214))"
|
VALUE "ProductVersion", "(7.0NG.775(Build 240108))"
|
||||||
VALUE "FileVersion", "1.0.0.0"
|
VALUE "FileVersion", "1.0.0.0"
|
||||||
END
|
END
|
||||||
END
|
END
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
package: pandorafms-console
|
package: pandorafms-console
|
||||||
Version: 7.0NG.774-231214
|
Version: 7.0NG.775-240108
|
||||||
Architecture: all
|
Architecture: all
|
||||||
Priority: optional
|
Priority: optional
|
||||||
Section: admin
|
Section: admin
|
||||||
|
@ -14,7 +14,7 @@
|
|||||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
# GNU General Public License for more details.
|
# GNU General Public License for more details.
|
||||||
|
|
||||||
pandora_version="7.0NG.774-231214"
|
pandora_version="7.0NG.775-240108"
|
||||||
|
|
||||||
package_pear=0
|
package_pear=0
|
||||||
package_pandora=1
|
package_pandora=1
|
||||||
|
@ -52,7 +52,9 @@ function agents_modules_load_js()
|
|||||||
max_width = width;
|
max_width = width;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
loadRecursionGroups();
|
||||||
|
|
||||||
$.each($('.th_class_module_r'), function (i, elem) {
|
$.each($('.th_class_module_r'), function (i, elem) {
|
||||||
id = $(elem).attr('id').replace('th_module_r_', '');
|
id = $(elem).attr('id').replace('th_module_r_', '');
|
||||||
$("#th_module_r_" + id).height(($("#div_module_r_" + id).width() + 10) + 'px');
|
$("#th_module_r_" + id).height(($("#div_module_r_" + id).width() + 10) + 'px');
|
||||||
@ -139,29 +141,7 @@ function agents_modules_load_js()
|
|||||||
});
|
});
|
||||||
|
|
||||||
$("#checkbox-recursion").change (function () {
|
$("#checkbox-recursion").change (function () {
|
||||||
jQuery.post ("ajax.php",
|
loadRecursionGroups();
|
||||||
{"page" : "operation/agentes/ver_agente",
|
|
||||||
"get_agents_group_json" : 1,
|
|
||||||
"id_group" : $("#group_id").val(),
|
|
||||||
"privilege" : "AW",
|
|
||||||
"keys_prefix" : "_",
|
|
||||||
"recursion" : $('#checkbox-recursion').is(':checked')
|
|
||||||
},
|
|
||||||
function (data, status) {
|
|
||||||
$("#id_agents2").html('');
|
|
||||||
$("#module").html('');
|
|
||||||
jQuery.each (data, function (id, value) {
|
|
||||||
// Remove keys_prefix from the index
|
|
||||||
id = id.substring(1);
|
|
||||||
option = $("<option></option>")
|
|
||||||
.attr ("value", value["id_agente"])
|
|
||||||
.html (value["alias"]);
|
|
||||||
$("#id_agents").append (option);
|
|
||||||
$("#id_agents2").append (option);
|
|
||||||
});
|
|
||||||
},
|
|
||||||
"json"
|
|
||||||
);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
$("#modulegroup").change (function () {
|
$("#modulegroup").change (function () {
|
||||||
@ -265,6 +245,33 @@ function agents_modules_load_js()
|
|||||||
f.action = "index.php?sec=view&sec2=extensions/agents_modules";
|
f.action = "index.php?sec=view&sec2=extensions/agents_modules";
|
||||||
$('#filter_form').submit();
|
$('#filter_form').submit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function loadRecursionGroups () {
|
||||||
|
jQuery.post ("ajax.php",
|
||||||
|
{"page" : "operation/agentes/ver_agente",
|
||||||
|
"get_agents_group_json" : 1,
|
||||||
|
"id_group" : $("#group_id").val(),
|
||||||
|
"privilege" : "AW",
|
||||||
|
"keys_prefix" : "_",
|
||||||
|
"recursion" : $('#checkbox-recursion').is(':checked')
|
||||||
|
},
|
||||||
|
function (data, status) {
|
||||||
|
$("#id_agents2").html('');
|
||||||
|
$("#module").html('');
|
||||||
|
jQuery.each (data, function (id, value) {
|
||||||
|
// Remove keys_prefix from the index
|
||||||
|
id = id.substring(1);
|
||||||
|
option = $("<option></option>")
|
||||||
|
.attr ("value", value["id_agente"])
|
||||||
|
.html (value["alias"]);
|
||||||
|
$("#id_agents").append (option);
|
||||||
|
$("#id_agents2").append (option);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
"json"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
/* <![CDATA[ */
|
/* <![CDATA[ */
|
||||||
function export_csv() {
|
function export_csv() {
|
||||||
let group_id = $('#group_id option:selected').val();
|
let group_id = $('#group_id option:selected').val();
|
||||||
@ -460,7 +467,7 @@ function mainAgentsModules()
|
|||||||
|
|
||||||
$filter_groups .= html_print_label_input_block(
|
$filter_groups .= html_print_label_input_block(
|
||||||
__('Recursion'),
|
__('Recursion'),
|
||||||
html_print_checkbox_switch('recursion', 1, 0, true),
|
html_print_checkbox_switch('recursion', 1, $recursion, true),
|
||||||
[
|
[
|
||||||
'div_class' => 'add-input-reverse',
|
'div_class' => 'add-input-reverse',
|
||||||
'label_class' => 'label-thin',
|
'label_class' => 'label-thin',
|
||||||
@ -720,6 +727,13 @@ function mainAgentsModules()
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$group_id_for_agents_search = $group_id;
|
||||||
|
if ($group_id > 0) {
|
||||||
|
if ($recursion) {
|
||||||
|
$group_id_for_agents_search = groups_get_children_ids($group_id, true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (isset($agents_id[0]) === true && $agents_id[0] != -1) {
|
if (isset($agents_id[0]) === true && $agents_id[0] != -1) {
|
||||||
$agents = $agents_id;
|
$agents = $agents_id;
|
||||||
} else {
|
} else {
|
||||||
@ -727,7 +741,7 @@ function mainAgentsModules()
|
|||||||
$agents = $full_agents_id;
|
$agents = $full_agents_id;
|
||||||
} else {
|
} else {
|
||||||
$agents = '';
|
$agents = '';
|
||||||
$agents = agents_get_group_agents($group_id, ['disabled' => 0]);
|
$agents = agents_get_group_agents($group_id_for_agents_search, ['disabled' => 0]);
|
||||||
$agents = array_keys($agents);
|
$agents = array_keys($agents);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -860,10 +874,7 @@ function mainAgentsModules()
|
|||||||
|
|
||||||
if ($group_id > 0) {
|
if ($group_id > 0) {
|
||||||
if ($recursion) {
|
if ($recursion) {
|
||||||
$filter_groups['id_grupo'] = array_merge(
|
$filter_groups['id_grupo'] = groups_get_children_ids($group_id, true);
|
||||||
$group_id,
|
|
||||||
groups_get_children_ids($group_id, true)
|
|
||||||
);
|
|
||||||
} else {
|
} else {
|
||||||
$filter_groups['id_grupo'] = $group_id;
|
$filter_groups['id_grupo'] = $group_id;
|
||||||
}
|
}
|
||||||
@ -880,7 +891,7 @@ function mainAgentsModules()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
echo '<table cellpadding="4" cellspacing="4" border="0" class="info_table mrgn_btn_20px">';
|
echo '<table cellpadding="4" cellspacing="4" border="0" class="info_table mrgn_btn_20px" id="agents_modules_table">';
|
||||||
|
|
||||||
echo '<tr>';
|
echo '<tr>';
|
||||||
|
|
||||||
@ -1007,7 +1018,7 @@ function mainAgentsModules()
|
|||||||
echo "<td class='center' style='text-align:left;'>";
|
echo "<td class='center' style='text-align:left;'>";
|
||||||
$win_handle = dechex(crc32($module_id.$module['name']));
|
$win_handle = dechex(crc32($module_id.$module['name']));
|
||||||
$graph_type = return_graphtype(modules_get_agentmodule_type($module_id));
|
$graph_type = return_graphtype(modules_get_agentmodule_type($module_id));
|
||||||
$link = "winopeng_var('".'operation/agentes/stat_win.php?'."type=$graph_type&".'period='.SECONDS_1DAY.'&'.'id='.$module_id.'&'.'refresh='.SECONDS_10MINUTES."', 'day_".$win_handle."', 800, 480)";
|
$link = "winopeng_var('".'operation/agentes/stat_win.php?'."type=$graph_type&".'period='.SECONDS_1DAY.'&id='.$module_id.'&period_graph=0&refresh='.SECONDS_10MINUTES."', 'day_".$win_handle."', 800, 480)";
|
||||||
|
|
||||||
echo '<a href="javascript:'.$link.'">';
|
echo '<a href="javascript:'.$link.'">';
|
||||||
|
|
||||||
|
@ -1,286 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Pandora FMS - https://pandorafms.com
|
|
||||||
// ==================================================
|
|
||||||
// Copyright (c) 2005-2023 Pandora FMS
|
|
||||||
// Please see https://pandorafms.com/community/ for full contribution list
|
|
||||||
// This program is free software; you can redistribute it and/or
|
|
||||||
// modify it under the terms of the GNU General Public License
|
|
||||||
// as published by the Free Software Foundation; version 2
|
|
||||||
// This program is distributed in the hope that it will be useful,
|
|
||||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
// GNU General Public License for more details.
|
|
||||||
function pandora_files_repo_install()
|
|
||||||
{
|
|
||||||
global $config;
|
|
||||||
|
|
||||||
if (isset($config['files_repo_installed']) && $config['files_repo_installed'] == 1) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
$full_extensions_dir = $config['homedir'].'/'.EXTENSIONS_DIR.'/';
|
|
||||||
$full_sql_dir = $full_extensions_dir.'files_repo/sql/';
|
|
||||||
|
|
||||||
$file_path = '';
|
|
||||||
switch ($config['dbtype']) {
|
|
||||||
case 'mysql':
|
|
||||||
$file_path = $full_sql_dir.'files_repo.sql';
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'postgresql':
|
|
||||||
$file_path = $full_sql_dir.'files_repo.postgreSQL.sql';
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'oracle':
|
|
||||||
$file_path = $full_sql_dir.'files_repo.oracle.sql';
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!empty($file_path)) {
|
|
||||||
$result = db_process_file($file_path);
|
|
||||||
|
|
||||||
if ($result) {
|
|
||||||
// Configuration values
|
|
||||||
$values = [
|
|
||||||
'token' => 'files_repo_installed',
|
|
||||||
'value' => 1,
|
|
||||||
];
|
|
||||||
db_process_sql_insert('tconfig', $values);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function pandora_files_repo_uninstall()
|
|
||||||
{
|
|
||||||
global $config;
|
|
||||||
|
|
||||||
switch ($config['dbtype']) {
|
|
||||||
case 'mysql':
|
|
||||||
db_process_sql('DROP TABLE `tfiles_repo_group`');
|
|
||||||
db_process_sql('DROP TABLE `tfiles_repo`');
|
|
||||||
db_process_sql(
|
|
||||||
'DELETE FROM `tconfig`
|
|
||||||
WHERE `token` LIKE "files_repo_%"'
|
|
||||||
);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'postgresql':
|
|
||||||
db_process_sql('DROP TABLE "tfiles_repo_group"');
|
|
||||||
db_process_sql('DROP TABLE "tfiles_repo"');
|
|
||||||
db_process_sql(
|
|
||||||
'DELETE FROM "tconfig"
|
|
||||||
WHERE "token" LIKE \'files_repo_%\''
|
|
||||||
);
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'oracle':
|
|
||||||
db_process_sql('DROP TRIGGER "tfiles_repo_group_inc"');
|
|
||||||
db_process_sql('DROP SEQUENCE "tfiles_repo_group_s"');
|
|
||||||
db_process_sql('DROP TABLE "tfiles_repo_group"');
|
|
||||||
db_process_sql('DROP TRIGGER "tfiles_repo_inc"');
|
|
||||||
db_process_sql('DROP SEQUENCE "tfiles_repo_s"');
|
|
||||||
db_process_sql('DROP TABLE "tfiles_repo"');
|
|
||||||
db_process_sql(
|
|
||||||
'DELETE FROM tconfig
|
|
||||||
WHERE token LIKE \'files_repo_%\''
|
|
||||||
);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!empty($config['attachment_store'])) {
|
|
||||||
delete_dir($config['attachment_store'].'/files_repo');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function pandora_files_repo_godmode()
|
|
||||||
{
|
|
||||||
global $config;
|
|
||||||
|
|
||||||
if (!isset($config['files_repo_installed']) || !$config['files_repo_installed']) {
|
|
||||||
ui_print_error_message(__('Extension not installed'));
|
|
||||||
}
|
|
||||||
|
|
||||||
// ACL Check
|
|
||||||
check_login();
|
|
||||||
if (! check_acl($config['id_user'], 0, 'PM')) {
|
|
||||||
db_pandora_audit(
|
|
||||||
AUDIT_LOG_ACL_VIOLATION,
|
|
||||||
'Trying to access to Files repository'
|
|
||||||
);
|
|
||||||
include 'general/noaccess.php';
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Header tabs.
|
|
||||||
$godmode['text'] = '<a href="index.php?sec=godmode/extensions&sec2=extensions/files_repo">'.html_print_image('images/configuration@svg.svg', true, ['title' => __('Administration view'), 'class' => 'main_menu_icon invert_filter']).'</a>';
|
|
||||||
$godmode['godmode'] = 1;
|
|
||||||
$godmode['active'] = 1;
|
|
||||||
|
|
||||||
$operation['text'] = '<a href="index.php?sec=extensions&sec2=extensions/files_repo">'.html_print_image('images/see-details@svg.svg', true, ['title' => __('Operation view'), 'class' => 'main_menu_icon invert_filter']).'</a>';
|
|
||||||
$operation['operation'] = 1;
|
|
||||||
|
|
||||||
$onheader = [
|
|
||||||
'godmode' => $godmode,
|
|
||||||
'operation' => $operation,
|
|
||||||
];
|
|
||||||
|
|
||||||
// Header.
|
|
||||||
ui_print_standard_header(
|
|
||||||
__('Extensions'),
|
|
||||||
'images/extensions.png',
|
|
||||||
false,
|
|
||||||
'',
|
|
||||||
true,
|
|
||||||
$onheader,
|
|
||||||
[
|
|
||||||
[
|
|
||||||
'link' => '',
|
|
||||||
'label' => __('Admin tools'),
|
|
||||||
],
|
|
||||||
[
|
|
||||||
'link' => '',
|
|
||||||
'label' => __('Extension manager'),
|
|
||||||
],
|
|
||||||
[
|
|
||||||
'link' => '',
|
|
||||||
'label' => __('Files repository manager'),
|
|
||||||
],
|
|
||||||
]
|
|
||||||
);
|
|
||||||
|
|
||||||
$full_extensions_dir = $config['homedir'].'/'.EXTENSIONS_DIR.'/';
|
|
||||||
include_once $full_extensions_dir.'files_repo/functions_files_repo.php';
|
|
||||||
|
|
||||||
// Directory files_repo check.
|
|
||||||
if (!files_repo_check_directory(true)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
$server_content_length = 0;
|
|
||||||
if (isset($_SERVER['CONTENT_LENGTH'])) {
|
|
||||||
$server_content_length = $_SERVER['CONTENT_LENGTH'];
|
|
||||||
}
|
|
||||||
|
|
||||||
// Check for an anoying error that causes the $_POST and $_FILES arrays.
|
|
||||||
// were empty if the file is larger than the post_max_size.
|
|
||||||
if (intval($server_content_length) > 0 && empty($_POST)) {
|
|
||||||
ui_print_error_message(__('Problem uploading. Please check this PHP runtime variable values: <pre> post_max_size (currently '.ini_get('post_max_size').')</pre>'));
|
|
||||||
}
|
|
||||||
|
|
||||||
// GET and POST parameters.
|
|
||||||
$file_id = (int) get_parameter('file_id');
|
|
||||||
$add_file = (bool) get_parameter('add_file');
|
|
||||||
$update_file = (bool) get_parameter('update_file');
|
|
||||||
$delete_file = (bool) get_parameter('delete');
|
|
||||||
|
|
||||||
// File add or update.
|
|
||||||
if ($add_file || ($update_file && $file_id > 0)) {
|
|
||||||
$groups = get_parameter('groups', []);
|
|
||||||
$public = (bool) get_parameter('public');
|
|
||||||
$description = io_safe_output((string) get_parameter('description'));
|
|
||||||
if (mb_strlen($description, 'UTF-8') > 200) {
|
|
||||||
$description = mb_substr($description, 0, 200, 'UTF-8');
|
|
||||||
}
|
|
||||||
|
|
||||||
$description = io_safe_input($description);
|
|
||||||
|
|
||||||
if ($add_file) {
|
|
||||||
$result = files_repo_add_file('upfile', $description, $groups, $public);
|
|
||||||
} else if ($update_file) {
|
|
||||||
$result = files_repo_update_file($file_id, $description, $groups, $public);
|
|
||||||
$file_id = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($result['status'] == false) {
|
|
||||||
ui_print_error_message($result['message']);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// File delete.
|
|
||||||
if ($delete_file && $file_id > 0) {
|
|
||||||
$result = files_repo_delete_file($file_id);
|
|
||||||
if ($result !== -1) {
|
|
||||||
ui_print_result_message($result, __('Successfully deleted'), __('Could not be deleted'));
|
|
||||||
}
|
|
||||||
|
|
||||||
$file_id = 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// FORM.
|
|
||||||
include $full_extensions_dir.'files_repo/files_repo_form.php';
|
|
||||||
if (!$file_id) {
|
|
||||||
// LIST.
|
|
||||||
$manage = true;
|
|
||||||
include $full_extensions_dir.'files_repo/files_repo_list.php';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function pandora_files_repo_operation()
|
|
||||||
{
|
|
||||||
global $config;
|
|
||||||
|
|
||||||
// Header tabs.
|
|
||||||
$onheader = [];
|
|
||||||
if (check_acl($config['id_user'], 0, 'PM')) {
|
|
||||||
$godmode['text'] = '<a href="index.php?sec=godmode/extensions&sec2=extensions/files_repo">'.html_print_image('images/configuration@svg.svg', true, ['title' => __('Administration view'), 'class' => 'main_menu_icon invert_filter']).'</a>';
|
|
||||||
$godmode['godmode'] = 1;
|
|
||||||
|
|
||||||
$operation['text'] = '<a href="index.php?sec=extensions&sec2=extensions/files_repo">'.html_print_image('images/see-details@svg.svg', true, ['title' => __('Operation view'), 'class' => 'main_menu_icon invert_filter']).'</a>';
|
|
||||||
$operation['operation'] = 1;
|
|
||||||
$operation['active'] = 1;
|
|
||||||
|
|
||||||
$onheader = [
|
|
||||||
'godmode' => $godmode,
|
|
||||||
'operation' => $operation,
|
|
||||||
];
|
|
||||||
}
|
|
||||||
|
|
||||||
// Header.
|
|
||||||
ui_print_standard_header(
|
|
||||||
__('Files repository'),
|
|
||||||
'images/extensions.png',
|
|
||||||
false,
|
|
||||||
'',
|
|
||||||
false,
|
|
||||||
$onheader,
|
|
||||||
[
|
|
||||||
[
|
|
||||||
'link' => '',
|
|
||||||
'label' => __('Admin tools'),
|
|
||||||
],
|
|
||||||
[
|
|
||||||
'link' => '',
|
|
||||||
'label' => __('Extension manager'),
|
|
||||||
],
|
|
||||||
[
|
|
||||||
'link' => '',
|
|
||||||
'label' => __('Files repository'),
|
|
||||||
],
|
|
||||||
]
|
|
||||||
);
|
|
||||||
|
|
||||||
$full_extensions_dir = $config['homedir'].'/'.EXTENSIONS_DIR.'/';
|
|
||||||
include_once $full_extensions_dir.'files_repo/functions_files_repo.php';
|
|
||||||
|
|
||||||
// Directory files_repo check.
|
|
||||||
if (!files_repo_check_directory(true)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
// LIST.
|
|
||||||
$full_extensions_dir = $config['homedir'].'/'.EXTENSIONS_DIR.'/';
|
|
||||||
|
|
||||||
include $full_extensions_dir.'files_repo/files_repo_list.php';
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
extensions_add_operation_menu_option(__('Files repository'), null, null, 'v1r1');
|
|
||||||
extensions_add_main_function('pandora_files_repo_operation');
|
|
||||||
extensions_add_godmode_menu_option(__('Files repository manager'), 'PM', null, null, 'v1r1');
|
|
||||||
extensions_add_godmode_function('pandora_files_repo_godmode');
|
|
||||||
|
|
||||||
pandora_files_repo_install();
|
|
@ -1,168 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
// Pandora FMS - https://pandorafms.com
|
|
||||||
// ==================================================
|
|
||||||
// Copyright (c) 2005-2023 Pandora FMS
|
|
||||||
// Please see https://pandorafms.com/community/ for full contribution list
|
|
||||||
// This program is free software; you can redistribute it and/or
|
|
||||||
// modify it under the terms of the GNU General Public License
|
|
||||||
// as published by the Free Software Foundation; version 2
|
|
||||||
// This program is distributed in the hope that it will be useful,
|
|
||||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
// GNU General Public License for more details.
|
|
||||||
global $config;
|
|
||||||
|
|
||||||
$full_extensions_dir = $config['homedir'].'/'.EXTENSIONS_DIR.'/';
|
|
||||||
require_once $full_extensions_dir.'files_repo/functions_files_repo.php';
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$offset = (int) get_parameter('offset');
|
|
||||||
$filter = [];
|
|
||||||
$filter['limit'] = $config['block_size'];
|
|
||||||
$filter['offset'] = $offset;
|
|
||||||
$filter['order'] = [
|
|
||||||
'field' => 'id',
|
|
||||||
'order' => 'DESC',
|
|
||||||
];
|
|
||||||
|
|
||||||
$files = files_repo_get_files($filter);
|
|
||||||
|
|
||||||
|
|
||||||
if (!empty($files)) {
|
|
||||||
if (!isset($manage)) {
|
|
||||||
$manage = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Pagination
|
|
||||||
if ($manage) {
|
|
||||||
$url = ui_get_full_url('index.php?sec=godmode/extensions&sec2=extensions/files_repo');
|
|
||||||
} else {
|
|
||||||
$url = ui_get_full_url('index.php?sec=extensions&sec2=extensions/files_repo');
|
|
||||||
}
|
|
||||||
|
|
||||||
$total_files = files_repo_get_files(false, true);
|
|
||||||
ui_pagination($total_files, $url, $offset);
|
|
||||||
|
|
||||||
$table = new stdClass();
|
|
||||||
$table->width = '100%';
|
|
||||||
$table->class = 'info_table';
|
|
||||||
$table->style = [];
|
|
||||||
$table->style[1] = 'max-width: 200px;';
|
|
||||||
$table->style[4] = 'text-align: center;';
|
|
||||||
$table->head = [];
|
|
||||||
$table->head[0] = __('Name');
|
|
||||||
$table->head[1] = __('Description');
|
|
||||||
$table->head[2] = __('Size');
|
|
||||||
$table->head[3] = __('Last modification');
|
|
||||||
$table->head[4] = '';
|
|
||||||
$table->data = [];
|
|
||||||
|
|
||||||
foreach ($files as $file_id => $file) {
|
|
||||||
$data = [];
|
|
||||||
|
|
||||||
// Prepare the filename for the get_file.php script
|
|
||||||
$document_root = str_replace(
|
|
||||||
'\\',
|
|
||||||
'/',
|
|
||||||
io_safe_output($_SERVER['DOCUMENT_ROOT'])
|
|
||||||
);
|
|
||||||
$file['location'] = str_replace(
|
|
||||||
'\\',
|
|
||||||
'/',
|
|
||||||
io_safe_output($file['location'])
|
|
||||||
);
|
|
||||||
$relative_path = str_replace($document_root, '', $file['location']);
|
|
||||||
$file_name = explode('/', $file['location']);
|
|
||||||
$file_decoded = $file_name[(count($file_name) - 1)];
|
|
||||||
$file_path = base64_encode($file_decoded);
|
|
||||||
$hash = md5($file_path.$config['server_unique_identifier']);
|
|
||||||
$url = ui_get_full_url(
|
|
||||||
'include/get_file.php?file='.urlencode($file_path).'&hash='.$hash
|
|
||||||
);
|
|
||||||
$date_format = ($config['date_format']) ? io_safe_output($config['date_format']) : 'F j, Y - H:m';
|
|
||||||
|
|
||||||
$data[0] = "<a href=\"$url\" target=\"_blank\">".$file['name'].'</a>';
|
|
||||||
// Name
|
|
||||||
$data[1] = ui_print_truncate_text(
|
|
||||||
$file['description'],
|
|
||||||
'description',
|
|
||||||
true,
|
|
||||||
true
|
|
||||||
);
|
|
||||||
// Description
|
|
||||||
$data[2] = ui_format_filesize($file['size']);
|
|
||||||
// Size
|
|
||||||
$data[3] = date($date_format, $file['mtime']);
|
|
||||||
// Last modification
|
|
||||||
// Public URL
|
|
||||||
$data[4] = '';
|
|
||||||
$table->cellclass[][4] = 'table_action_buttons';
|
|
||||||
if (!empty($file['hash'])) {
|
|
||||||
$public_url = ui_get_full_url(
|
|
||||||
EXTENSIONS_DIR.'/files_repo/files_repo_get_file.php?file='.$file['hash']
|
|
||||||
);
|
|
||||||
$message = __('Copy to clipboard').': Ctrl+C -> Enter';
|
|
||||||
$action = "window.prompt('$message', '$public_url');";
|
|
||||||
$data[4] .= "<a href=\"javascript:;\" onclick=\"$action\">";
|
|
||||||
$data[4] .= html_print_image(
|
|
||||||
'images/world.png',
|
|
||||||
true,
|
|
||||||
['title' => __('Public link')]
|
|
||||||
);
|
|
||||||
// Public link image
|
|
||||||
$data[4] .= '</a> ';
|
|
||||||
}
|
|
||||||
|
|
||||||
$data[4] .= "<a href=\"$url\" target=\"_blank\">";
|
|
||||||
$data[4] .= html_print_image(
|
|
||||||
'images/download.png',
|
|
||||||
true,
|
|
||||||
[
|
|
||||||
'title' => __('Download'),
|
|
||||||
'style' => 'padding:3px',
|
|
||||||
]
|
|
||||||
);
|
|
||||||
// Download image
|
|
||||||
$data[4] .= '</a>';
|
|
||||||
|
|
||||||
if ($manage) {
|
|
||||||
$config_url = ui_get_full_url(
|
|
||||||
'index.php?sec=godmode/extensions&sec2=extensions/files_repo&file_id='.$file_id
|
|
||||||
);
|
|
||||||
$data[4] .= "<a href=\"$config_url\">";
|
|
||||||
$data[4] .= html_print_image(
|
|
||||||
'images/edit.svg',
|
|
||||||
true,
|
|
||||||
[
|
|
||||||
'title' => __('Edit'),
|
|
||||||
'class' => 'main_menu_icon invert_filter',
|
|
||||||
]
|
|
||||||
);
|
|
||||||
// Edit image
|
|
||||||
$data[4] .= '</a>';
|
|
||||||
|
|
||||||
$delete_url = ui_get_full_url(
|
|
||||||
'index.php?sec=godmode/extensions&sec2=extensions/files_repo&delete=1&file_id='.$file_id
|
|
||||||
);
|
|
||||||
$data[4] .= " <a href=\"$delete_url\" onClick=\"if (!confirm('".__('Are you sure?')."')) return false;\">";
|
|
||||||
$data[4] .= html_print_image(
|
|
||||||
'images/delete.svg',
|
|
||||||
true,
|
|
||||||
[
|
|
||||||
'title' => __('Delete'),
|
|
||||||
'class' => 'main_menu_icon invert_filter',
|
|
||||||
]
|
|
||||||
);
|
|
||||||
// Delete image
|
|
||||||
$data[4] .= '</a>';
|
|
||||||
}
|
|
||||||
|
|
||||||
$table->data[] = $data;
|
|
||||||
}
|
|
||||||
|
|
||||||
html_print_table($table);
|
|
||||||
} else {
|
|
||||||
ui_print_info_message(__('No items'));
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
CREATE TABLE tfiles_repo (
|
|
||||||
id NUMBER(5, 0) NOT NULL PRIMARY KEY,
|
|
||||||
name VARCHAR2(255) NOT NULL,
|
|
||||||
description VARCHAR2(500) NULL,
|
|
||||||
hash VARCHAR2(8) NULL
|
|
||||||
);
|
|
||||||
CREATE SEQUENCE tfiles_repo_s INCREMENT BY 1 START WITH 1;
|
|
||||||
CREATE OR REPLACE TRIGGER tfiles_repo_inc BEFORE INSERT ON tfiles_repo REFERENCING NEW AS NEW FOR EACH ROW BEGIN SELECT tfiles_repo_s.nextval INTO :NEW.ID FROM dual; END;;
|
|
||||||
|
|
||||||
CREATE TABLE tfiles_repo_group (
|
|
||||||
id NUMBER(10, 0) NOT NULL PRIMARY KEY,
|
|
||||||
id_file NUMBER(5, 0) NOT NULL REFERENCES tfiles_repo(id) ON DELETE CASCADE,
|
|
||||||
id_group NUMBER(4, 0) NOT NULL
|
|
||||||
);
|
|
||||||
CREATE SEQUENCE tfiles_repo_group_s INCREMENT BY 1 START WITH 1;
|
|
||||||
CREATE OR REPLACE TRIGGER tfiles_repo_group_inc BEFORE INSERT ON tfiles_repo_group REFERENCING NEW AS NEW FOR EACH ROW BEGIN SELECT tfiles_repo_group_s.nextval INTO :NEW.ID FROM dual; END;;
|
|
@ -1,2 +0,0 @@
|
|||||||
CREATE TABLE "tfiles_repo" ("id" SERIAL NOT NULL PRIMARY KEY, "name" VARCHAR(255) NOT NULL, "description" VARCHAR(500) NULL default '', "hash" VARCHAR(8) NULL default '');
|
|
||||||
CREATE TABLE "tfiles_repo_group" ("id" SERIAL NOT NULL PRIMARY KEY, "id_file" INTEGER NOT NULL REFERENCES tfiles_repo("id") ON DELETE CASCADE, "id_group" INTEGER NOT NULL);
|
|
@ -1,15 +0,0 @@
|
|||||||
CREATE TABLE IF NOT EXISTS `tfiles_repo` (
|
|
||||||
`id` int(5) unsigned NOT NULL auto_increment,
|
|
||||||
`name` varchar(255) NOT NULL,
|
|
||||||
`description` varchar(500) NULL default '',
|
|
||||||
`hash` varchar(8) NULL default '',
|
|
||||||
PRIMARY KEY (`id`)
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS `tfiles_repo_group` (
|
|
||||||
`id` int(10) unsigned NOT NULL auto_increment,
|
|
||||||
`id_file` int(5) unsigned NOT NULL,
|
|
||||||
`id_group` int(4) unsigned NOT NULL,
|
|
||||||
PRIMARY KEY (`id`),
|
|
||||||
FOREIGN KEY (`id_file`) REFERENCES tfiles_repo(`id`) ON DELETE CASCADE
|
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
|
@ -345,6 +345,7 @@ function mainModuleGroups()
|
|||||||
$table = new StdClass();
|
$table = new StdClass();
|
||||||
$table->class = 'info_table';
|
$table->class = 'info_table';
|
||||||
$table->style[0] = 'font-weight: bolder; min-width: 230px;';
|
$table->style[0] = 'font-weight: bolder; min-width: 230px;';
|
||||||
|
$table->id = 'agent_group_module_group';
|
||||||
$table->width = '100%';
|
$table->width = '100%';
|
||||||
|
|
||||||
$head[0] = __('Groups');
|
$head[0] = __('Groups');
|
||||||
|
@ -1720,4 +1720,19 @@ include/functions_integriaims.php
|
|||||||
include/ajax/integria_incidents.ajax.php
|
include/ajax/integria_incidents.ajax.php
|
||||||
enterprise/operation/log/log_source.php
|
enterprise/operation/log/log_source.php
|
||||||
enterprise/include/class/LogSource.class.php
|
enterprise/include/class/LogSource.class.php
|
||||||
include/chart_generator.php
|
include/chart_generator.php
|
||||||
|
enterprise/extensions/translate_string.php
|
||||||
|
enterprise/extensions/translate_string/functions.php
|
||||||
|
enterprise/extensions/translate_string/translate_string.oracle.sql
|
||||||
|
enterprise/extensions/translate_string/translate_string.postgresql.sql
|
||||||
|
enterprise/extensions/translate_string/translate_string.sql
|
||||||
|
enterprise/extensions/translate_string
|
||||||
|
extensions/files_repo.php
|
||||||
|
extensions/files_repo/files_repo_form.php
|
||||||
|
extensions/files_repo/files_repo_get_file.php
|
||||||
|
extensions/files_repo/files_repo_list.php
|
||||||
|
extensions/files_repo/functions_files_repo.php
|
||||||
|
extensions/files_repo/sql/files_repo.oracle.sql
|
||||||
|
extensions/files_repo/sql/files_repo.postgreSQL.sql
|
||||||
|
extensions/files_repo/sql/files_repo.sql
|
||||||
|
extensions/files_repo
|
||||||
|
30
pandora_console/extras/demodata/agents/0-demo-agent.prd
Normal file
30
pandora_console/extras/demodata/agents/0-demo-agent.prd
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
[agent_data]
|
||||||
|
|
||||||
|
agents_number="1"
|
||||||
|
|
||||||
|
agent_name="demo-global-agent"
|
||||||
|
agent_alias="demo-global-agent"
|
||||||
|
|
||||||
|
group="Demo servers"
|
||||||
|
|
||||||
|
address_network="192.168.0.0/24"
|
||||||
|
|
||||||
|
os_name="Linux"
|
||||||
|
|
||||||
|
os_versions[]="Rocky Linux 9.2 (Blue Onyx)"
|
||||||
|
os_versions[]="CentOS Linux 7 (Core)"
|
||||||
|
os_versions[]="CentOS Linux 6 (Core)"
|
||||||
|
os_versions[]="RHEL 8.2"
|
||||||
|
os_versions[]="RHEL 8.1"
|
||||||
|
os_versions[]="Alma Linux 9.1"
|
||||||
|
|
||||||
|
latitude="RANDOM;37;42"
|
||||||
|
longitude="RANDOM;-8;-1"
|
||||||
|
altitude="0"
|
||||||
|
|
||||||
|
[modules]
|
||||||
|
|
||||||
|
name[1]="Host Alive"
|
||||||
|
type[1]="generic_proc"
|
||||||
|
values[1]="PROC;5"
|
||||||
|
group[1]="Network"
|
211
pandora_console/extras/demodata/agents/1-linux.prd
Normal file
211
pandora_console/extras/demodata/agents/1-linux.prd
Normal file
@ -0,0 +1,211 @@
|
|||||||
|
[agent_data]
|
||||||
|
|
||||||
|
agents_number="4"
|
||||||
|
|
||||||
|
agent_name="linux"
|
||||||
|
agent_alias="linux"
|
||||||
|
|
||||||
|
group="Demo servers"
|
||||||
|
|
||||||
|
address_network="192.168.1.0/24"
|
||||||
|
|
||||||
|
os_name="Linux"
|
||||||
|
|
||||||
|
os_versions[]="Rocky Linux 9.2 (Blue Onyx)"
|
||||||
|
os_versions[]="CentOS Linux 7 (Core)"
|
||||||
|
os_versions[]="CentOS Linux 6 (Core)"
|
||||||
|
os_versions[]="RHEL 8.2"
|
||||||
|
os_versions[]="RHEL 8.1"
|
||||||
|
os_versions[]="Alma Linux 9.1"
|
||||||
|
|
||||||
|
latitude="RANDOM;37;42"
|
||||||
|
longitude="RANDOM;-8;-1"
|
||||||
|
altitude="0"
|
||||||
|
|
||||||
|
[modules]
|
||||||
|
|
||||||
|
name[1]="Network Usage"
|
||||||
|
type[1]="generic_data_inc"
|
||||||
|
description[1]="Network usage in the system"
|
||||||
|
values[1]="RANDOM;0;10000"
|
||||||
|
unit[1]="bytes/sec"
|
||||||
|
group[1]="Network"
|
||||||
|
|
||||||
|
name[2]="Network latency"
|
||||||
|
type[2]="generic_data"
|
||||||
|
description[2]="Network latency to router"
|
||||||
|
values[2]="RANDOM;0;20"
|
||||||
|
unit[2]="msec"
|
||||||
|
group[2]="Network"
|
||||||
|
|
||||||
|
name[3]="CPU Load"
|
||||||
|
type[3]="generic_data"
|
||||||
|
description[3]="CPU Usage"
|
||||||
|
values[3]="RANDOM;20;90"
|
||||||
|
unit[3]="%"
|
||||||
|
group[3]="System"
|
||||||
|
|
||||||
|
name[4]="Disk Usage"
|
||||||
|
type[4]="generic_data"
|
||||||
|
description[4]="% used space"
|
||||||
|
values[4]="RANDOM;50;60"
|
||||||
|
unit[4]="%"
|
||||||
|
group[4]="System"
|
||||||
|
|
||||||
|
name[5]="Memory Usage"
|
||||||
|
type[5]="generic_data"
|
||||||
|
description[5]="% Used memory"
|
||||||
|
values[5]="RANDOM;0;20"
|
||||||
|
unit[5]="%"
|
||||||
|
group[5]="System"
|
||||||
|
|
||||||
|
name[6]="Antivirus Updated"
|
||||||
|
type[6]="generic_proc"
|
||||||
|
description[6]="Detect if A/V is enabled and updated"
|
||||||
|
values[6]="PROC;5"
|
||||||
|
group[6]="Security"
|
||||||
|
|
||||||
|
name[7]="Insecure passwords status"
|
||||||
|
type[7]="generic_proc"
|
||||||
|
description[7]="No insecure passwords found"
|
||||||
|
values[7]="PROC;0"
|
||||||
|
group[7]="Security"
|
||||||
|
|
||||||
|
name[8]="Files check status"
|
||||||
|
type[8]="generic_proc"
|
||||||
|
description[8]="No changed files found"
|
||||||
|
values[8]="PROC;0"
|
||||||
|
group[8]="Security"
|
||||||
|
|
||||||
|
name[9]="Authorized ports status"
|
||||||
|
type[9]="generic_proc"
|
||||||
|
description[9]="No unauthorized ports found"
|
||||||
|
values[9]="PROC;0"
|
||||||
|
group[9]="Security"
|
||||||
|
|
||||||
|
name[10]="Service httpd"
|
||||||
|
type[10]="generic_proc"
|
||||||
|
values[10]="PROC;5"
|
||||||
|
group[10]="Applications"
|
||||||
|
|
||||||
|
name[11]="Service mysqld"
|
||||||
|
type[11]="generic_proc"
|
||||||
|
values[11]="PROC;5"
|
||||||
|
group[11]="Applications"
|
||||||
|
|
||||||
|
name[12]="Service sshd"
|
||||||
|
type[12]="generic_proc"
|
||||||
|
values[12]="PROC;5"
|
||||||
|
group[12]="Applications"
|
||||||
|
|
||||||
|
[inventory]
|
||||||
|
|
||||||
|
name[1]="Software"
|
||||||
|
format[1]="Name;Version;Description"
|
||||||
|
values[1]="name;version;description"
|
||||||
|
|
||||||
|
name[2]="Users"
|
||||||
|
format[2]="Username"
|
||||||
|
values[2]="username"
|
||||||
|
|
||||||
|
name[3]="File System"
|
||||||
|
format[3]="Device;Free size;Total size;Mount point"
|
||||||
|
values[3]="device;free_size;total_size;mount_point"
|
||||||
|
|
||||||
|
[inventory_values]
|
||||||
|
|
||||||
|
name[1]="aajohan-comfortaa-fonts"
|
||||||
|
name[2]="aardvark-dns"
|
||||||
|
name[3]="abattis-cantarell-fonts"
|
||||||
|
name[4]="abrt"
|
||||||
|
|
||||||
|
version[1]="3.101"
|
||||||
|
version[2]="1.0.3"
|
||||||
|
version[3]="0.301"
|
||||||
|
version[4]="2.14.6"
|
||||||
|
|
||||||
|
description[1]="Modern style true type font"
|
||||||
|
description[2]="Authoritative DNS server for A/AAAA container records"
|
||||||
|
description[3]="Humanist sans serif font"
|
||||||
|
description[4]="Automatic bug detection and reporting tool"
|
||||||
|
|
||||||
|
username[1]="root"
|
||||||
|
username[2]="pandora"
|
||||||
|
|
||||||
|
device[1]="/dev/sda1"
|
||||||
|
device[2]="/dev/sda2"
|
||||||
|
device[3]="/dev/sdb1"
|
||||||
|
|
||||||
|
free_size[1]="96G"
|
||||||
|
free_size[2]="136G"
|
||||||
|
free_size[3]="97M"
|
||||||
|
|
||||||
|
total_size[1]="180G"
|
||||||
|
total_size[2]="1.6T"
|
||||||
|
total_size[3]="819M"
|
||||||
|
|
||||||
|
mount_point[1]="/home"
|
||||||
|
mount_point[2]="/"
|
||||||
|
mount_point[3]="/tmp"
|
||||||
|
|
||||||
|
[log_modules]
|
||||||
|
|
||||||
|
source[1]="httpd"
|
||||||
|
data[1]='127.0.0.1 - "GET /index.html HTTP/1.1" 200 3456 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36"'
|
||||||
|
|
||||||
|
source[2]="httpd"
|
||||||
|
data[2]='192.168.1.1 - "POST /submit.php HTTP/1.1" 302 0 "https://example.com/form" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36"'
|
||||||
|
|
||||||
|
source[3]="httpd"
|
||||||
|
data[3]='10.0.0.2 - "GET /images/logo.png HTTP/1.1" 304 0 "-" "Mozilla/5.0 (iPhone; CPU iPhone OS 14_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.0.1 Mobile/15E148 Safari/604.1"'
|
||||||
|
|
||||||
|
source[4]="httpd"
|
||||||
|
data[4]='172.16.0.1 - "GET /page/about-us HTTP/1.1" 404 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36"'
|
||||||
|
|
||||||
|
source[5]="httpd"
|
||||||
|
data[5]='192.168.0.10 - "GET /css/style.css HTTP/1.1" 200 768 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36"'
|
||||||
|
|
||||||
|
source[6]="httpd"
|
||||||
|
data[6]='203.0.113.45 - "GET /blog/post-123 HTTP/1.1" 200 5432 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36"'
|
||||||
|
|
||||||
|
source[7]="httpd"
|
||||||
|
data[7]='54.78.90.12 - "GET /category/api-reference HTTP/1.1" 200 6543 "-" "Mozilla/5.0 (Linux; Android 10; SM-G960U) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.181 Mobile Safari/537.36"'
|
||||||
|
|
||||||
|
source[8]="httpd"
|
||||||
|
data[8]='88.77.66.55 - "GET /contact-us HTTP/1.1" 301 0 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36"'
|
||||||
|
|
||||||
|
source[9]="httpd"
|
||||||
|
data[9]='198.51.100.23 - "GET /images/photo.jpg HTTP/1.1" 200 4567 "https://example.com/gallery" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36"'
|
||||||
|
|
||||||
|
source[10]="httpd"
|
||||||
|
data[10]='128.0.0.1 - "GET /downloads/file.zip HTTP/1.1" 200 12345 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36"'
|
||||||
|
|
||||||
|
source[11]="mysqld"
|
||||||
|
data[11]="[Warning] Aborted connection 123 to db: 'your_database' user: 'your_user' host: '192.168.1.100' (Got an error reading communication packets)"
|
||||||
|
|
||||||
|
source[12]="mysqld"
|
||||||
|
data[12]="[ERROR] Table 'your_database.your_table' doesn't exist"
|
||||||
|
|
||||||
|
source[13]="mysqld"
|
||||||
|
data[13]="[Note] Starting crash recovery..."
|
||||||
|
|
||||||
|
source[14]="mysqld"
|
||||||
|
data[14]="[Warning] Unsafe statement written to the binary log using statement format since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it uses a LIMIT clause. Use a different log bin event type."
|
||||||
|
|
||||||
|
source[15]="mysqld"
|
||||||
|
data[15]="[ERROR] Out of memory; check if mysqld or some other process uses all available memory; if not, you may have to use 'ulimit' to allow mysqld to use more memory or you can add more swap space"
|
||||||
|
|
||||||
|
source[16]="mysqld"
|
||||||
|
data[16]="[Note] Aborted connection 456 to db: 'another_database' user: 'another_user' host: 'localhost' (Got timeout reading communication packets)"
|
||||||
|
|
||||||
|
source[17]="mysqld"
|
||||||
|
data[17]="[ERROR] Can't create a new thread (errno 11); if you are not out of available memory, you can consult the manual for a possible OS-dependent bug"
|
||||||
|
|
||||||
|
source[18]="mysqld"
|
||||||
|
data[18]="[Warning] 'user' entry 'your_user@localhost' ignored in --skip-name-resolve mode."
|
||||||
|
|
||||||
|
source[19]="mysqld"
|
||||||
|
data[19]="[Note] InnoDB: Starting rollback of uncommitted transactions"
|
||||||
|
|
||||||
|
source[20]="mysqld"
|
||||||
|
data[20]="[ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed."
|
118
pandora_console/extras/demodata/agents/2-windows.prd
Normal file
118
pandora_console/extras/demodata/agents/2-windows.prd
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
[agent_data]
|
||||||
|
|
||||||
|
agents_number="2"
|
||||||
|
|
||||||
|
agent_name="windows"
|
||||||
|
agent_alias="windows"
|
||||||
|
|
||||||
|
group="Demo servers"
|
||||||
|
|
||||||
|
address_network="192.168.2.0/24"
|
||||||
|
|
||||||
|
os_name="Windows"
|
||||||
|
|
||||||
|
os_versions[]="Microsoft Windows 11 Pro"
|
||||||
|
os_versions[]="Microsoft Windows 11"
|
||||||
|
os_versions[]="Home Microsoft Windows 10 Pro"
|
||||||
|
os_versions[]="Microsoft Windows 10 Home"
|
||||||
|
os_versions[]="Microsoft Windows 2018"
|
||||||
|
|
||||||
|
latitude="RANDOM;37;42"
|
||||||
|
longitude="RANDOM;-8;-1"
|
||||||
|
altitude="0"
|
||||||
|
|
||||||
|
[modules]
|
||||||
|
|
||||||
|
name[1]="Network Usage"
|
||||||
|
type[1]="generic_data_inc"
|
||||||
|
description[1]="Network usage in the system"
|
||||||
|
values[1]="RANDOM;0;10000"
|
||||||
|
unit[1]="bytes/sec"
|
||||||
|
group[1]="Network"
|
||||||
|
|
||||||
|
name[2]="Network latency"
|
||||||
|
type[2]="generic_data"
|
||||||
|
description[2]="Network latency to router"
|
||||||
|
values[2]="RANDOM;0;20"
|
||||||
|
unit[2]="msec"
|
||||||
|
group[2]="Network"
|
||||||
|
|
||||||
|
name[3]="CPU Load"
|
||||||
|
type[3]="generic_data"
|
||||||
|
description[3]="CPU Usage"
|
||||||
|
values[3]="RANDOM;20;90"
|
||||||
|
unit[3]="%"
|
||||||
|
group[3]="System"
|
||||||
|
|
||||||
|
name[4]="Disk Usage"
|
||||||
|
type[4]="generic_data"
|
||||||
|
description[4]="% used space"
|
||||||
|
values[4]="RANDOM;50;60"
|
||||||
|
unit[4]="%"
|
||||||
|
group[4]="System"
|
||||||
|
|
||||||
|
name[5]="Memory Usage"
|
||||||
|
type[5]="generic_data"
|
||||||
|
description[5]="% Used memory"
|
||||||
|
values[5]="RANDOM;0;20"
|
||||||
|
unit[5]="%"
|
||||||
|
group[5]="System"
|
||||||
|
|
||||||
|
name[6]="Service WMI"
|
||||||
|
type[6]="generic_proc"
|
||||||
|
values[6]="PROC;5"
|
||||||
|
group[6]="Applications"
|
||||||
|
|
||||||
|
[inventory]
|
||||||
|
|
||||||
|
name[1]="Software"
|
||||||
|
format[1]="Name;Version"
|
||||||
|
values[1]="name;version"
|
||||||
|
|
||||||
|
name[2]="Users"
|
||||||
|
format[2]="Domain;User"
|
||||||
|
values[2]="domain;user"
|
||||||
|
|
||||||
|
name[3]="File System"
|
||||||
|
format[3]="Device;Total size;Free size;Mount point"
|
||||||
|
values[3]="device;total_size;free_size;mount_point"
|
||||||
|
|
||||||
|
name[4]="Windows Serial Number"
|
||||||
|
format[4]="Serial number"
|
||||||
|
values[4]="serial_number"
|
||||||
|
|
||||||
|
[inventory_values]
|
||||||
|
|
||||||
|
name[1]="Microsoft Update Health Tools"
|
||||||
|
name[2]="Java(TM) SE Development Kit 17.0.6 (64-bit)"
|
||||||
|
name[3]="DisplayLink Graphics"
|
||||||
|
name[4]="Microsoft Visual C++ 2019 X64 Additional Runtime - 14.28.29325"
|
||||||
|
|
||||||
|
version[1]="5.71.0.0"
|
||||||
|
version[2]="17.0.6.0"
|
||||||
|
version[3]="10.2.7042.0"
|
||||||
|
version[4]="14.28.29325"
|
||||||
|
|
||||||
|
domain[1]="DEMO"
|
||||||
|
domain[2]="DEMO"
|
||||||
|
|
||||||
|
user[1]="Administrator"
|
||||||
|
user[2]="pandora"
|
||||||
|
|
||||||
|
device[1]="C:"
|
||||||
|
device[2]="D:"
|
||||||
|
device[3]="T:"
|
||||||
|
|
||||||
|
total_size[1]="1.6T"
|
||||||
|
total_size[2]="180G"
|
||||||
|
total_size[3]="819M"
|
||||||
|
|
||||||
|
free_size[1]="136G"
|
||||||
|
free_size[2]="96G"
|
||||||
|
free_size[3]="97M"
|
||||||
|
|
||||||
|
mount_point[1]="OS"
|
||||||
|
mount_point[2]="Data"
|
||||||
|
mount_point[3]="Temp"
|
||||||
|
|
||||||
|
serial_number[1]="Demo-56 4d 7d 43 24 e4 c6 ac-67 57 52 60 e9 10 26 78"
|
74
pandora_console/extras/demodata/agents/3-macosx.prd
Normal file
74
pandora_console/extras/demodata/agents/3-macosx.prd
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
[agent_data]
|
||||||
|
|
||||||
|
agents_number="1"
|
||||||
|
|
||||||
|
agent_name="macos"
|
||||||
|
agent_alias="macos"
|
||||||
|
|
||||||
|
group="Demo servers"
|
||||||
|
|
||||||
|
address_network="192.168.3.0/24"
|
||||||
|
|
||||||
|
os_name="MacOS"
|
||||||
|
|
||||||
|
os_versions[]="12.1"
|
||||||
|
os_versions[]="13.1"
|
||||||
|
os_versions[]="11.2"
|
||||||
|
os_versions[]="11.3"
|
||||||
|
os_versions[]="10.3"
|
||||||
|
|
||||||
|
latitude="RANDOM;37;42"
|
||||||
|
longitude="RANDOM;-8;-1"
|
||||||
|
altitude="0"
|
||||||
|
|
||||||
|
[modules]
|
||||||
|
|
||||||
|
name[1]="Network Usage"
|
||||||
|
type[1]="generic_data_inc"
|
||||||
|
description[1]="Network usage in the system"
|
||||||
|
values[1]="RANDOM;0;10000"
|
||||||
|
unit[1]="bytes/sec"
|
||||||
|
group[1]="Network"
|
||||||
|
|
||||||
|
name[2]="Network latency"
|
||||||
|
type[2]="generic_data"
|
||||||
|
description[2]="Network latency to router"
|
||||||
|
values[2]="RANDOM;0;20"
|
||||||
|
unit[2]="msec"
|
||||||
|
group[2]="Network"
|
||||||
|
|
||||||
|
name[3]="CPU Load"
|
||||||
|
type[3]="generic_data"
|
||||||
|
description[3]="CPU Usage"
|
||||||
|
values[3]="RANDOM;20;90"
|
||||||
|
unit[3]="%"
|
||||||
|
group[3]="System"
|
||||||
|
|
||||||
|
name[4]="Disk Usage"
|
||||||
|
type[4]="generic_data"
|
||||||
|
description[4]="% used space"
|
||||||
|
values[4]="RANDOM;50;60"
|
||||||
|
unit[4]="%"
|
||||||
|
group[4]="System"
|
||||||
|
|
||||||
|
name[5]="Memory Usage"
|
||||||
|
type[5]="generic_data"
|
||||||
|
description[5]="% Used memory"
|
||||||
|
values[5]="RANDOM;0;20"
|
||||||
|
unit[5]="%"
|
||||||
|
group[5]="System"
|
||||||
|
|
||||||
|
name[6]="Service httpd"
|
||||||
|
type[6]="generic_proc"
|
||||||
|
values[6]="PROC;5"
|
||||||
|
group[6]="Applications"
|
||||||
|
|
||||||
|
name[7]="Service mysqld"
|
||||||
|
type[7]="generic_proc"
|
||||||
|
values[7]="PROC;5"
|
||||||
|
group[7]="Applications"
|
||||||
|
|
||||||
|
name[8]="Service sshd"
|
||||||
|
type[8]="generic_proc"
|
||||||
|
values[8]="PROC;5"
|
||||||
|
group[8]="Applications"
|
73
pandora_console/extras/demodata/agents/4-freebsd.prd
Normal file
73
pandora_console/extras/demodata/agents/4-freebsd.prd
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
[agent_data]
|
||||||
|
|
||||||
|
agents_number="1"
|
||||||
|
|
||||||
|
agent_name="freebsd"
|
||||||
|
agent_alias="freebsd"
|
||||||
|
|
||||||
|
group="Demo servers"
|
||||||
|
|
||||||
|
address_network="192.168.4.0/24"
|
||||||
|
|
||||||
|
os_name="BSD"
|
||||||
|
|
||||||
|
os_versions[]="14.0"
|
||||||
|
os_versions[]="13.1"
|
||||||
|
os_versions[]="13.2"
|
||||||
|
os_versions[]="13.3"
|
||||||
|
|
||||||
|
latitude="RANDOM;37;42"
|
||||||
|
longitude="RANDOM;-8;-1"
|
||||||
|
altitude="0"
|
||||||
|
|
||||||
|
[modules]
|
||||||
|
|
||||||
|
name[1]="Network Usage"
|
||||||
|
type[1]="generic_data_inc"
|
||||||
|
description[1]="Network usage in the system"
|
||||||
|
values[1]="RANDOM;0;10000"
|
||||||
|
unit[1]="bytes/sec"
|
||||||
|
group[1]="Network"
|
||||||
|
|
||||||
|
name[2]="Network latency"
|
||||||
|
type[2]="generic_data"
|
||||||
|
description[2]="Network latency to router"
|
||||||
|
values[2]="RANDOM;0;20"
|
||||||
|
unit[2]="msec"
|
||||||
|
group[2]="Network"
|
||||||
|
|
||||||
|
name[3]="CPU Load"
|
||||||
|
type[3]="generic_data"
|
||||||
|
description[3]="CPU Usage"
|
||||||
|
values[3]="RANDOM;20;90"
|
||||||
|
unit[3]="%"
|
||||||
|
group[3]="System"
|
||||||
|
|
||||||
|
name[4]="Disk Usage"
|
||||||
|
type[4]="generic_data"
|
||||||
|
description[4]="% used space"
|
||||||
|
values[4]="RANDOM;50;60"
|
||||||
|
unit[4]="%"
|
||||||
|
group[4]="System"
|
||||||
|
|
||||||
|
name[5]="Memory Usage"
|
||||||
|
type[5]="generic_data"
|
||||||
|
description[5]="% Used memory"
|
||||||
|
values[5]="RANDOM;0;20"
|
||||||
|
unit[5]="%"
|
||||||
|
group[5]="System"
|
||||||
|
|
||||||
|
name[6]="Service httpd"
|
||||||
|
type[6]="generic_proc"
|
||||||
|
values[6]="PROC;5"
|
||||||
|
group[6]="Applications"
|
||||||
|
|
||||||
|
name[7]="Service mysqld"
|
||||||
|
type[7]="generic_proc"
|
||||||
|
values[7]="PROC;5"
|
||||||
|
group[7]="Applications"
|
||||||
|
|
||||||
|
name[8]="Service sshd"
|
||||||
|
type[8]="generic_proc"
|
||||||
|
values[8]="PROC;5"
|
||||||
|
group[8]="Applications"
|
297
pandora_console/extras/demodata/agents/5-cisco.prd
Normal file
297
pandora_console/extras/demodata/agents/5-cisco.prd
Normal file
@ -0,0 +1,297 @@
|
|||||||
|
[agent_data]
|
||||||
|
|
||||||
|
agents_number="1"
|
||||||
|
|
||||||
|
agent_name="cisco"
|
||||||
|
agent_alias="cisco"
|
||||||
|
|
||||||
|
group="Demo network"
|
||||||
|
|
||||||
|
address_network="192.168.5.0/24"
|
||||||
|
mac="__randomMAC__"
|
||||||
|
|
||||||
|
os_name="Cisco"
|
||||||
|
|
||||||
|
os_versions[]="C9200L"
|
||||||
|
os_versions[]="C9300LM"
|
||||||
|
os_versions[]="C9600"
|
||||||
|
|
||||||
|
latitude="RANDOM;37;42"
|
||||||
|
longitude="RANDOM;-8;-1"
|
||||||
|
altitude="0"
|
||||||
|
|
||||||
|
[modules]
|
||||||
|
|
||||||
|
name[1]="CPU Usage (5 min avg)"
|
||||||
|
type[1]="generic_data"
|
||||||
|
description[1]="CPU Usage"
|
||||||
|
values[1]="RANDOM;20;90"
|
||||||
|
unit[1]="%"
|
||||||
|
group[1]="General"
|
||||||
|
|
||||||
|
name[2]="Big Buffer Misses"
|
||||||
|
type[2]="generic_data"
|
||||||
|
description[2]="Buffer misses"
|
||||||
|
values[2]="RANDOM;20;90"
|
||||||
|
unit[2]="%"
|
||||||
|
group[2]="General"
|
||||||
|
|
||||||
|
name[3]="Temperature"
|
||||||
|
type[3]="generic_data"
|
||||||
|
description[3]="System temp"
|
||||||
|
values[3]="RANDOM;20;30"
|
||||||
|
unit[3]="ºC"
|
||||||
|
group[3]="General"
|
||||||
|
|
||||||
|
name[4]="Host alive"
|
||||||
|
type[4]="generic_proc"
|
||||||
|
values[4]="PROC;5"
|
||||||
|
group[4]="Networking"
|
||||||
|
|
||||||
|
name[5]="Gi0/0_ifOperStatus"
|
||||||
|
type[5]="generic_proc"
|
||||||
|
description[5]="(MAC: _mac_ - Gi0/0_ifOperStatus)"
|
||||||
|
values[5]="PROC;5"
|
||||||
|
group[5]="Networking"
|
||||||
|
|
||||||
|
name[6]="Gi0/0_ifInOctets"
|
||||||
|
type[6]="generic_data_inc"
|
||||||
|
description[6]="(MAC: _mac_ - Gi0/0_ifInOctets)"
|
||||||
|
values[6]="RANDOM;0;1000"
|
||||||
|
unit[6]="bytes/s"
|
||||||
|
group[6]="Networking"
|
||||||
|
|
||||||
|
name[7]="Gi0/0_ifOutOctets"
|
||||||
|
type[7]="generic_data_inc"
|
||||||
|
description[7]="(MAC: _mac_ - Gi0/0_ifOutOctets)"
|
||||||
|
values[7]="RANDOM;0;1000"
|
||||||
|
unit[7]="bytes/s"
|
||||||
|
group[7]="Networking"
|
||||||
|
|
||||||
|
name[8]="Gi0/1_ifOperStatus"
|
||||||
|
type[8]="generic_proc"
|
||||||
|
description[8]="(MAC: _mac_ - Gi0/1_ifOperStatus)"
|
||||||
|
values[8]="PROC;5"
|
||||||
|
group[8]="Networking"
|
||||||
|
|
||||||
|
name[9]="Gi0/1_ifInOctets"
|
||||||
|
type[9]="generic_data_inc"
|
||||||
|
description[9]="(MAC: _mac_ - Gi0/1_ifInOctets)"
|
||||||
|
values[9]="RANDOM;0;1000"
|
||||||
|
unit[9]="bytes/s"
|
||||||
|
group[9]="Networking"
|
||||||
|
|
||||||
|
name[10]="Gi0/1_ifOutOctets"
|
||||||
|
type[10]="generic_data_inc"
|
||||||
|
description[10]="(MAC: _mac_ - Gi0/1_ifOutOctets)"
|
||||||
|
values[10]="RANDOM;0;1000"
|
||||||
|
unit[10]="bytes/s"
|
||||||
|
group[10]="Networking"
|
||||||
|
|
||||||
|
name[11]="Gi0/2_ifOperStatus"
|
||||||
|
type[11]="generic_proc"
|
||||||
|
description[11]="(MAC: _mac_ - Gi0/2_ifOperStatus)"
|
||||||
|
values[11]="PROC;5"
|
||||||
|
group[11]="Networking"
|
||||||
|
|
||||||
|
name[12]="Gi0/2_ifInOctets"
|
||||||
|
type[12]="generic_data_inc"
|
||||||
|
description[12]="(MAC: _mac_ - Gi0/2_ifInOctets)"
|
||||||
|
values[12]="RANDOM;0;1000"
|
||||||
|
unit[12]="bytes/s"
|
||||||
|
group[12]="Networking"
|
||||||
|
|
||||||
|
name[13]="Gi0/2_ifOutOctets"
|
||||||
|
type[13]="generic_data_inc"
|
||||||
|
description[13]="(MAC: _mac_ - Gi0/2_ifOutOctets)"
|
||||||
|
values[13]="RANDOM;0;1000"
|
||||||
|
unit[13]="bytes/s"
|
||||||
|
group[13]="Networking"
|
||||||
|
|
||||||
|
name[14]="Gi0/3_ifOperStatus"
|
||||||
|
type[14]="generic_proc"
|
||||||
|
description[14]="(MAC: _mac_ - Gi0/3_ifOperStatus)"
|
||||||
|
values[14]="PROC;5"
|
||||||
|
group[14]="Networking"
|
||||||
|
|
||||||
|
name[15]="Gi0/3_ifInOctets"
|
||||||
|
type[15]="generic_data_inc"
|
||||||
|
description[15]="(MAC: _mac_ - Gi0/3_ifInOctets)"
|
||||||
|
values[15]="RANDOM;0;1000"
|
||||||
|
unit[15]="bytes/s"
|
||||||
|
group[15]="Networking"
|
||||||
|
|
||||||
|
name[16]="Gi0/3_ifOutOctets"
|
||||||
|
type[16]="generic_data_inc"
|
||||||
|
description[16]="(MAC: _mac_ - Gi0/3_ifOutOctets)"
|
||||||
|
values[16]="RANDOM;0;1000"
|
||||||
|
unit[16]="bytes/s"
|
||||||
|
group[16]="Networking"
|
||||||
|
|
||||||
|
name[17]="Gi0/4_ifOperStatus"
|
||||||
|
type[17]="generic_proc"
|
||||||
|
description[17]="(MAC: _mac_ - Gi0/4_ifOperStatus)"
|
||||||
|
values[17]="PROC;5"
|
||||||
|
group[17]="Networking"
|
||||||
|
|
||||||
|
name[18]="Gi0/4_ifInOctets"
|
||||||
|
type[18]="generic_data_inc"
|
||||||
|
description[18]="(MAC: _mac_ - Gi0/4_ifInOctets)"
|
||||||
|
values[18]="RANDOM;0;1000"
|
||||||
|
unit[18]="bytes/s"
|
||||||
|
group[18]="Networking"
|
||||||
|
|
||||||
|
name[19]="Gi0/4_ifOutOctets"
|
||||||
|
type[19]="generic_data_inc"
|
||||||
|
description[19]="(MAC: _mac_ - Gi0/4_ifOutOctets)"
|
||||||
|
values[19]="RANDOM;0;1000"
|
||||||
|
unit[19]="bytes/s"
|
||||||
|
group[19]="Networking"
|
||||||
|
|
||||||
|
name[20]="Gi0/5_ifOperStatus"
|
||||||
|
type[20]="generic_proc"
|
||||||
|
description[20]="(MAC: _mac_ - Gi0/5_ifOperStatus)"
|
||||||
|
values[20]="PROC;5"
|
||||||
|
group[20]="Networking"
|
||||||
|
|
||||||
|
name[21]="Gi0/5_ifInOctets"
|
||||||
|
type[21]="generic_data_inc"
|
||||||
|
description[21]="(MAC: _mac_ - Gi0/5_ifInOctets)"
|
||||||
|
values[21]="RANDOM;0;1000"
|
||||||
|
unit[21]="bytes/s"
|
||||||
|
group[21]="Networking"
|
||||||
|
|
||||||
|
name[22]="Gi0/5_ifOutOctets"
|
||||||
|
type[22]="generic_data_inc"
|
||||||
|
description[22]="(MAC: _mac_ - Gi0/5_ifOutOctets)"
|
||||||
|
values[22]="RANDOM;0;1000"
|
||||||
|
unit[22]="bytes/s"
|
||||||
|
group[22]="Networking"
|
||||||
|
|
||||||
|
name[23]="Gi0/6_ifOperStatus"
|
||||||
|
type[23]="generic_proc"
|
||||||
|
description[23]="(MAC: _mac_ - Gi0/6_ifOperStatus)"
|
||||||
|
values[23]="PROC;5"
|
||||||
|
group[23]="Networking"
|
||||||
|
|
||||||
|
name[24]="Gi0/6_ifInOctets"
|
||||||
|
type[24]="generic_data_inc"
|
||||||
|
description[24]="(MAC: _mac_ - Gi0/6_ifInOctets)"
|
||||||
|
values[24]="RANDOM;0;1000"
|
||||||
|
unit[24]="bytes/s"
|
||||||
|
group[24]="Networking"
|
||||||
|
|
||||||
|
name[25]="Gi0/6_ifOutOctets"
|
||||||
|
type[25]="generic_data_inc"
|
||||||
|
description[25]="(MAC: _mac_ - Gi0/6_ifOutOctets)"
|
||||||
|
values[25]="RANDOM;0;1000"
|
||||||
|
unit[25]="bytes/s"
|
||||||
|
group[25]="Networking"
|
||||||
|
|
||||||
|
name[26]="Gi0/7_ifOperStatus"
|
||||||
|
type[26]="generic_proc"
|
||||||
|
description[26]="(MAC: _mac_ - Gi0/7_ifOperStatus)"
|
||||||
|
values[26]="PROC;5"
|
||||||
|
group[26]="Networking"
|
||||||
|
|
||||||
|
name[27]="Gi0/7_ifInOctets"
|
||||||
|
type[27]="generic_data_inc"
|
||||||
|
description[27]="(MAC: _mac_ - Gi0/7_ifInOctets)"
|
||||||
|
values[27]="RANDOM;0;1000"
|
||||||
|
unit[27]="bytes/s"
|
||||||
|
group[27]="Networking"
|
||||||
|
|
||||||
|
name[28]="Gi0/7_ifOutOctets"
|
||||||
|
type[28]="generic_data_inc"
|
||||||
|
description[28]="(MAC: _mac_ - Gi0/7_ifOutOctets)"
|
||||||
|
values[28]="RANDOM;0;1000"
|
||||||
|
unit[28]="bytes/s"
|
||||||
|
group[28]="Networking"
|
||||||
|
|
||||||
|
name[29]="Gi0/8_ifOperStatus"
|
||||||
|
type[29]="generic_proc"
|
||||||
|
description[29]="(MAC: _mac_ - Gi0/8_ifOperStatus)"
|
||||||
|
values[29]="PROC;5"
|
||||||
|
group[29]="Networking"
|
||||||
|
|
||||||
|
name[30]="Gi0/8_ifInOctets"
|
||||||
|
type[30]="generic_data_inc"
|
||||||
|
description[30]="(MAC: _mac_ - Gi0/8_ifInOctets)"
|
||||||
|
values[30]="RANDOM;0;1000"
|
||||||
|
unit[30]="bytes/s"
|
||||||
|
group[30]="Networking"
|
||||||
|
|
||||||
|
name[31]="Gi0/8_ifOutOctets"
|
||||||
|
type[31]="generic_data_inc"
|
||||||
|
description[31]="(MAC: _mac_ - Gi0/8_ifOutOctets)"
|
||||||
|
values[31]="RANDOM;0;1000"
|
||||||
|
unit[31]="bytes/s"
|
||||||
|
group[31]="Networking"
|
||||||
|
|
||||||
|
name[32]="Gi0/9_ifOperStatus"
|
||||||
|
type[32]="generic_proc"
|
||||||
|
description[32]="(MAC: _mac_ - Gi0/9_ifOperStatus)"
|
||||||
|
values[32]="PROC;5"
|
||||||
|
group[32]="Networking"
|
||||||
|
|
||||||
|
name[33]="Gi0/9_ifInOctets"
|
||||||
|
type[33]="generic_data_inc"
|
||||||
|
description[33]="(MAC: _mac_ - Gi0/9_ifInOctets)"
|
||||||
|
values[33]="RANDOM;0;1000"
|
||||||
|
unit[33]="bytes/s"
|
||||||
|
group[33]="Networking"
|
||||||
|
|
||||||
|
name[34]="Gi0/9_ifOutOctets"
|
||||||
|
type[34]="generic_data_inc"
|
||||||
|
description[34]="(MAC: _mac_ - Gi0/9_ifOutOctets)"
|
||||||
|
values[34]="RANDOM;0;1000"
|
||||||
|
unit[34]="bytes/s"
|
||||||
|
group[34]="Networking"
|
||||||
|
|
||||||
|
name[35]="ipInReceives"
|
||||||
|
type[35]="generic_data"
|
||||||
|
description[35]="The total number of input datagrams received from interfaces"
|
||||||
|
values[35]="RANDOM;0;1000"
|
||||||
|
unit[35]="datagrams"
|
||||||
|
group[35]="Networking"
|
||||||
|
|
||||||
|
name[36]="ipOutRequests"
|
||||||
|
type[36]="generic_data"
|
||||||
|
description[36]="The total number of output datagrams requested from interfaces"
|
||||||
|
values[36]="RANDOM;0;1000"
|
||||||
|
unit[36]="datagrams"
|
||||||
|
group[36]="Networking"
|
||||||
|
|
||||||
|
name[37]="Latency"
|
||||||
|
type[37]="generic_data"
|
||||||
|
description[37]="Network latency"
|
||||||
|
values[37]="RANDOM;0;100"
|
||||||
|
unit[37]="msec"
|
||||||
|
group[37]="Networking"
|
||||||
|
|
||||||
|
[traps]
|
||||||
|
|
||||||
|
oid[1]=".1.3.6.1.4.1.9.9.41.1.2.3.1.2.0"
|
||||||
|
value[1]="RANDOM;0;100"
|
||||||
|
snmp_type[1]="6"
|
||||||
|
chance_percent[1]="20"
|
||||||
|
|
||||||
|
oid[2]=".1.3.6.1.4.1.9.9.41.1.2.3.1.3.0"
|
||||||
|
value[2]="RANDOM;0;100"
|
||||||
|
snmp_type[2]="6"
|
||||||
|
chance_percent[2]="20"
|
||||||
|
|
||||||
|
oid[3]=".1.3.6.1.4.1.9.9.41.1.2.3.1.4.0"
|
||||||
|
value[3]="RANDOM;0;100"
|
||||||
|
snmp_type[3]="6"
|
||||||
|
chance_percent[3]="20"
|
||||||
|
|
||||||
|
oid[4]=".1.3.6.1.4.1.9.9.41.1.2.3.1.5.0"
|
||||||
|
value[4]="RANDOM;0;100"
|
||||||
|
snmp_type[4]="6"
|
||||||
|
chance_percent[4]="20"
|
||||||
|
|
||||||
|
oid[5]=".1.3.6.1.4.1.9.9.41.1.2.3.1.6.0"
|
||||||
|
value[5]="RANDOM;0;100"
|
||||||
|
snmp_type[5]="6"
|
||||||
|
chance_percent[5]="20"
|
65
pandora_console/extras/demodata/dashboards/1-dashboard.prd
Normal file
65
pandora_console/extras/demodata/dashboards/1-dashboard.prd
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
[dashboard_data]
|
||||||
|
|
||||||
|
name="Demo dashboard"
|
||||||
|
group="Demo dashboard"
|
||||||
|
|
||||||
|
[dashboard_items]
|
||||||
|
|
||||||
|
title[1]="Groups status"
|
||||||
|
type[1]="system_group_status"
|
||||||
|
x[1]="0"
|
||||||
|
y[1]="0"
|
||||||
|
width[1]="5"
|
||||||
|
height[1]="4"
|
||||||
|
|
||||||
|
title[2]="Network map"
|
||||||
|
type[2]="network_map"
|
||||||
|
x[2]="5"
|
||||||
|
y[2]="0"
|
||||||
|
width[2]="7"
|
||||||
|
height[2]="6"
|
||||||
|
map_name[2]="Demo sunburst network map"
|
||||||
|
|
||||||
|
title[3]="Module histogram"
|
||||||
|
type[3]="graph_module_histogram"
|
||||||
|
x[3]="0"
|
||||||
|
y[3]="4"
|
||||||
|
width[3]="5"
|
||||||
|
height[3]="2"
|
||||||
|
agent_name[3]="demo-global-agent-1"
|
||||||
|
module[3]="Host Alive"
|
||||||
|
interval[3]="86400"
|
||||||
|
|
||||||
|
title[4]="List of latest events"
|
||||||
|
type[4]="events_list"
|
||||||
|
x[4]="0"
|
||||||
|
y[4]="6"
|
||||||
|
width[4]="12"
|
||||||
|
height[4]="5"
|
||||||
|
|
||||||
|
title[5]="Top N events by agent"
|
||||||
|
type[5]="top_n_events_by_group"
|
||||||
|
x[5]="6"
|
||||||
|
y[5]="11"
|
||||||
|
width[5]="6"
|
||||||
|
height[5]="8"
|
||||||
|
|
||||||
|
title[6]="Top N of agent modules"
|
||||||
|
type[6]="top_n"
|
||||||
|
x[6]="0"
|
||||||
|
y[6]="11"
|
||||||
|
width[6]="6"
|
||||||
|
height[6]="4"
|
||||||
|
agent_name[6]="cisco-.*"
|
||||||
|
module[6]=".*ifOutOctets"
|
||||||
|
interval[6]="86400"
|
||||||
|
|
||||||
|
title[7]="Top N of agent modules"
|
||||||
|
type[7]="top_n"
|
||||||
|
x[7]="0"
|
||||||
|
y[7]="15"
|
||||||
|
width[7]="6"
|
||||||
|
height[7]="4"
|
||||||
|
agent_name[7]="cisco-.*"
|
||||||
|
module[7]=".*ifInOctets"
|
||||||
|
interval[7]="86400"
|
16
pandora_console/extras/demodata/gis_maps/1-gismap.prd
Normal file
16
pandora_console/extras/demodata/gis_maps/1-gismap.prd
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
[gis_data]
|
||||||
|
|
||||||
|
name="Demo GIS map"
|
||||||
|
group="Demo servers"
|
||||||
|
zoom_level="6"
|
||||||
|
initial_latitude="40"
|
||||||
|
initial_longitude="-3"
|
||||||
|
initial_altitude="0"
|
||||||
|
default_latitude="40"
|
||||||
|
default_longitude="-3"
|
||||||
|
default_altitude="0"
|
||||||
|
|
||||||
|
[gis_layers]
|
||||||
|
|
||||||
|
name[1]="Demo servers"
|
||||||
|
group[1]="Demo servers"
|
21
pandora_console/extras/demodata/graphs/1-cpu-graph.prd
Normal file
21
pandora_console/extras/demodata/graphs/1-cpu-graph.prd
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
[graph_data]
|
||||||
|
|
||||||
|
name="Linux CPU Load"
|
||||||
|
group="Demo servers"
|
||||||
|
description="This is a demo custom graph for linux agents CPU Load"
|
||||||
|
type="s_area"
|
||||||
|
periodicity="86400"
|
||||||
|
|
||||||
|
[graph_items]
|
||||||
|
|
||||||
|
agent_name[1]="linux-1"
|
||||||
|
module[1]="CPU Load"
|
||||||
|
|
||||||
|
agent_name[2]="linux-2"
|
||||||
|
module[2]="CPU Load"
|
||||||
|
|
||||||
|
agent_name[3]="linux-3"
|
||||||
|
module[3]="CPU Load"
|
||||||
|
|
||||||
|
agent_name[4]="linux-4"
|
||||||
|
module[4]="CPU Load"
|
21
pandora_console/extras/demodata/graphs/2-disks-graph.prd
Normal file
21
pandora_console/extras/demodata/graphs/2-disks-graph.prd
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
[graph_data]
|
||||||
|
|
||||||
|
name="Linux Disk Usage"
|
||||||
|
group="Demo servers"
|
||||||
|
description="This is a demo custom graph for linux agents Disk Usage"
|
||||||
|
type="line"
|
||||||
|
periodicity="86400"
|
||||||
|
|
||||||
|
[graph_items]
|
||||||
|
|
||||||
|
agent_name[1]="linux-1"
|
||||||
|
module[1]="Disk Usage"
|
||||||
|
|
||||||
|
agent_name[2]="linux-2"
|
||||||
|
module[2]="Disk Usage"
|
||||||
|
|
||||||
|
agent_name[3]="linux-3"
|
||||||
|
module[3]="Disk Usage"
|
||||||
|
|
||||||
|
agent_name[4]="linux-4"
|
||||||
|
module[4]="Disk Usage"
|
@ -0,0 +1,27 @@
|
|||||||
|
[graph_data]
|
||||||
|
|
||||||
|
name="Network Usage"
|
||||||
|
group="Demo servers"
|
||||||
|
description="This is a demo custom graph for linux and windows agents Network Usage"
|
||||||
|
type="s_area"
|
||||||
|
periodicity="86400"
|
||||||
|
|
||||||
|
[graph_items]
|
||||||
|
|
||||||
|
agent_name[1]="linux-1"
|
||||||
|
module[1]="Network Usage"
|
||||||
|
|
||||||
|
agent_name[2]="linux-2"
|
||||||
|
module[2]="Network Usage"
|
||||||
|
|
||||||
|
agent_name[3]="linux-3"
|
||||||
|
module[3]="Network Usage"
|
||||||
|
|
||||||
|
agent_name[4]="linux-4"
|
||||||
|
module[4]="Network Usage"
|
||||||
|
|
||||||
|
agent_name[5]="windows-1"
|
||||||
|
module[5]="Network Usage"
|
||||||
|
|
||||||
|
agent_name[6]="windows-2"
|
||||||
|
module[6]="Network Usage"
|
143
pandora_console/extras/demodata/network_maps/1-networkmap.prd
Normal file
143
pandora_console/extras/demodata/network_maps/1-networkmap.prd
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
[map_data]
|
||||||
|
|
||||||
|
name="Demo network map"
|
||||||
|
group="Demo network"
|
||||||
|
description="This is a demo network map"
|
||||||
|
node_radius="40"
|
||||||
|
generation_method="circular"
|
||||||
|
|
||||||
|
[map_items]
|
||||||
|
|
||||||
|
agent_name[1]="cisco-1"
|
||||||
|
x[1]="854"
|
||||||
|
y[1]="221"
|
||||||
|
|
||||||
|
agent_name[2]="freebsd-1"
|
||||||
|
x[2]="1184"
|
||||||
|
y[2]="-25"
|
||||||
|
parent[2]="1"
|
||||||
|
|
||||||
|
agent_name[3]="macos-1"
|
||||||
|
x[3]="1268"
|
||||||
|
y[3]="235"
|
||||||
|
parent[3]="1"
|
||||||
|
|
||||||
|
agent_name[4]="windows-1"
|
||||||
|
x[4]="528"
|
||||||
|
y[4]="-37"
|
||||||
|
parent[4]="1"
|
||||||
|
|
||||||
|
agent_name[5]="windows-2"
|
||||||
|
x[5]="514"
|
||||||
|
y[5]="389"
|
||||||
|
parent[5]="1"
|
||||||
|
|
||||||
|
agent_name[6]="linux-1"
|
||||||
|
x[6]="342"
|
||||||
|
y[6]="-273"
|
||||||
|
parent[6]="4"
|
||||||
|
|
||||||
|
agent_name[7]="linux-2"
|
||||||
|
x[7]="240"
|
||||||
|
y[7]="-7"
|
||||||
|
parent[7]="4"
|
||||||
|
|
||||||
|
agent_name[8]="linux-3"
|
||||||
|
x[8]="214"
|
||||||
|
y[8]="275"
|
||||||
|
parent[8]="5"
|
||||||
|
|
||||||
|
agent_name[9]="linux-4"
|
||||||
|
x[9]="226"
|
||||||
|
y[9]="595"
|
||||||
|
parent[9]="5"
|
||||||
|
|
||||||
|
agent_name[10]="cisco-2"
|
||||||
|
x[10]="1036"
|
||||||
|
y[10]="711"
|
||||||
|
parent[10]="1"
|
||||||
|
|
||||||
|
agent_name[11]="freebsd-2"
|
||||||
|
x[11]="892"
|
||||||
|
y[11]="-47"
|
||||||
|
parent[11]="1"
|
||||||
|
|
||||||
|
agent_name[12]="macos-2"
|
||||||
|
x[12]="1150"
|
||||||
|
y[12]="409"
|
||||||
|
parent[12]="1"
|
||||||
|
|
||||||
|
agent_name[13]="windows-3"
|
||||||
|
x[13]="686"
|
||||||
|
y[13]="875"
|
||||||
|
parent[13]="10"
|
||||||
|
|
||||||
|
agent_name[14]="windows-4"
|
||||||
|
x[14]="1452"
|
||||||
|
y[14]="847"
|
||||||
|
parent[14]="10"
|
||||||
|
|
||||||
|
agent_name[15]="linux-5"
|
||||||
|
x[15]="314"
|
||||||
|
y[15]="845"
|
||||||
|
parent[15]="13"
|
||||||
|
|
||||||
|
agent_name[16]="linux-6"
|
||||||
|
x[16]="474"
|
||||||
|
y[16]="1043"
|
||||||
|
parent[16]="13"
|
||||||
|
|
||||||
|
agent_name[17]="linux-7"
|
||||||
|
x[17]="1812"
|
||||||
|
y[17]="1011"
|
||||||
|
parent[17]="14"
|
||||||
|
|
||||||
|
agent_name[18]="linux-8"
|
||||||
|
x[18]="1828"
|
||||||
|
y[18]="723"
|
||||||
|
parent[18]="14"
|
||||||
|
|
||||||
|
agent_name[19]="cisco-3"
|
||||||
|
x[19]="1824"
|
||||||
|
y[19]="285"
|
||||||
|
parent[19]="3"
|
||||||
|
|
||||||
|
agent_name[20]="freebsd-3"
|
||||||
|
x[20]="-82"
|
||||||
|
y[20]="583"
|
||||||
|
parent[20]="9"
|
||||||
|
|
||||||
|
agent_name[21]="macos-3"
|
||||||
|
x[21]="-140"
|
||||||
|
y[21]="299"
|
||||||
|
parent[21]="20"
|
||||||
|
|
||||||
|
agent_name[22]="windows-5"
|
||||||
|
x[22]="-390"
|
||||||
|
y[22]="385"
|
||||||
|
parent[22]="20"
|
||||||
|
|
||||||
|
agent_name[23]="windows-6"
|
||||||
|
x[23]="-470"
|
||||||
|
y[23]="671"
|
||||||
|
parent[23]="20"
|
||||||
|
|
||||||
|
agent_name[24]="linux-9"
|
||||||
|
x[24]="-296"
|
||||||
|
y[24]="899"
|
||||||
|
parent[24]="20"
|
||||||
|
|
||||||
|
agent_name[25]="linux-10"
|
||||||
|
x[25]="-25"
|
||||||
|
y[25]="961"
|
||||||
|
parent[25]="20"
|
||||||
|
|
||||||
|
agent_name[26]="linux-11"
|
||||||
|
x[26]="1683"
|
||||||
|
y[26]="13"
|
||||||
|
parent[26]="19"
|
||||||
|
|
||||||
|
agent_name[27]="linux-12"
|
||||||
|
x[27]="2135"
|
||||||
|
y[27]="51"
|
||||||
|
parent[27]="19"
|
@ -0,0 +1,9 @@
|
|||||||
|
[map_data]
|
||||||
|
|
||||||
|
name="Demo sunburst network map"
|
||||||
|
group="Demo servers"
|
||||||
|
description="This is a demo sunburst network map"
|
||||||
|
node_radius="40"
|
||||||
|
generation_method="radial_dynamic"
|
||||||
|
|
||||||
|
[map_items]
|
84
pandora_console/extras/demodata/reports/1-linux-report.prd
Normal file
84
pandora_console/extras/demodata/reports/1-linux-report.prd
Normal file
@ -0,0 +1,84 @@
|
|||||||
|
[report_data]
|
||||||
|
|
||||||
|
name="Linux report"
|
||||||
|
group="Demo servers"
|
||||||
|
description="This is a demo report for linux agents"
|
||||||
|
|
||||||
|
[report_items]
|
||||||
|
|
||||||
|
name[1]="Linux CPU Load graph"
|
||||||
|
type[1]="custom_graph"
|
||||||
|
graph_name[1]="Linux CPU Load"
|
||||||
|
periodicity[1]="86400"
|
||||||
|
|
||||||
|
name[2]="linux-1 httpd"
|
||||||
|
type[2]="SLA"
|
||||||
|
agent_name[2]="linux-1"
|
||||||
|
module[2]="Service httpd"
|
||||||
|
periodicity[2]="86400"
|
||||||
|
|
||||||
|
name[3]="linux-1 mysqld"
|
||||||
|
type[3]="SLA"
|
||||||
|
agent_name[3]="linux-1"
|
||||||
|
module[3]="Service mysqld"
|
||||||
|
periodicity[3]="86400"
|
||||||
|
|
||||||
|
name[4]="linux-1 CPU Load graph"
|
||||||
|
type[4]="simple_graph"
|
||||||
|
agent_name[4]="linux-1"
|
||||||
|
module[4]="CPU Load"
|
||||||
|
periodicity[4]="86400"
|
||||||
|
|
||||||
|
name[5]="linux-2 httpd"
|
||||||
|
type[5]="SLA"
|
||||||
|
agent_name[5]="linux-2"
|
||||||
|
module[5]="Service httpd"
|
||||||
|
periodicity[5]="86400"
|
||||||
|
|
||||||
|
name[6]="linux-2 mysqld"
|
||||||
|
type[6]="SLA"
|
||||||
|
agent_name[6]="linux-2"
|
||||||
|
module[6]="Service mysqld"
|
||||||
|
periodicity[6]="86400"
|
||||||
|
|
||||||
|
name[7]="linux-2 CPU Load graph"
|
||||||
|
type[7]="simple_graph"
|
||||||
|
agent_name[7]="linux-2"
|
||||||
|
module[7]="CPU Load"
|
||||||
|
periodicity[7]="86400"
|
||||||
|
|
||||||
|
name[8]="linux-3 httpd"
|
||||||
|
type[8]="SLA"
|
||||||
|
agent_name[8]="linux-3"
|
||||||
|
module[8]="Service httpd"
|
||||||
|
periodicity[8]="86400"
|
||||||
|
|
||||||
|
name[9]="linux-3 mysqld"
|
||||||
|
type[9]="SLA"
|
||||||
|
agent_name[9]="linux-3"
|
||||||
|
module[9]="Service mysqld"
|
||||||
|
periodicity[9]="86400"
|
||||||
|
|
||||||
|
name[10]="linux-3 CPU Load graph"
|
||||||
|
type[10]="simple_graph"
|
||||||
|
agent_name[10]="linux-3"
|
||||||
|
module[10]="CPU Load"
|
||||||
|
periodicity[10]="86400"
|
||||||
|
|
||||||
|
name[11]="linux-4 httpd"
|
||||||
|
type[11]="SLA"
|
||||||
|
agent_name[11]="linux-4"
|
||||||
|
module[11]="Service httpd"
|
||||||
|
periodicity[11]="86400"
|
||||||
|
|
||||||
|
name[12]="linux-4 mysqld"
|
||||||
|
type[12]="SLA"
|
||||||
|
agent_name[12]="linux-4"
|
||||||
|
module[12]="Service mysqld"
|
||||||
|
periodicity[12]="86400"
|
||||||
|
|
||||||
|
name[13]="linux-4 CPU Load graph"
|
||||||
|
type[13]="simple_graph"
|
||||||
|
agent_name[13]="linux-4"
|
||||||
|
module[13]="CPU Load"
|
||||||
|
periodicity[13]="86400"
|
26
pandora_console/extras/demodata/services/1-mysql-service.prd
Normal file
26
pandora_console/extras/demodata/services/1-mysql-service.prd
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
[service_data]
|
||||||
|
|
||||||
|
name="MySQL service"
|
||||||
|
group="Demo services"
|
||||||
|
description="This is a demo service for MySQL"
|
||||||
|
mode="smart"
|
||||||
|
critical="50"
|
||||||
|
warning="30"
|
||||||
|
|
||||||
|
[service_items]
|
||||||
|
|
||||||
|
type[1]="module"
|
||||||
|
agent_name[1]="linux-1"
|
||||||
|
module[1]="Service mysqld"
|
||||||
|
|
||||||
|
type[2]="module"
|
||||||
|
agent_name[2]="linux-2"
|
||||||
|
module[2]="Service mysqld"
|
||||||
|
|
||||||
|
type[3]="module"
|
||||||
|
agent_name[3]="linux-3"
|
||||||
|
module[3]="Service mysqld"
|
||||||
|
|
||||||
|
type[4]="module"
|
||||||
|
agent_name[4]="linux-4"
|
||||||
|
module[4]="Service mysqld"
|
26
pandora_console/extras/demodata/services/2-http-service.prd
Normal file
26
pandora_console/extras/demodata/services/2-http-service.prd
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
[service_data]
|
||||||
|
|
||||||
|
name="HTTP service"
|
||||||
|
group="Demo services"
|
||||||
|
description="This is a demo service for HTTP"
|
||||||
|
mode="smart"
|
||||||
|
critical="50"
|
||||||
|
warning="30"
|
||||||
|
|
||||||
|
[service_items]
|
||||||
|
|
||||||
|
type[1]="module"
|
||||||
|
agent_name[1]="linux-1"
|
||||||
|
module[1]="Service httpd"
|
||||||
|
|
||||||
|
type[2]="module"
|
||||||
|
agent_name[2]="linux-2"
|
||||||
|
module[2]="Service httpd"
|
||||||
|
|
||||||
|
type[3]="module"
|
||||||
|
agent_name[3]="linux-3"
|
||||||
|
module[3]="Service httpd"
|
||||||
|
|
||||||
|
type[4]="module"
|
||||||
|
agent_name[4]="linux-4"
|
||||||
|
module[4]="Service httpd"
|
@ -0,0 +1,16 @@
|
|||||||
|
[service_data]
|
||||||
|
|
||||||
|
name="Web cluster service"
|
||||||
|
group="Demo services"
|
||||||
|
description="This is a demo service for a clustered web"
|
||||||
|
mode="smart"
|
||||||
|
critical="50"
|
||||||
|
warning="50"
|
||||||
|
|
||||||
|
[service_items]
|
||||||
|
|
||||||
|
type[1]="service"
|
||||||
|
service_name[1]="MySQL service"
|
||||||
|
|
||||||
|
type[2]="service"
|
||||||
|
service_name[2]="HTTP service"
|
@ -0,0 +1,509 @@
|
|||||||
|
[visual_console_data]
|
||||||
|
|
||||||
|
name="Cisco visual console"
|
||||||
|
group="Demo network"
|
||||||
|
background_color="#000000"
|
||||||
|
width="1680"
|
||||||
|
height="945"
|
||||||
|
|
||||||
|
[visual_console_items]
|
||||||
|
|
||||||
|
type[1]="box"
|
||||||
|
width[1]="720"
|
||||||
|
height[1]="290"
|
||||||
|
x[1]="100"
|
||||||
|
y[1]="20"
|
||||||
|
border_color[1]="#cacab3"
|
||||||
|
fill_color[1]="#cacab3"
|
||||||
|
|
||||||
|
type[2]="box"
|
||||||
|
width[2]="720"
|
||||||
|
height[2]="290"
|
||||||
|
x[2]="860"
|
||||||
|
y[2]="20"
|
||||||
|
border_color[2]="#cacab3"
|
||||||
|
fill_color[2]="#cacab3"
|
||||||
|
|
||||||
|
type[3]="box"
|
||||||
|
width[3]="266"
|
||||||
|
height[3]="150"
|
||||||
|
x[3]="100"
|
||||||
|
y[3]="362"
|
||||||
|
border_color[3]="#352e28"
|
||||||
|
fill_color[3]="#352e28"
|
||||||
|
|
||||||
|
type[4]="box"
|
||||||
|
width[4]="266"
|
||||||
|
height[4]="150"
|
||||||
|
x[4]="403"
|
||||||
|
y[4]="362"
|
||||||
|
border_color[4]="#352e28"
|
||||||
|
fill_color[4]="#352e28"
|
||||||
|
|
||||||
|
type[5]="box"
|
||||||
|
width[5]="266"
|
||||||
|
height[5]="150"
|
||||||
|
x[5]="708"
|
||||||
|
y[5]="362"
|
||||||
|
border_color[5]="#352e28"
|
||||||
|
fill_color[5]="#352e28"
|
||||||
|
|
||||||
|
type[6]="box"
|
||||||
|
width[6]="266"
|
||||||
|
height[6]="150"
|
||||||
|
x[6]="1013"
|
||||||
|
y[6]="362"
|
||||||
|
border_color[6]="#352e28"
|
||||||
|
fill_color[6]="#352e28"
|
||||||
|
|
||||||
|
type[7]="box"
|
||||||
|
width[7]="266"
|
||||||
|
height[7]="150"
|
||||||
|
x[7]="1313"
|
||||||
|
y[7]="362"
|
||||||
|
border_color[7]="#352e28"
|
||||||
|
fill_color[7]="#352e28"
|
||||||
|
|
||||||
|
type[8]="box"
|
||||||
|
width[8]="460"
|
||||||
|
height[8]="362"
|
||||||
|
x[8]="100"
|
||||||
|
y[8]="564"
|
||||||
|
border_color[8]="#b3cdc1"
|
||||||
|
fill_color[8]="#b3cdc1"
|
||||||
|
|
||||||
|
type[9]="box"
|
||||||
|
width[9]="460"
|
||||||
|
height[9]="362"
|
||||||
|
x[9]="1115"
|
||||||
|
y[9]="557"
|
||||||
|
border_color[9]="#b3cdc1"
|
||||||
|
fill_color[9]="#b3cdc1"
|
||||||
|
|
||||||
|
type[10]="label"
|
||||||
|
label_position[10]="down"
|
||||||
|
width[10]="0"
|
||||||
|
height[10]="20"
|
||||||
|
x[10]="135"
|
||||||
|
y[10]="50"
|
||||||
|
label[10]='<p><span style="font-size: 26px; color: #181818; line-height: 1em;">CPU Usage</span></p>'
|
||||||
|
show_on_top[10]=true
|
||||||
|
|
||||||
|
type[11]="label"
|
||||||
|
label_position[11]="down"
|
||||||
|
width[11]="0"
|
||||||
|
height[11]="20"
|
||||||
|
x[11]="895"
|
||||||
|
y[11]="50"
|
||||||
|
label[11]='<p><span style="font-size: 26px; color: #181818; line-height: 1em;">Ping / Latency</span></p>'
|
||||||
|
show_on_top[11]=true
|
||||||
|
|
||||||
|
type[12]="label"
|
||||||
|
label_position[12]="down"
|
||||||
|
width[12]="0"
|
||||||
|
height[12]="20"
|
||||||
|
x[12]="135"
|
||||||
|
y[12]="382"
|
||||||
|
label[12]='<p><span style="font-size: 22px; color: #ffffff; line-height: 1.3em;"><strong>Gi0/0 InOctets</strong></span></p>'
|
||||||
|
show_on_top[12]=true
|
||||||
|
|
||||||
|
type[13]="label"
|
||||||
|
label_position[13]="down"
|
||||||
|
width[13]="0"
|
||||||
|
height[13]="20"
|
||||||
|
x[13]="438"
|
||||||
|
y[13]="382"
|
||||||
|
label[13]='<p><span style="font-size: 22px; color: #ffffff; line-height: 1.3em;"><strong>Gi0/1 InOctets</strong></span></p>'
|
||||||
|
show_on_top[13]=true
|
||||||
|
|
||||||
|
type[14]="label"
|
||||||
|
label_position[14]="down"
|
||||||
|
width[14]="0"
|
||||||
|
height[14]="20"
|
||||||
|
x[14]="743"
|
||||||
|
y[14]="382"
|
||||||
|
label[14]='<p><span style="font-size: 22px; color: #ffffff; line-height: 1.3em;"><strong>Gi0/2 InOctets</strong></span></p>'
|
||||||
|
show_on_top[14]=true
|
||||||
|
|
||||||
|
type[15]="label"
|
||||||
|
label_position[15]="down"
|
||||||
|
width[15]="0"
|
||||||
|
height[15]="20"
|
||||||
|
x[15]="1048"
|
||||||
|
y[15]="382"
|
||||||
|
label[15]='<p><span style="font-size: 22px; color: #ffffff; line-height: 1.3em;"><strong>Gi0/3 InOctets</strong></span></p>'
|
||||||
|
show_on_top[15]=true
|
||||||
|
|
||||||
|
type[16]="label"
|
||||||
|
label_position[16]="down"
|
||||||
|
width[16]="0"
|
||||||
|
height[16]="20"
|
||||||
|
x[16]="1349"
|
||||||
|
y[16]="382"
|
||||||
|
label[16]='<p><span style="font-size: 22px; color: #ffffff; line-height: 1.3em;"><strong>Gi0/4 InOctets</strong></span></p>'
|
||||||
|
show_on_top[16]=true
|
||||||
|
|
||||||
|
type[17]="label"
|
||||||
|
label_position[17]="down"
|
||||||
|
width[17]="100"
|
||||||
|
height[17]="15"
|
||||||
|
x[17]="126"
|
||||||
|
y[17]="573"
|
||||||
|
label[17]='<p><span style="font-size: 16px; color: #181818; line-height: 1em;">Min</span></p>'
|
||||||
|
show_on_top[17]=true
|
||||||
|
|
||||||
|
type[18]="label"
|
||||||
|
label_position[18]="down"
|
||||||
|
width[18]="100"
|
||||||
|
height[18]="15"
|
||||||
|
x[18]="126"
|
||||||
|
y[18]="640"
|
||||||
|
label[18]='<p><span style="font-size: 16px; color: #181818; line-height: 1em;">Max</span></p>'
|
||||||
|
show_on_top[18]=true
|
||||||
|
|
||||||
|
type[19]="label"
|
||||||
|
label_position[19]="down"
|
||||||
|
width[19]="100"
|
||||||
|
height[19]="15"
|
||||||
|
x[19]="1137"
|
||||||
|
y[19]="564"
|
||||||
|
label[19]='<p><span style="font-size: 16px; color: #181818; line-height: 1em;">Min</span></p>'
|
||||||
|
show_on_top[19]=true
|
||||||
|
|
||||||
|
type[20]="label"
|
||||||
|
label_position[20]="down"
|
||||||
|
width[20]="100"
|
||||||
|
height[20]="15"
|
||||||
|
x[20]="1137"
|
||||||
|
y[20]="626"
|
||||||
|
label[20]='<p><span style="font-size: 16px; color: #181818; line-height: 1em;">Max</span></p>'
|
||||||
|
show_on_top[20]=true
|
||||||
|
|
||||||
|
type[21]="value"
|
||||||
|
label_position[21]="down"
|
||||||
|
width[21]="0"
|
||||||
|
height[21]="20"
|
||||||
|
x[21]="609"
|
||||||
|
y[21]="50"
|
||||||
|
label[21]='<p style="text-align: right;"><span style="font-size: 16px; color: #181818; line-height: 1em;">Avg. last 24 hours: (_value_)</span></p>'
|
||||||
|
show_on_top[21]=true
|
||||||
|
agent_name[21]="cisco-1"
|
||||||
|
module[21]="CPU Usage (5 min avg)"
|
||||||
|
process[21]="avg"
|
||||||
|
interval[21]="86400"
|
||||||
|
|
||||||
|
type[22]="value"
|
||||||
|
label_position[22]="down"
|
||||||
|
width[22]="0"
|
||||||
|
height[22]="20"
|
||||||
|
x[22]="135"
|
||||||
|
y[22]="96"
|
||||||
|
label[22]='<p><span style="font-size: 50px; color: #181818; line-height: 1em;">(_value_) </span></p>'
|
||||||
|
show_on_top[22]=true
|
||||||
|
agent_name[22]="cisco-1"
|
||||||
|
module[22]="CPU Usage (5 min avg)"
|
||||||
|
|
||||||
|
type[23]="value"
|
||||||
|
label_position[23]="down"
|
||||||
|
width[23]="0"
|
||||||
|
height[23]="20"
|
||||||
|
x[23]="1364"
|
||||||
|
y[23]="50"
|
||||||
|
label[23]='<p style="text-align: right;"><span style="font-size: 16px; color: #181818; line-height: 1em;">Avg. last 24 hours: (_value_)</span></p>'
|
||||||
|
show_on_top[23]=true
|
||||||
|
agent_name[23]="cisco-1"
|
||||||
|
module[23]="Latency"
|
||||||
|
process[23]="avg"
|
||||||
|
interval[23]="86400"
|
||||||
|
|
||||||
|
type[24]="value"
|
||||||
|
label_position[24]="down"
|
||||||
|
width[24]="0"
|
||||||
|
height[24]="20"
|
||||||
|
x[24]="895"
|
||||||
|
y[24]="96"
|
||||||
|
label[24]='<p><span style="font-size: 50px; color: #181818; line-height: 1em;">(_value_)</span></p>'
|
||||||
|
show_on_top[24]=true
|
||||||
|
agent_name[24]="cisco-1"
|
||||||
|
module[24]="Latency"
|
||||||
|
|
||||||
|
type[25]="value"
|
||||||
|
label_position[25]="down"
|
||||||
|
width[25]="0"
|
||||||
|
height[25]="20"
|
||||||
|
x[25]="135"
|
||||||
|
y[25]="472"
|
||||||
|
label[25]='<p style="text-align: right;"><span style="font-size: 16px; color: #cccccc; line-height: 1em;">Avg. last 24 hours (_value_)</span></p>'
|
||||||
|
show_on_top[25]=true
|
||||||
|
agent_name[25]="cisco-1"
|
||||||
|
module[25]="Gi0/0_ifInOctets"
|
||||||
|
process[25]="avg"
|
||||||
|
interval[25]="86400"
|
||||||
|
|
||||||
|
type[26]="value"
|
||||||
|
label_position[26]="down"
|
||||||
|
width[26]="0"
|
||||||
|
height[26]="20"
|
||||||
|
x[26]="135"
|
||||||
|
y[26]="417"
|
||||||
|
label[26]='<p><span style="font-size: 32px; color: #ffffff; line-height: 1em;">(_value_) </span></p>'
|
||||||
|
show_on_top[26]=true
|
||||||
|
agent_name[26]="cisco-1"
|
||||||
|
module[26]="Gi0/0_ifInOctets"
|
||||||
|
|
||||||
|
type[27]="value"
|
||||||
|
label_position[27]="down"
|
||||||
|
width[27]="0"
|
||||||
|
height[27]="20"
|
||||||
|
x[27]="438"
|
||||||
|
y[27]="472"
|
||||||
|
label[27]='<p style="text-align: right;"><span style="font-size: 16px; color: #cccccc; line-height: 1em;">Avg. last 24 hours (_value_)</span></p>'
|
||||||
|
show_on_top[27]=true
|
||||||
|
agent_name[27]="cisco-1"
|
||||||
|
module[27]="Gi0/1_ifInOctets"
|
||||||
|
process[27]="avg"
|
||||||
|
interval[27]="86400"
|
||||||
|
|
||||||
|
type[28]="value"
|
||||||
|
label_position[28]="down"
|
||||||
|
width[28]="0"
|
||||||
|
height[28]="20"
|
||||||
|
x[28]="438"
|
||||||
|
y[28]="417"
|
||||||
|
label[28]='<p><span style="font-size: 32px; color: #ffffff; line-height: 1em;">(_value_) </span></p>'
|
||||||
|
show_on_top[28]=true
|
||||||
|
agent_name[28]="cisco-1"
|
||||||
|
module[28]="Gi0/1_ifInOctets"
|
||||||
|
|
||||||
|
type[29]="value"
|
||||||
|
label_position[29]="down"
|
||||||
|
width[29]="0"
|
||||||
|
height[29]="20"
|
||||||
|
x[29]="743"
|
||||||
|
y[29]="472"
|
||||||
|
label[29]='<p style="text-align: right;"><span style="font-size: 16px; color: #cccccc; line-height: 1em;">Avg. last 24 hours (_value_)</span></p>'
|
||||||
|
show_on_top[29]=true
|
||||||
|
agent_name[29]="cisco-1"
|
||||||
|
module[29]="Gi0/2_ifInOctets"
|
||||||
|
process[29]="avg"
|
||||||
|
interval[29]="86400"
|
||||||
|
|
||||||
|
type[30]="value"
|
||||||
|
label_position[30]="down"
|
||||||
|
width[30]="0"
|
||||||
|
height[30]="20"
|
||||||
|
x[30]="743"
|
||||||
|
y[30]="417"
|
||||||
|
label[30]='<p><span style="font-size: 32px; color: #ffffff; line-height: 1em;">(_value_) </span></p>'
|
||||||
|
show_on_top[30]=true
|
||||||
|
agent_name[30]="cisco-1"
|
||||||
|
module[30]="Gi0/2_ifInOctets"
|
||||||
|
|
||||||
|
type[31]="value"
|
||||||
|
label_position[31]="down"
|
||||||
|
width[31]="0"
|
||||||
|
height[31]="20"
|
||||||
|
x[31]="1048"
|
||||||
|
y[31]="472"
|
||||||
|
label[31]='<p style="text-align: right;"><span style="font-size: 16px; color: #cccccc; line-height: 1em;">Avg. last 24 hours (_value_)</span></p>'
|
||||||
|
show_on_top[31]=true
|
||||||
|
agent_name[31]="cisco-1"
|
||||||
|
module[31]="Gi0/3_ifInOctets"
|
||||||
|
process[31]="avg"
|
||||||
|
interval[31]="86400"
|
||||||
|
|
||||||
|
type[32]="value"
|
||||||
|
label_position[32]="down"
|
||||||
|
width[32]="0"
|
||||||
|
height[32]="20"
|
||||||
|
x[32]="1048"
|
||||||
|
y[32]="417"
|
||||||
|
label[32]='<p><span style="font-size: 32px; color: #ffffff; line-height: 1em;">(_value_) </span></p>'
|
||||||
|
show_on_top[32]=true
|
||||||
|
agent_name[32]="cisco-1"
|
||||||
|
module[32]="Gi0/3_ifInOctets"
|
||||||
|
|
||||||
|
type[33]="value"
|
||||||
|
label_position[33]="down"
|
||||||
|
width[33]="0"
|
||||||
|
height[33]="20"
|
||||||
|
x[33]="1349"
|
||||||
|
y[33]="472"
|
||||||
|
label[33]='<p style="text-align: right;"><span style="font-size: 16px; color: #cccccc; line-height: 1em;">Avg. last 24 hours (_value_)</span></p>'
|
||||||
|
show_on_top[33]=true
|
||||||
|
agent_name[33]="cisco-1"
|
||||||
|
module[33]="Gi0/4_ifInOctets"
|
||||||
|
process[33]="avg"
|
||||||
|
interval[33]="86400"
|
||||||
|
|
||||||
|
type[34]="value"
|
||||||
|
label_position[34]="down"
|
||||||
|
width[34]="0"
|
||||||
|
height[34]="20"
|
||||||
|
x[34]="1349"
|
||||||
|
y[34]="417"
|
||||||
|
label[34]='<p><span style="font-size: 32px; color: #ffffff; line-height: 1em;">(_value_) </span></p>'
|
||||||
|
show_on_top[34]=true
|
||||||
|
agent_name[34]="cisco-1"
|
||||||
|
module[34]="Gi0/4_ifInOctets"
|
||||||
|
|
||||||
|
type[35]="value"
|
||||||
|
label_position[35]="down"
|
||||||
|
width[35]="0"
|
||||||
|
height[35]="20"
|
||||||
|
x[35]="124"
|
||||||
|
y[35]="602"
|
||||||
|
label[35]='<p><span style="font-size: 50px; color: #181818; line-height: 1em;">(_value_)</span></p>'
|
||||||
|
show_on_top[35]=true
|
||||||
|
agent_name[35]="cisco-1"
|
||||||
|
module[35]=ipInReceives
|
||||||
|
process[35]="min"
|
||||||
|
interval[35]="86400"
|
||||||
|
|
||||||
|
type[36]="value"
|
||||||
|
label_position[36]="down"
|
||||||
|
width[36]="0"
|
||||||
|
height[36]="20"
|
||||||
|
x[36]="124"
|
||||||
|
y[36]="669"
|
||||||
|
label[36]='<p><span style="font-size: 50px; color: #181818; line-height: 1em;">(_value_)</span></p>'
|
||||||
|
show_on_top[36]=true
|
||||||
|
agent_name[36]="cisco-1"
|
||||||
|
module[36]=ipInReceives
|
||||||
|
process[36]="max"
|
||||||
|
interval[36]="86400"
|
||||||
|
|
||||||
|
type[37]="value"
|
||||||
|
label_position[37]="down"
|
||||||
|
width[37]="0"
|
||||||
|
height[37]="20"
|
||||||
|
x[37]="1138"
|
||||||
|
y[37]="591"
|
||||||
|
label[37]='<p><span style="font-size: 50px; color: #181818; line-height: 1em;">(_value_)</span></p>'
|
||||||
|
show_on_top[37]=true
|
||||||
|
agent_name[37]="cisco-1"
|
||||||
|
module[37]=ipOutRequests
|
||||||
|
process[37]="min"
|
||||||
|
interval[37]="86400"
|
||||||
|
|
||||||
|
type[38]="value"
|
||||||
|
label_position[38]="down"
|
||||||
|
width[38]="0"
|
||||||
|
height[38]="20"
|
||||||
|
x[38]="1138"
|
||||||
|
y[38]="658"
|
||||||
|
label[38]='<p><span style="font-size: 50px; color: #181818; line-height: 1em;">(_value_)</span></p>'
|
||||||
|
show_on_top[38]=true
|
||||||
|
agent_name[38]="cisco-1"
|
||||||
|
module[38]=ipOutRequests
|
||||||
|
process[38]="max"
|
||||||
|
interval[38]="86400"
|
||||||
|
|
||||||
|
type[39]="static_image"
|
||||||
|
image[39]="dot"
|
||||||
|
width[39]="30"
|
||||||
|
height[39]="36"
|
||||||
|
x[39]="701"
|
||||||
|
y[39]="595"
|
||||||
|
label[39]='<p><span style="color: rgb(255, 255, 255);"><strong><span style="font-size: 18pt;">_module_</span></strong></span></p>'
|
||||||
|
label_position[39]="right"
|
||||||
|
agent_name[39]="cisco-1"
|
||||||
|
module[39]="Gi0/0_ifOperStatus"
|
||||||
|
|
||||||
|
type[40]="static_image"
|
||||||
|
image[40]="dot"
|
||||||
|
width[40]="30"
|
||||||
|
height[40]="36"
|
||||||
|
x[40]="701"
|
||||||
|
y[40]="655"
|
||||||
|
label[40]='<p><span style="color: rgb(255, 255, 255);"><strong><span style="font-size: 18pt;">_module_</span></strong></span></p>'
|
||||||
|
label_position[40]="right"
|
||||||
|
agent_name[40]="cisco-1"
|
||||||
|
module[40]="Gi0/1_ifOperStatus"
|
||||||
|
|
||||||
|
type[41]="static_image"
|
||||||
|
image[41]="dot"
|
||||||
|
width[41]="30"
|
||||||
|
height[41]="36"
|
||||||
|
x[41]="701"
|
||||||
|
y[41]="713"
|
||||||
|
label[41]='<p><span style="color: rgb(255, 255, 255);"><strong><span style="font-size: 18pt;">_module_</span></strong></span></p>'
|
||||||
|
label_position[41]="right"
|
||||||
|
agent_name[41]="cisco-1"
|
||||||
|
module[41]="Gi0/2_ifOperStatus"
|
||||||
|
|
||||||
|
type[42]="static_image"
|
||||||
|
image[42]="dot"
|
||||||
|
width[42]="30"
|
||||||
|
height[42]="36"
|
||||||
|
x[42]="701"
|
||||||
|
y[42]="771"
|
||||||
|
label[42]='<p><span style="color: rgb(255, 255, 255);"><strong><span style="font-size: 18pt;">_module_</span></strong></span></p>'
|
||||||
|
label_position[42]="right"
|
||||||
|
agent_name[42]="cisco-1"
|
||||||
|
module[42]="Gi0/3_ifOperStatus"
|
||||||
|
|
||||||
|
type[43]="static_image"
|
||||||
|
image[43]="dot"
|
||||||
|
width[43]="30"
|
||||||
|
height[43]="36"
|
||||||
|
x[43]="701"
|
||||||
|
y[43]="828"
|
||||||
|
label[43]='<p><span style="color: rgb(255, 255, 255);"><strong><span style="font-size: 18pt;">_module_</span></strong></span></p>'
|
||||||
|
label_position[43]="right"
|
||||||
|
agent_name[43]="cisco-1"
|
||||||
|
module[43]="Gi0/4_ifOperStatus"
|
||||||
|
|
||||||
|
type[44]="module_graph"
|
||||||
|
width[44]="652"
|
||||||
|
height[44]="110"
|
||||||
|
x[44]="135"
|
||||||
|
y[44]="166"
|
||||||
|
agent_name[44]="cisco-1"
|
||||||
|
module[44]="CPU Usage (5 min avg)"
|
||||||
|
image[44]="transparent"
|
||||||
|
graph_type[44]="area"
|
||||||
|
interval[44]="86400"
|
||||||
|
show_on_top[44]=true
|
||||||
|
|
||||||
|
type[45]="module_graph"
|
||||||
|
width[45]="295"
|
||||||
|
height[45]="87"
|
||||||
|
x[45]="895"
|
||||||
|
y[45]="189"
|
||||||
|
agent_name[45]="cisco-1"
|
||||||
|
module[45]="Host Alive"
|
||||||
|
image[45]="transparent"
|
||||||
|
graph_type[45]="area"
|
||||||
|
interval[45]="86400"
|
||||||
|
show_on_top[45]=true
|
||||||
|
|
||||||
|
type[46]="module_graph"
|
||||||
|
width[46]="295"
|
||||||
|
height[46]="87"
|
||||||
|
x[46]="1252"
|
||||||
|
y[46]="189"
|
||||||
|
agent_name[46]="cisco-1"
|
||||||
|
module[46]="Latency"
|
||||||
|
image[46]="transparent"
|
||||||
|
graph_type[46]="area"
|
||||||
|
interval[46]="86400"
|
||||||
|
show_on_top[46]=true
|
||||||
|
|
||||||
|
type[47]="odometer"
|
||||||
|
width[47]="412"
|
||||||
|
height[47]="11"
|
||||||
|
x[47]="123"
|
||||||
|
y[47]="719"
|
||||||
|
agent_name[47]="cisco-1"
|
||||||
|
module[47]="ipInReceives"
|
||||||
|
show_on_top[47]=true
|
||||||
|
|
||||||
|
type[48]="odometer"
|
||||||
|
width[48]="412"
|
||||||
|
height[48]="11"
|
||||||
|
x[48]="1142"
|
||||||
|
y[48]="710"
|
||||||
|
agent_name[48]="cisco-1"
|
||||||
|
module[48]="ipOutRequests"
|
||||||
|
show_on_top[48]=true
|
@ -0,0 +1,295 @@
|
|||||||
|
[visual_console_data]
|
||||||
|
|
||||||
|
name="Linux visual console"
|
||||||
|
group="Demo servers"
|
||||||
|
background_color="#f2f3f3"
|
||||||
|
width="1680"
|
||||||
|
height="945"
|
||||||
|
|
||||||
|
[visual_console_items]
|
||||||
|
|
||||||
|
type[1]="box"
|
||||||
|
width[1]="1205"
|
||||||
|
height[1]="560"
|
||||||
|
x[1]="30"
|
||||||
|
y[1]="30"
|
||||||
|
border_color[1]="#ffffff"
|
||||||
|
fill_color[1]="#ffffff"
|
||||||
|
|
||||||
|
type[2]="box"
|
||||||
|
width[2]="386"
|
||||||
|
height[2]="560"
|
||||||
|
x[2]="1264"
|
||||||
|
y[2]="30"
|
||||||
|
border_color[2]="#ffffff"
|
||||||
|
fill_color[2]="#ffffff"
|
||||||
|
|
||||||
|
type[3]="box"
|
||||||
|
width[3]="390"
|
||||||
|
height[3]="205"
|
||||||
|
x[3]="30"
|
||||||
|
y[3]="650"
|
||||||
|
border_color[3]="#eaf0ff"
|
||||||
|
fill_color[3]="#eaf0ff"
|
||||||
|
|
||||||
|
type[4]="box"
|
||||||
|
width[4]="390"
|
||||||
|
height[4]="205"
|
||||||
|
x[4]="441"
|
||||||
|
y[4]="650"
|
||||||
|
border_color[4]="#fef1ea"
|
||||||
|
fill_color[4]="#fef1ea"
|
||||||
|
|
||||||
|
type[5]="box"
|
||||||
|
width[5]="390"
|
||||||
|
height[5]="205"
|
||||||
|
x[5]="850"
|
||||||
|
y[5]="650"
|
||||||
|
border_color[5]="#d8daff"
|
||||||
|
fill_color[5]="#d8daff"
|
||||||
|
|
||||||
|
type[6]="box"
|
||||||
|
width[6]="390"
|
||||||
|
height[6]="205"
|
||||||
|
x[6]="1264"
|
||||||
|
y[6]="650"
|
||||||
|
border_color[6]="#d4edd7"
|
||||||
|
fill_color[6]="#d4edd7"
|
||||||
|
|
||||||
|
type[7]="label"
|
||||||
|
label_position[7]="down"
|
||||||
|
width[7]="239"
|
||||||
|
height[7]="20"
|
||||||
|
x[7]="60"
|
||||||
|
y[7]="60"
|
||||||
|
label[7]='<p><span style="font-size: 24px; color: #08122a; line-height: 1em; font-weight: 900;">Network usage</span></p>'
|
||||||
|
show_on_top[7]=true
|
||||||
|
|
||||||
|
type[8]="label"
|
||||||
|
label_position[8]="down"
|
||||||
|
width[8]="239"
|
||||||
|
height[8]="20"
|
||||||
|
x[8]="1282"
|
||||||
|
y[8]="48"
|
||||||
|
label[8]='<p><span style="font-size: 24px; color: #08122a; line-height: 1em; font-weight: 900;">Performance</span></p>'
|
||||||
|
show_on_top[8]=true
|
||||||
|
|
||||||
|
type[9]="label"
|
||||||
|
label_position[9]="down"
|
||||||
|
width[9]="239"
|
||||||
|
height[9]="20"
|
||||||
|
x[9]="60"
|
||||||
|
y[9]="680"
|
||||||
|
label[9]='<p><span style="font-size: 24px; color: #08122a; line-height: 1em; font-weight: 900;">Service httpd</span></p>'
|
||||||
|
show_on_top[9]=true
|
||||||
|
|
||||||
|
type[10]="label"
|
||||||
|
label_position[10]="down"
|
||||||
|
width[10]="239"
|
||||||
|
height[10]="20"
|
||||||
|
x[10]="470"
|
||||||
|
y[10]="680"
|
||||||
|
label[10]='<p><span style="font-size: 24px; color: #08122a; line-height: 1em; font-weight: 900;">CPU Load</span></p>'
|
||||||
|
show_on_top[10]=true
|
||||||
|
|
||||||
|
type[11]="label"
|
||||||
|
label_position[11]="down"
|
||||||
|
width[11]="239"
|
||||||
|
height[11]="20"
|
||||||
|
x[11]="880"
|
||||||
|
y[11]="680"
|
||||||
|
label[11]='<p><span style="font-size: 24px; color: #08122a; line-height: 1em; font-weight: 900;">Memory usage</span></p>'
|
||||||
|
show_on_top[11]=true
|
||||||
|
|
||||||
|
type[12]="label"
|
||||||
|
label_position[12]="down"
|
||||||
|
width[12]="239"
|
||||||
|
height[12]="20"
|
||||||
|
x[12]="1294"
|
||||||
|
y[12]="680"
|
||||||
|
label[12]='<p><span style="font-size: 24px; color: #08122a; line-height: 1em; font-weight: 900;">Disk usage</span></p>'
|
||||||
|
show_on_top[12]=true
|
||||||
|
|
||||||
|
type[13]="label"
|
||||||
|
label_position[13]="down"
|
||||||
|
width[13]="181"
|
||||||
|
height[13]="16"
|
||||||
|
x[13]="63"
|
||||||
|
y[13]="158"
|
||||||
|
label[13]='<p><span style="font-size: 16px; color: #898989; line-height: 1em;">Min. today</span></p>'
|
||||||
|
show_on_top[13]=true
|
||||||
|
|
||||||
|
type[14]="label"
|
||||||
|
label_position[14]="down"
|
||||||
|
width[14]="181"
|
||||||
|
height[14]="16"
|
||||||
|
x[14]="469"
|
||||||
|
y[14]="158"
|
||||||
|
label[14]='<p><span style="font-size: 16px; color: #898989; line-height: 1em;">Avg. today</span></p>'
|
||||||
|
show_on_top[14]=true
|
||||||
|
|
||||||
|
type[15]="label"
|
||||||
|
label_position[15]="down"
|
||||||
|
width[15]="181"
|
||||||
|
height[15]="16"
|
||||||
|
x[15]="879"
|
||||||
|
y[15]="158"
|
||||||
|
label[15]='<p><span style="font-size: 16px; color: #898989; line-height: 1em;">Max. today</span></p>'
|
||||||
|
show_on_top[15]=true
|
||||||
|
|
||||||
|
type[16]="value"
|
||||||
|
label_position[16]="down"
|
||||||
|
width[16]="400"
|
||||||
|
height[16]="50"
|
||||||
|
x[16]="60"
|
||||||
|
y[16]="100"
|
||||||
|
label[16]='<p><span style="font-size: 50px; color: #08122a; line-height: 1em;">(_value_)</span></p>'
|
||||||
|
show_on_top[16]=true
|
||||||
|
agent_name[16]="linux-1"
|
||||||
|
module[16]="Network Usage"
|
||||||
|
process[16]="min"
|
||||||
|
interval[16]="86400"
|
||||||
|
|
||||||
|
type[17]="value"
|
||||||
|
label_position[17]="down"
|
||||||
|
width[17]="400"
|
||||||
|
height[17]="50"
|
||||||
|
x[17]="468"
|
||||||
|
y[17]="100"
|
||||||
|
label[17]='<p><span style="font-size: 50px; color: #08122a; line-height: 1em;">(_value_)</span></p>'
|
||||||
|
show_on_top[17]=true
|
||||||
|
agent_name[17]="linux-1"
|
||||||
|
module[17]="Network Usage"
|
||||||
|
process[17]="avg"
|
||||||
|
interval[17]="86400"
|
||||||
|
|
||||||
|
type[18]="value"
|
||||||
|
label_position[18]="down"
|
||||||
|
width[18]="400"
|
||||||
|
height[18]="50"
|
||||||
|
x[18]="876"
|
||||||
|
y[18]="100"
|
||||||
|
label[18]='<p><span style="font-size: 50px; color: #08122a; line-height: 1em;">(_value_)</span></p>'
|
||||||
|
show_on_top[18]=true
|
||||||
|
agent_name[18]="linux-1"
|
||||||
|
module[18]="Network Usage"
|
||||||
|
process[18]="max"
|
||||||
|
interval[18]="86400"
|
||||||
|
|
||||||
|
type[19]="value"
|
||||||
|
label_position[19]="down"
|
||||||
|
width[19]="330"
|
||||||
|
height[19]="30"
|
||||||
|
x[19]="470"
|
||||||
|
y[19]="722"
|
||||||
|
label[19]='<p><span style="font-size: 40px; color: #08122a; line-height: 1em;">(_value_)</span></p>'
|
||||||
|
show_on_top[19]=true
|
||||||
|
agent_name[19]="linux-1"
|
||||||
|
module[19]="CPU Load"
|
||||||
|
|
||||||
|
type[20]="value"
|
||||||
|
label_position[20]="down"
|
||||||
|
width[20]="330"
|
||||||
|
height[20]="30"
|
||||||
|
x[20]="880"
|
||||||
|
y[20]="722"
|
||||||
|
label[20]='<p><span style="font-size: 40px; color: #08122a; line-height: 1em;">(_value_)</span></p>'
|
||||||
|
show_on_top[20]=true
|
||||||
|
agent_name[20]="linux-1"
|
||||||
|
module[20]="Memory Usage"
|
||||||
|
|
||||||
|
type[21]="value"
|
||||||
|
label_position[21]="down"
|
||||||
|
width[21]="330"
|
||||||
|
height[21]="30"
|
||||||
|
x[21]="1294"
|
||||||
|
y[21]="722"
|
||||||
|
label[21]='<p><span style="font-size: 40px; color: #08122a; line-height: 1em;">(_value_)</span></p>'
|
||||||
|
show_on_top[21]=true
|
||||||
|
agent_name[21]="linux-1"
|
||||||
|
module[21]="Disk Usage"
|
||||||
|
|
||||||
|
type[22]="percentile"
|
||||||
|
width[22]="330"
|
||||||
|
height[22]="100"
|
||||||
|
x[22]="470"
|
||||||
|
y[22]="790"
|
||||||
|
show_on_top[22]=true
|
||||||
|
agent_name[22]="linux-1"
|
||||||
|
module[22]="CPU Load"
|
||||||
|
min[22]="0"
|
||||||
|
max[22]="100"
|
||||||
|
|
||||||
|
type[23]="percentile"
|
||||||
|
width[23]="330"
|
||||||
|
height[23]="100"
|
||||||
|
x[23]="880"
|
||||||
|
y[23]="790"
|
||||||
|
show_on_top[23]=true
|
||||||
|
agent_name[23]="linux-1"
|
||||||
|
module[23]="Memory Usage"
|
||||||
|
min[23]="0"
|
||||||
|
max[23]="100"
|
||||||
|
|
||||||
|
type[24]="percentile"
|
||||||
|
width[24]="330"
|
||||||
|
height[24]="100"
|
||||||
|
x[24]="1294"
|
||||||
|
y[24]="790"
|
||||||
|
show_on_top[24]=true
|
||||||
|
agent_name[24]="linux-1"
|
||||||
|
module[24]="Disk Usage"
|
||||||
|
min[24]="0"
|
||||||
|
max[24]="100"
|
||||||
|
|
||||||
|
type[25]="module_graph"
|
||||||
|
width[25]="1150"
|
||||||
|
height[25]="320"
|
||||||
|
x[25]="58"
|
||||||
|
y[25]="196"
|
||||||
|
agent_name[25]="linux-1"
|
||||||
|
module[25]="Network Usage"
|
||||||
|
image[25]="transparent"
|
||||||
|
graph_type[25]="line"
|
||||||
|
interval[25]="86400"
|
||||||
|
show_on_top[25]=true
|
||||||
|
|
||||||
|
type[26]="basic_chart"
|
||||||
|
width[26]="325"
|
||||||
|
height[26]="110"
|
||||||
|
x[26]="1294"
|
||||||
|
y[26]="100"
|
||||||
|
agent_name[26]="linux-1"
|
||||||
|
module[26]="CPU Load"
|
||||||
|
interval[26]="86400"
|
||||||
|
show_on_top[26]=true
|
||||||
|
|
||||||
|
type[27]="basic_chart"
|
||||||
|
width[27]="325"
|
||||||
|
height[27]="110"
|
||||||
|
x[27]="1294"
|
||||||
|
y[27]="268"
|
||||||
|
agent_name[27]="linux-1"
|
||||||
|
module[27]="Memory Usage"
|
||||||
|
interval[27]="86400"
|
||||||
|
show_on_top[27]=true
|
||||||
|
|
||||||
|
type[28]="basic_chart"
|
||||||
|
width[28]="325"
|
||||||
|
height[28]="110"
|
||||||
|
x[28]="1294"
|
||||||
|
y[28]="432"
|
||||||
|
agent_name[28]="linux-1"
|
||||||
|
module[28]="Disk Usage"
|
||||||
|
interval[28]="86400"
|
||||||
|
show_on_top[28]=true
|
||||||
|
|
||||||
|
type[29]="event_history"
|
||||||
|
width[29]="330"
|
||||||
|
height[29]="103"
|
||||||
|
x[29]="60"
|
||||||
|
y[29]="713"
|
||||||
|
show_on_top[29]=true
|
||||||
|
agent_name[29]="linux-1"
|
||||||
|
module[29]="Service httpd"
|
||||||
|
interval[29]="86400"
|
18
pandora_console/extras/discovery/DiscoveryApps.csv
Normal file
18
pandora_console/extras/discovery/DiscoveryApps.csv
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
pandorafms.aws.ec2;Amazon EC2;cloud;1;pandorafms.aws.ec2.png;https://pandorafms.com/library/aws-ec2-discovery/
|
||||||
|
pandorafms.aws.rds;Amazon RDS;cloud;1;pandorafms.aws.rds.png;https://pandorafms.com/library/aws-rds-discovery/
|
||||||
|
pandorafms.aws.s3;Amazon S3;cloud;1;pandorafms.aws.s3.png;https://pandorafms.com/library/aws-s3-discovery/
|
||||||
|
pandorafms.azure.mc;Azure Microsoft Compute;cloud;1;pandorafms.azure.mc.png;https://pandorafms.com/library/aws-azure-discovery/
|
||||||
|
pandorafms.db2;DB2;app;1;pandorafms.db2.png;https://pandorafms.com/library/db2-discovery/
|
||||||
|
pandorafms.gcp.ce;Google Cloud Compute Engine;cloud;1;pandorafms.gcp.ce.png;https://pandorafms.com/library/google-cloud-discovery/
|
||||||
|
pandorafms.mssql;Microsoft SQL Server;app;1;pandorafms.mssql.png;https://pandorafms.com/library/mssql-discovery/
|
||||||
|
pandorafms.mysql;MySQL;app;1;pandorafms.mysql.png;https://pandorafms.com/library/mysql-discovery/
|
||||||
|
pandorafms.oracle;Oracle;app;1;pandorafms.oracle.png;https://pandorafms.com/library/oracle-discovery/
|
||||||
|
pandorafms.proxmox;Proxmox;app;0;pandorafms.proxmox.png;https://pandorafms.com/library/proxmox-discovery/
|
||||||
|
pandorafms.sap.deset;SAP R3 - Deset;app;1;pandorafms.sap.deset.png;https://pandorafms.com/library/sap-discovery/
|
||||||
|
pandorafms.vmware;VMware;app;1;pandorafms.vmware.png;https://pandorafms.com/library/vmware-discovery/
|
||||||
|
pandorafms.kubernetes;Kubernetes;app;1;pandorafms.kubernetes.png;https://pandorafms.com/library/kubernetes-discovery/
|
||||||
|
pandorafms.mongodb;MongoDB;app;1;pandorafms.mongodb.png;https://pandorafms.com/library/mongodb-discovery/
|
||||||
|
pandorafms.ovh;OVH;cloud;1;pandorafms.ovh.png;https://pandorafms.com/library/ovh-discovery/
|
||||||
|
pandorafms.vulnscan;Vulnerability Scanner;app;1;pandorafms.vulnscan.png;https://pandorafms.com/library/pandora-vulnerability-discovery/
|
||||||
|
pandorafms.postgresql;PostgreSQL;app;1;pandorafms.postgresql.png;https://pandorafms.com/library/postgresql-discovery/
|
||||||
|
pandorafms.xenserver;Xenserver;app;1;pandorafms.xenserver.png;https://pandorafms.com/library/xenserver-discovery/
|
|
@ -1,5 +1,418 @@
|
|||||||
|
-- Active: 1696349857571@@172.16.0.2@3306
|
||||||
START TRANSACTION;
|
START TRANSACTION;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `tdemo_data` (
|
||||||
|
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||||
|
`item_id` INT UNSIGNED NULL DEFAULT NULL,
|
||||||
|
`table_name` VARCHAR(64) NULL DEFAULT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=UTF8MB4;
|
||||||
|
|
||||||
|
SET @class_name = 'AgentHive';
|
||||||
|
SET @unique_name = 'AgentHive';
|
||||||
|
SET @description = 'Agents hive';
|
||||||
|
SET @page = 'AgentHive.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'AvgSumMaxMinModule';
|
||||||
|
SET @unique_name = 'AvgSumMaxMinModule';
|
||||||
|
SET @description = 'Avg|Sum|Max|Min Module Data';
|
||||||
|
SET @page = 'AvgSumMaxMinModule.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'BasicChart';
|
||||||
|
SET @unique_name = 'BasicChart';
|
||||||
|
SET @description = 'Basic chart';
|
||||||
|
SET @page = 'BasicChart.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'BlockHistogram';
|
||||||
|
SET @unique_name = 'BlockHistogram';
|
||||||
|
SET @description = 'Block histogram';
|
||||||
|
SET @page = 'BlockHistogram.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'ColorModuleTabs';
|
||||||
|
SET @unique_name = 'ColorModuleTabs';
|
||||||
|
SET @description = 'Color tabs modules';
|
||||||
|
SET @page = 'ColorModuleTabs.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'DataMatrix';
|
||||||
|
SET @unique_name = 'DataMatrix';
|
||||||
|
SET @description = 'Data Matrix';
|
||||||
|
SET @page = 'DataMatrix.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'EventCardboard';
|
||||||
|
SET @unique_name = 'EventCardboard';
|
||||||
|
SET @description = 'Event cardboard';
|
||||||
|
SET @page = 'EventCardboard.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'GroupedMeterGraphs';
|
||||||
|
SET @unique_name = 'GroupedMeterGraphs';
|
||||||
|
SET @description = 'Grouped meter graphs';
|
||||||
|
SET @page = 'GroupedMeterGraphs.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'ModulesByStatus';
|
||||||
|
SET @unique_name = 'ModulesByStatus';
|
||||||
|
SET @description = 'Modules by status';
|
||||||
|
SET @page = 'ModulesByStatus.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'AgentModuleWidget';
|
||||||
|
SET @unique_name = 'agent_module';
|
||||||
|
SET @description = 'Agent/Module View';
|
||||||
|
SET @page = 'agent_module.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'AlertsFiredWidget';
|
||||||
|
SET @unique_name = 'alerts_fired';
|
||||||
|
SET @description = 'Triggered alerts report';
|
||||||
|
SET @page = 'alerts_fired.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'ClockWidget';
|
||||||
|
SET @unique_name = 'clock';
|
||||||
|
SET @description = 'Clock';
|
||||||
|
SET @page = 'clock.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'CustomGraphWidget';
|
||||||
|
SET @unique_name = 'custom_graph';
|
||||||
|
SET @description = 'Defined custom graph';
|
||||||
|
SET @page = 'custom_graph.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'EventsListWidget';
|
||||||
|
SET @unique_name = 'events_list';
|
||||||
|
SET @description = 'List of latest events';
|
||||||
|
SET @page = 'events_list.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'WelcomeWidget';
|
||||||
|
SET @unique_name = 'example';
|
||||||
|
SET @description = 'Welcome message to Pandora FMS';
|
||||||
|
SET @page = 'example.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'GraphModuleHistogramWidget';
|
||||||
|
SET @unique_name = 'graph_module_histogram';
|
||||||
|
SET @description = 'Module histogram';
|
||||||
|
SET @page = 'graph_module_histogram.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'GroupsStatusWidget';
|
||||||
|
SET @unique_name = 'groups_status';
|
||||||
|
SET @description = 'General group status';
|
||||||
|
SET @page = 'groups_status.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'GroupsStatusMapWidget';
|
||||||
|
SET @unique_name = 'groups_status_map';
|
||||||
|
SET @description = 'Group status map';
|
||||||
|
SET @page = 'groups_status_map.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'HeatmapWidget';
|
||||||
|
SET @unique_name = 'heatmap';
|
||||||
|
SET @description = 'Heatmap';
|
||||||
|
SET @page = 'heatmap.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'InventoryWidget';
|
||||||
|
SET @unique_name = 'inventory';
|
||||||
|
SET @description = 'Inventory';
|
||||||
|
SET @page = 'inventory.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'MapsMadeByUser';
|
||||||
|
SET @unique_name = 'maps_made_by_user';
|
||||||
|
SET @description = 'Visual Console';
|
||||||
|
SET @page = 'maps_made_by_user.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'MapsStatusWidget';
|
||||||
|
SET @unique_name = 'maps_status';
|
||||||
|
SET @description = 'General visual maps report';
|
||||||
|
SET @page = 'maps_status.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'ModuleIconWidget';
|
||||||
|
SET @unique_name = 'module_icon';
|
||||||
|
SET @description = 'Icon and module value';
|
||||||
|
SET @page = 'module_icon.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'ModuleStatusWidget';
|
||||||
|
SET @unique_name = 'module_status';
|
||||||
|
SET @description = 'Module status';
|
||||||
|
SET @page = 'module_status.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'ModuleTableValueWidget';
|
||||||
|
SET @unique_name = 'module_table_value';
|
||||||
|
SET @description = 'Module in a table';
|
||||||
|
SET @page = 'module_table_value.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'ModuleValueWidget';
|
||||||
|
SET @unique_name = 'module_value';
|
||||||
|
SET @description = 'Module value';
|
||||||
|
SET @page = 'module_value.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'MonitorHealthWidget';
|
||||||
|
SET @unique_name = 'monitor_health';
|
||||||
|
SET @description = 'Global health info';
|
||||||
|
SET @page = 'monitor_health.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'Netflow';
|
||||||
|
SET @unique_name = 'netflow';
|
||||||
|
SET @description = 'Netflow';
|
||||||
|
SET @page = 'netflow.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'NetworkMapWidget';
|
||||||
|
SET @unique_name = 'network_map';
|
||||||
|
SET @description = 'Network map';
|
||||||
|
SET @page = 'network_map.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'OsQuickReportWidget';
|
||||||
|
SET @unique_name = 'os_quick_report';
|
||||||
|
SET @description = 'OS quick report';
|
||||||
|
SET @page = 'os_quick_report.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'PostWidget';
|
||||||
|
SET @unique_name = 'post';
|
||||||
|
SET @description = 'Panel with a message';
|
||||||
|
SET @page = 'post.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'ReportsWidget';
|
||||||
|
SET @unique_name = 'reports';
|
||||||
|
SET @description = 'Custom report';
|
||||||
|
SET @page = 'reports.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'ServiceMapWidget';
|
||||||
|
SET @unique_name = 'service_map';
|
||||||
|
SET @description = 'Service map';
|
||||||
|
SET @page = 'service_map.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'ServiceViewWidget';
|
||||||
|
SET @unique_name = 'service_view';
|
||||||
|
SET @description = 'Services view';
|
||||||
|
SET @page = 'service_view.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'SingleGraphWidget';
|
||||||
|
SET @unique_name = 'single_graph';
|
||||||
|
SET @description = 'Agent module graph';
|
||||||
|
SET @page = 'single_graph.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'SLAPercentWidget';
|
||||||
|
SET @unique_name = 'sla_percent';
|
||||||
|
SET @description = 'SLA percentage';
|
||||||
|
SET @page = 'sla_percent.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'SystemGroupStatusWidget';
|
||||||
|
SET @unique_name = 'system_group_status';
|
||||||
|
SET @description = 'Groups status';
|
||||||
|
SET @page = 'system_group_status.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'TacticalWidget';
|
||||||
|
SET @unique_name = 'tactical';
|
||||||
|
SET @description = 'Tactical view';
|
||||||
|
SET @page = 'tactical.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'TopNWidget';
|
||||||
|
SET @unique_name = 'top_n';
|
||||||
|
SET @description = 'Top N of agent modules';
|
||||||
|
SET @page = 'top_n.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'TopNEventByGroupWidget';
|
||||||
|
SET @unique_name = 'top_n_events_by_group';
|
||||||
|
SET @description = 'Top N events by agent';
|
||||||
|
SET @page = 'top_n_events_by_group.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'TopNEventByModuleWidget';
|
||||||
|
SET @unique_name = 'top_n_events_by_module';
|
||||||
|
SET @description = 'Top N events by module';
|
||||||
|
SET @page = 'top_n_events_by_module.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'TreeViewWidget';
|
||||||
|
SET @unique_name = 'tree_view';
|
||||||
|
SET @description = 'Tree view';
|
||||||
|
SET @page = 'tree_view.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'UrlWidget';
|
||||||
|
SET @unique_name = 'url';
|
||||||
|
SET @description = 'URL content';
|
||||||
|
SET @page = 'url.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'WuxWidget';
|
||||||
|
SET @unique_name = 'wux_transaction';
|
||||||
|
SET @description = 'Agent WUX transaction';
|
||||||
|
SET @page = 'wux_transaction.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'WuxStatsWidget';
|
||||||
|
SET @unique_name = 'wux_transaction_stats';
|
||||||
|
SET @description = 'WUX transaction stats';
|
||||||
|
SET @page = 'wux_transaction_stats.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'SecurityHardening';
|
||||||
|
SET @unique_name = 'security_hardening';
|
||||||
|
SET @description = 'Security Hardening';
|
||||||
|
SET @page = 'security_hardening.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
SET @class_name = 'ServiceLevelWidget';
|
||||||
|
SET @unique_name = 'service_level';
|
||||||
|
SET @description = 'Service Level';
|
||||||
|
SET @page = 'service_level.php';
|
||||||
|
SET @widget_id = NULL;
|
||||||
|
SELECT @widget_id := `id` FROM `twidget` WHERE `unique_name` = @unique_name;
|
||||||
|
INSERT IGNORE INTO `twidget` (`id`,`class_name`,`unique_name`,`description`,`options`,`page`) VALUES (@widget_id,@class_name,@unique_name,@description,'',@page);
|
||||||
|
|
||||||
|
DELETE FROM `tconfig` WHERE `token` LIKE 'translate_string_extension_installed';
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `textension_translate_string` (
|
||||||
|
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||||
|
`lang` VARCHAR(10) NOT NULL ,
|
||||||
|
`string` TEXT ,
|
||||||
|
`translation` TEXT ,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
KEY `lang_index` (`lang`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=UTF8MB4;
|
||||||
|
|
||||||
|
DELETE FROM `tconfig` WHERE `token` LIKE 'files_repo_installed';
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `tfiles_repo` (
|
||||||
|
`id` int(5) unsigned NOT NULL auto_increment,
|
||||||
|
`name` varchar(255) NOT NULL,
|
||||||
|
`description` varchar(500) NULL default '',
|
||||||
|
`hash` varchar(8) NULL default '',
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=UTF8MB4;
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `tfiles_repo_group` (
|
||||||
|
`id` int(10) unsigned NOT NULL auto_increment,
|
||||||
|
`id_file` int(5) unsigned NOT NULL,
|
||||||
|
`id_group` int(4) unsigned NOT NULL,
|
||||||
|
PRIMARY KEY (`id`),
|
||||||
|
FOREIGN KEY (`id_file`) REFERENCES tfiles_repo(`id`) ON DELETE CASCADE
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=UTF8MB4;
|
||||||
|
|
||||||
ALTER TABLE `tncm_queue`
|
ALTER TABLE `tncm_queue`
|
||||||
ADD COLUMN `id_agent_data` bigint unsigned AFTER `id_script`;
|
ADD COLUMN `id_agent_data` bigint unsigned AFTER `id_script`;
|
||||||
|
|
||||||
@ -1068,6 +1481,10 @@ SET @sqlstmt = IF (@exist>0, 'ALTER TABLE `tagente` DROP COLUMN `transactional_a
|
|||||||
prepare stmt from @sqlstmt;
|
prepare stmt from @sqlstmt;
|
||||||
execute stmt;
|
execute stmt;
|
||||||
|
|
||||||
|
ALTER TABLE `tlayout_template_data` ADD COLUMN `title` TEXT default '';
|
||||||
|
ALTER TABLE `tlayout_data` ADD COLUMN `period_chart_options` TEXT default '';
|
||||||
|
ALTER TABLE `tlayout_template_data` ADD COLUMN `period_chart_options` TEXT default '';
|
||||||
|
|
||||||
ALTER TABLE `tdashboard`
|
ALTER TABLE `tdashboard`
|
||||||
ADD COLUMN `date_range` TINYINT NOT NULL DEFAULT 0 AFTER `cells_slideshow`,
|
ADD COLUMN `date_range` TINYINT NOT NULL DEFAULT 0 AFTER `cells_slideshow`,
|
||||||
ADD COLUMN `date_from` INT NOT NULL DEFAULT 0 AFTER `date_range`,
|
ADD COLUMN `date_from` INT NOT NULL DEFAULT 0 AFTER `date_range`,
|
||||||
@ -1085,6 +1502,18 @@ ALTER TABLE `tevent_filter` ADD COLUMN `regex` TEXT NULL AFTER `private_filter_u
|
|||||||
-- Update macros for plugin oracle
|
-- Update macros for plugin oracle
|
||||||
UPDATE `tdiscovery_apps` SET `version` = '1.1' WHERE `short_name` = 'pandorafms.oracle';
|
UPDATE `tdiscovery_apps` SET `version` = '1.1' WHERE `short_name` = 'pandorafms.oracle';
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS `tpolicy_modules_synth` (
|
||||||
|
`id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||||
|
`id_agent_module_source` INT UNSIGNED NOT NULL DEFAULT 0,
|
||||||
|
`id_agent_module_target` INT UNSIGNED NOT NULL DEFAULT 0,
|
||||||
|
`fixed_value` DOUBLE NOT NULL DEFAULT 0,
|
||||||
|
`operation` enum ('ADD', 'SUB', 'DIV', 'MUL', 'AVG', 'NOP') NOT NULL DEFAULT 'NOP',
|
||||||
|
`order` INT NOT NULL DEFAULT 0,
|
||||||
|
FOREIGN KEY (`id_agent_module_target`) REFERENCES tpolicy_modules(`id`)
|
||||||
|
ON DELETE CASCADE ON UPDATE CASCADE,
|
||||||
|
PRIMARY KEY (id)
|
||||||
|
);
|
||||||
|
|
||||||
SET @id_app := (SELECT `id_app` FROM `tdiscovery_apps` WHERE `short_name` = 'pandorafms.oracle');
|
SET @id_app := (SELECT `id_app` FROM `tdiscovery_apps` WHERE `short_name` = 'pandorafms.oracle');
|
||||||
|
|
||||||
UPDATE `tdiscovery_apps_tasks_macros` SET `value` = 'agents_group_id=__taskGroupID__ interval=__taskInterval__ user=_dbuser_ password=_dbpass_ thick_mode=_thickMode_ client_path=_clientPath_ threads=_threads_ modules_prefix=_prefixModuleName_ execute_custom_queries=_executeCustomQueries_ analyze_connections=_checkConnections_ engine_uptime=_checkUptime_ query_stats=_queryStats_ cache_stats=_checkCache_ fragmentation_ratio=_checkFragmentation_ check_tablescpaces=_checkTablespaces_' WHERE `macro` = '_tempfileConf_' AND `id_task` IN (SELECT `id_rt` FROM `trecon_task` WHERE `id_app` = @id_app);
|
UPDATE `tdiscovery_apps_tasks_macros` SET `value` = 'agents_group_id=__taskGroupID__ interval=__taskInterval__ user=_dbuser_ password=_dbpass_ thick_mode=_thickMode_ client_path=_clientPath_ threads=_threads_ modules_prefix=_prefixModuleName_ execute_custom_queries=_executeCustomQueries_ analyze_connections=_checkConnections_ engine_uptime=_checkUptime_ query_stats=_queryStats_ cache_stats=_checkCache_ fragmentation_ratio=_checkFragmentation_ check_tablescpaces=_checkTablespaces_' WHERE `macro` = '_tempfileConf_' AND `id_task` IN (SELECT `id_rt` FROM `trecon_task` WHERE `id_app` = @id_app);
|
||||||
@ -1109,4 +1538,14 @@ UPDATE talert_actions SET field2='[PANDORA] Alert FIRED on _agent_ / _module_ /
|
|||||||
|
|
||||||
UPDATE `tdiscovery_apps` SET `version` = '1.2' WHERE `short_name` = 'pandorafms.vmware';
|
UPDATE `tdiscovery_apps` SET `version` = '1.2' WHERE `short_name` = 'pandorafms.vmware';
|
||||||
|
|
||||||
|
ALTER TABLE `tagente_modulo` ADD COLUMN `ignore_unknown` TINYINT NOT NULL DEFAULT 0;
|
||||||
|
ALTER TABLE `tpolicy_modules` ADD COLUMN `ignore_unknown` TINYINT NOT NULL DEFAULT 0;
|
||||||
|
|
||||||
|
ALTER TABLE `tagente` ADD COLUMN `ignore_unknown` TINYINT NOT NULL DEFAULT 0;
|
||||||
|
ALTER TABLE `tmetaconsole_agent` ADD COLUMN `ignore_unknown` TINYINT NOT NULL DEFAULT 0;
|
||||||
|
|
||||||
|
DELETE FROM `twelcome_tip` WHERE `title` = 'Automatic agent provision system';
|
||||||
|
|
||||||
|
INSERT INTO `twelcome_tip` (`id_lang`,`id_profile`,`title`,`text`,`url`,`enable`) VALUES ('en_GB',0,'Automatic agent provision system','The agent self-provisioning system allows an agent recently entered into the system to automatically apply changes to their configuration (such as moving them from group, assigning them certain values in custom fields) and of course applying certain monitoring policies. It is one of the most powerful functionalities, aimed at managing very large system parks.','https://pandorafms.com/manual/start?id=en/documentation/02_installation/05_configuration_agents#conf',1);
|
||||||
|
|
||||||
COMMIT;
|
COMMIT;
|
||||||
|
@ -2,8 +2,4 @@ START TRANSACTION;
|
|||||||
|
|
||||||
ALTER TABLE `tusuario` CHANGE COLUMN `metaconsole_data_section` `metaconsole_data_section` TEXT NOT NULL DEFAULT '' ;
|
ALTER TABLE `tusuario` CHANGE COLUMN `metaconsole_data_section` `metaconsole_data_section` TEXT NOT NULL DEFAULT '' ;
|
||||||
|
|
||||||
DELETE FROM `twelcome_tip` WHERE `title` = 'Automatic agent provision system';
|
|
||||||
|
|
||||||
INSERT INTO `twelcome_tip` (`id_lang`,`id_profile`,`title`,`text`,`url`,`enable`) VALUES ('en_GB',0,'Automatic agent provision system','The agent self-provisioning system allows an agent recently entered into the system to automatically apply changes to their configuration (such as moving them from group, assigning them certain values in custom fields) and of course applying certain monitoring policies. It is one of the most powerful functionalities, aimed at managing very large system parks.','https://pandorafms.com/manual/start?id=en/documentation/02_installation/05_configuration_agents#conf',1);
|
|
||||||
|
|
||||||
COMMIT;
|
COMMIT;
|
@ -100,9 +100,9 @@ echo sprintf('<div id="header_table" class="header_table_%s">', $menuTypeClass);
|
|||||||
if ($check_minor_release_available === true) {
|
if ($check_minor_release_available === true) {
|
||||||
if (users_is_admin($config['id_user'])) {
|
if (users_is_admin($config['id_user'])) {
|
||||||
if ($config['language'] === 'es') {
|
if ($config['language'] === 'es') {
|
||||||
set_pandora_error_for_header('Hay una o mas revisiones menores en espera para ser actualizadas. <a id="aviable_updates" target="blank" href="https://pandorafms.com/manual/es/documentation/02_installation/02_anexo_upgrade#version_70ng_rolling_release">'.__('Sobre actualización de revisión menor').'</a>', 'Revisión/es menor/es disponible/s');
|
set_pandora_error_for_header('Hay una o mas revisiones menores en espera para ser actualizadas. <a id="aviable_updates" target="blank" href="https://pandorafms.com/manual/es/documentation/pandorafms/installation/02_anexo_upgrade#version_70ng_rolling_release">'.__('Sobre actualización de revisión menor').'</a>', 'Revisión/es menor/es disponible/s');
|
||||||
} else {
|
} else {
|
||||||
set_pandora_error_for_header('There are one or more minor releases waiting for update. <a id="aviable_updates" target="blank" href="https://pandorafms.com/manual/en/documentation/02_installation/02_anexo_upgrade#version_70ng_rolling_release">'.__('About minor release update').'</a>', 'minor release/s available');
|
set_pandora_error_for_header('There are one or more minor releases waiting for update. <a id="aviable_updates" target="blank" href="https://pandorafms.com/manual/en/documentation/pandorafms/installation/02_anexo_upgrade#version_70ng_rolling_release">'.__('About minor release update').'</a>', 'minor release/s available');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -235,6 +235,7 @@ echo sprintf('<div id="header_table" class="header_table_%s">', $menuTypeClass);
|
|||||||
|
|
||||||
$header_autorefresh = '';
|
$header_autorefresh = '';
|
||||||
$header_autorefresh_counter = '';
|
$header_autorefresh_counter = '';
|
||||||
|
$header_setup = '';
|
||||||
|
|
||||||
if (($_GET['sec2'] !== 'operation/visual_console/render_view')) {
|
if (($_GET['sec2'] !== 'operation/visual_console/render_view')) {
|
||||||
if ($autorefresh_list !== null
|
if ($autorefresh_list !== null
|
||||||
@ -352,7 +353,6 @@ echo sprintf('<div id="header_table" class="header_table_%s">', $menuTypeClass);
|
|||||||
$display_counter = 'display:none';
|
$display_counter = 'display:none';
|
||||||
}
|
}
|
||||||
|
|
||||||
$header_setup = '';
|
|
||||||
if ((bool) check_acl($config['id_user'], 0, 'PM') === true) {
|
if ((bool) check_acl($config['id_user'], 0, 'PM') === true) {
|
||||||
$header_setup .= '<div id="header_logout"><a class="white" href="'.ui_get_full_url('index.php?sec=general&sec2=godmode/setup/setup§ion=general').'">';
|
$header_setup .= '<div id="header_logout"><a class="white" href="'.ui_get_full_url('index.php?sec=general&sec2=godmode/setup/setup§ion=general').'">';
|
||||||
$header_setup .= html_print_image(
|
$header_setup .= html_print_image(
|
||||||
@ -927,8 +927,6 @@ echo sprintf('<div id="header_table" class="header_table_%s">', $menuTypeClass);
|
|||||||
|
|
||||||
<?php if (enterprise_installed() === false) { ?>
|
<?php if (enterprise_installed() === false) { ?>
|
||||||
$('.header_left').on('click', function(){
|
$('.header_left').on('click', function(){
|
||||||
// Hidden tips modal.
|
|
||||||
$(".window").css("display", "none");
|
|
||||||
jQuery.post(
|
jQuery.post(
|
||||||
"ajax.php",
|
"ajax.php",
|
||||||
{
|
{
|
||||||
|
@ -21,7 +21,7 @@ if (empty($custom_conf_enabled) === true || isset($config['custom_docs_url_alt']
|
|||||||
if (isset($config['custom_docs_url_alt']) === true) {
|
if (isset($config['custom_docs_url_alt']) === true) {
|
||||||
$docs_url = $config['custom_docs_url_alt'];
|
$docs_url = $config['custom_docs_url_alt'];
|
||||||
} else {
|
} else {
|
||||||
$docs_url = 'https://pandorafms.com/manual/en/documentation/02_installation/04_configuration';
|
$docs_url = 'https://pandorafms.com/manual/en/documentation/pandorafms/installation/04_configuration';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -19,9 +19,9 @@
|
|||||||
global $config;
|
global $config;
|
||||||
|
|
||||||
if ($config['language'] == 'es') {
|
if ($config['language'] == 'es') {
|
||||||
$url_help = 'https://pandorafms.com/manual/es/documentation/07_technical_annexes/18_php_8';
|
$url_help = 'https://pandorafms.com/manual/es/documentation/pandorafms/technical_annexes/18_php_8';
|
||||||
} else {
|
} else {
|
||||||
$url_help = 'https://pandorafms.com/manual/en/documentation/07_technical_annexes/18_php_8';
|
$url_help = 'https://pandorafms.com/manual/en/documentation/pandorafms/technical_annexes/18_php_8';
|
||||||
}
|
}
|
||||||
|
|
||||||
// Prints help dialog information
|
// Prints help dialog information
|
||||||
|
@ -1074,6 +1074,17 @@ if (enterprise_installed() === true) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$tableAdvancedAgent->data['ignore_unknown'][] = html_print_label_input_block(
|
||||||
|
__('Ignore unknown').ui_print_help_tip(__('This disables the calculation of the unknown state in the agent and any of its modules, so it will never transition to unknown. The state it reflects is the last known status.'), true),
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'ignore_unknown',
|
||||||
|
1,
|
||||||
|
$ignore_unknown,
|
||||||
|
true,
|
||||||
|
false
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
ui_toggle(
|
ui_toggle(
|
||||||
html_print_table($tableAdvancedAgent, true),
|
html_print_table($tableAdvancedAgent, true),
|
||||||
|
@ -232,6 +232,7 @@ if ($create_agent) {
|
|||||||
$cps = (int) get_parameter_switch('cps', -1);
|
$cps = (int) get_parameter_switch('cps', -1);
|
||||||
$fixed_ip = (int) get_parameter_switch('fixed_ip', 0);
|
$fixed_ip = (int) get_parameter_switch('fixed_ip', 0);
|
||||||
$vul_scan_enabled = (int) get_parameter_switch('vul_scan_enabled', 2);
|
$vul_scan_enabled = (int) get_parameter_switch('vul_scan_enabled', 2);
|
||||||
|
$ignore_unknown = (int) get_parameter_switch('ignore_unknown', 0);
|
||||||
$agent_version = $config['current_package'];
|
$agent_version = $config['current_package'];
|
||||||
$secondary_groups = (array) get_parameter('secondary_groups_selected', '');
|
$secondary_groups = (array) get_parameter('secondary_groups_selected', '');
|
||||||
$fields = db_get_all_fields_in_table('tagent_custom_fields');
|
$fields = db_get_all_fields_in_table('tagent_custom_fields');
|
||||||
@ -300,6 +301,7 @@ if ($create_agent) {
|
|||||||
'cps' => $cps,
|
'cps' => $cps,
|
||||||
'fixed_ip' => $fixed_ip,
|
'fixed_ip' => $fixed_ip,
|
||||||
'vul_scan_enabled' => $vul_scan_enabled,
|
'vul_scan_enabled' => $vul_scan_enabled,
|
||||||
|
'ignore_unknown' => $ignore_unknown,
|
||||||
'agent_version' => $agent_version,
|
'agent_version' => $agent_version,
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
@ -1016,6 +1018,7 @@ if ($update_agent) {
|
|||||||
$satellite_server = (int) get_parameter('satellite_server', 0);
|
$satellite_server = (int) get_parameter('satellite_server', 0);
|
||||||
$fixed_ip = (int) get_parameter_switch('fixed_ip', 0);
|
$fixed_ip = (int) get_parameter_switch('fixed_ip', 0);
|
||||||
$vul_scan_enabled = (int) get_parameter_switch('vul_scan_enabled', 2);
|
$vul_scan_enabled = (int) get_parameter_switch('vul_scan_enabled', 2);
|
||||||
|
$ignore_unknown = (int) get_parameter_switch('ignore_unknown', 0);
|
||||||
$security_vunerability = (int) get_parameter_switch('security_vunerability', 0);
|
$security_vunerability = (int) get_parameter_switch('security_vunerability', 0);
|
||||||
$security_hardening = (int) get_parameter_switch('security_hardening', 0);
|
$security_hardening = (int) get_parameter_switch('security_hardening', 0);
|
||||||
$security_monitoring = (int) get_parameter_switch('security_monitoring', 0);
|
$security_monitoring = (int) get_parameter_switch('security_monitoring', 0);
|
||||||
@ -1150,6 +1153,7 @@ if ($update_agent) {
|
|||||||
'satellite_server' => $satellite_server,
|
'satellite_server' => $satellite_server,
|
||||||
'fixed_ip' => $fixed_ip,
|
'fixed_ip' => $fixed_ip,
|
||||||
'vul_scan_enabled' => $vul_scan_enabled,
|
'vul_scan_enabled' => $vul_scan_enabled,
|
||||||
|
'ignore_unknown' => $ignore_unknown,
|
||||||
];
|
];
|
||||||
|
|
||||||
if ($config['metaconsole_agent_cache'] == 1) {
|
if ($config['metaconsole_agent_cache'] == 1) {
|
||||||
@ -1383,6 +1387,7 @@ if ($id_agente) {
|
|||||||
$satellite_server = (int) $agent['satellite_server'];
|
$satellite_server = (int) $agent['satellite_server'];
|
||||||
$fixed_ip = (int) $agent['fixed_ip'];
|
$fixed_ip = (int) $agent['fixed_ip'];
|
||||||
$vul_scan_enabled = (int) $agent['vul_scan_enabled'];
|
$vul_scan_enabled = (int) $agent['vul_scan_enabled'];
|
||||||
|
$ignore_unknown = (int) $agent['ignore_unknown'];
|
||||||
if (strpos($agent['agent_version'], '(')) {
|
if (strpos($agent['agent_version'], '(')) {
|
||||||
$agent_version = (int) explode('.', explode('(', $agent['agent_version'])[0])[2];
|
$agent_version = (int) explode('.', explode('(', $agent['agent_version'])[0])[2];
|
||||||
} else {
|
} else {
|
||||||
@ -1633,6 +1638,7 @@ if ($update_module === true || $create_module === true) {
|
|||||||
|
|
||||||
$custom_id = (string) get_parameter('custom_id');
|
$custom_id = (string) get_parameter('custom_id');
|
||||||
$history_data = (int) get_parameter('history_data');
|
$history_data = (int) get_parameter('history_data');
|
||||||
|
$ignore_unknown = (int) get_parameter('ignore_unknown');
|
||||||
$dynamic_interval = (int) get_parameter('dynamic_interval');
|
$dynamic_interval = (int) get_parameter('dynamic_interval');
|
||||||
$dynamic_max = (int) get_parameter('dynamic_max');
|
$dynamic_max = (int) get_parameter('dynamic_max');
|
||||||
$dynamic_min = (int) get_parameter('dynamic_min');
|
$dynamic_min = (int) get_parameter('dynamic_min');
|
||||||
@ -1841,6 +1847,7 @@ if ($update_module) {
|
|||||||
'max_retries' => $max_retries,
|
'max_retries' => $max_retries,
|
||||||
'custom_id' => $custom_id,
|
'custom_id' => $custom_id,
|
||||||
'history_data' => $history_data,
|
'history_data' => $history_data,
|
||||||
|
'ignore_unknown' => $ignore_unknown,
|
||||||
'dynamic_interval' => $dynamic_interval,
|
'dynamic_interval' => $dynamic_interval,
|
||||||
'dynamic_max' => $dynamic_max,
|
'dynamic_max' => $dynamic_max,
|
||||||
'dynamic_min' => $dynamic_min,
|
'dynamic_min' => $dynamic_min,
|
||||||
@ -2042,6 +2049,7 @@ if ($create_module) {
|
|||||||
'id_modulo' => $id_module,
|
'id_modulo' => $id_module,
|
||||||
'custom_id' => $custom_id,
|
'custom_id' => $custom_id,
|
||||||
'history_data' => $history_data,
|
'history_data' => $history_data,
|
||||||
|
'ignore_unknown' => $ignore_unknown,
|
||||||
'dynamic_interval' => $dynamic_interval,
|
'dynamic_interval' => $dynamic_interval,
|
||||||
'dynamic_max' => $dynamic_max,
|
'dynamic_max' => $dynamic_max,
|
||||||
'dynamic_min' => $dynamic_min,
|
'dynamic_min' => $dynamic_min,
|
||||||
|
@ -305,6 +305,7 @@ if ($id_agent_module) {
|
|||||||
$max_retries = $module['max_retries'];
|
$max_retries = $module['max_retries'];
|
||||||
$custom_id = $module['custom_id'];
|
$custom_id = $module['custom_id'];
|
||||||
$history_data = $module['history_data'];
|
$history_data = $module['history_data'];
|
||||||
|
$ignore_unknown = $module['ignore_unknown'];
|
||||||
$dynamic_interval = $module['dynamic_interval'];
|
$dynamic_interval = $module['dynamic_interval'];
|
||||||
$dynamic_max = $module['dynamic_max'];
|
$dynamic_max = $module['dynamic_max'];
|
||||||
$dynamic_min = $module['dynamic_min'];
|
$dynamic_min = $module['dynamic_min'];
|
||||||
@ -443,6 +444,7 @@ if ($id_agent_module) {
|
|||||||
$plugin_parameter = '';
|
$plugin_parameter = '';
|
||||||
$custom_id = '';
|
$custom_id = '';
|
||||||
$history_data = 1;
|
$history_data = 1;
|
||||||
|
$ignore_unknown = 0;
|
||||||
$dynamic_interval = 0;
|
$dynamic_interval = 0;
|
||||||
$dynamic_min = 0;
|
$dynamic_min = 0;
|
||||||
$dynamic_max = 0;
|
$dynamic_max = 0;
|
||||||
@ -680,6 +682,8 @@ switch ($moduletype) {
|
|||||||
1,
|
1,
|
||||||
];
|
];
|
||||||
include 'module_manager_editor_common.php';
|
include 'module_manager_editor_common.php';
|
||||||
|
ui_require_jquery_file('validate');
|
||||||
|
ui_require_javascript_file_enterprise('pandora_synthetic');
|
||||||
include 'module_manager_editor_prediction.php';
|
include 'module_manager_editor_prediction.php';
|
||||||
break;
|
break;
|
||||||
|
|
||||||
@ -862,6 +866,20 @@ ui_require_javascript_file('pandora_modules');
|
|||||||
?>
|
?>
|
||||||
<script language="javascript">
|
<script language="javascript">
|
||||||
/* <![CDATA[ */
|
/* <![CDATA[ */
|
||||||
|
|
||||||
|
var textsToTranslate = {
|
||||||
|
"None": "<?php __('None'); ?>",
|
||||||
|
};
|
||||||
|
|
||||||
|
var url = 'include/ajax/module';
|
||||||
|
var id_source = '<?php echo $id_agente; ?>';
|
||||||
|
|
||||||
|
var icons = {
|
||||||
|
'load_icon': '<?php html_print_image('images/spinner.gif', false); ?>',
|
||||||
|
'error_icon': '<?php html_print_image('images/error_red.png', false); ?>',
|
||||||
|
|
||||||
|
};
|
||||||
|
|
||||||
var no_name_lang =`
|
var no_name_lang =`
|
||||||
<?php
|
<?php
|
||||||
echo ui_print_info_message(
|
echo ui_print_info_message(
|
||||||
|
@ -645,6 +645,15 @@ if ($disabledBecauseInPolicy) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$table_simple->data['caption_ignore_unknown'][0] = __('Ignore unknown').ui_print_help_tip(_('This disables the module\'s state calculation to unknown, so it will never transition to unknown. The state it reflects is the last known status.'), true);
|
||||||
|
$table_simple->data['ignore_unknown'][0] = html_print_checkbox_switch(
|
||||||
|
'ignore_unknown',
|
||||||
|
1,
|
||||||
|
$ignore_unknown,
|
||||||
|
true,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
|
||||||
// Business Logic for Advanced Part.
|
// Business Logic for Advanced Part.
|
||||||
global $__code_from;
|
global $__code_from;
|
||||||
// Code comes from module_editor.
|
// Code comes from module_editor.
|
||||||
@ -1426,7 +1435,7 @@ if ($__code_from === 'modules') {
|
|||||||
$throw_unknown_events_check = policy_module_is_disable_type_event($__id_pol_mod, EVENTS_GOING_UNKNOWN);
|
$throw_unknown_events_check = policy_module_is_disable_type_event($__id_pol_mod, EVENTS_GOING_UNKNOWN);
|
||||||
}
|
}
|
||||||
|
|
||||||
$table_advanced->data['caption_discard_unknown'][0] = __('Discard unknown events');
|
$table_advanced->data['caption_discard_unknown'][0] = __('Discard unknown events').ui_print_help_tip(__('With this mode, the unknown state will be detected, but it will not generate events.'), true);
|
||||||
$table_advanced->data['discard_unknown'][0] = html_print_checkbox_switch(
|
$table_advanced->data['discard_unknown'][0] = html_print_checkbox_switch(
|
||||||
'throw_unknown_events',
|
'throw_unknown_events',
|
||||||
1,
|
1,
|
||||||
@ -1769,13 +1778,13 @@ ui_require_jquery_file('json');
|
|||||||
) {
|
) {
|
||||||
if (language == 'es') {
|
if (language == 'es') {
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/es/documentation/03_monitoring/02_operations#tipos_de_modulos',
|
'https://pandorafms.com/manual/es/documentation/pandorafms/monitoring/02_operations#tipos_de_modulos',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/en/documentation/03_monitoring/02_operations#types_of_modules',
|
'https://pandorafms.com/manual/en/documentation/pandorafms/monitoring/02_operations#types_of_modules',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
@ -1788,13 +1797,13 @@ ui_require_jquery_file('json');
|
|||||||
) {
|
) {
|
||||||
if (language == 'es') {
|
if (language == 'es') {
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/es/documentation/03_monitoring/03_remote_monitoring#monitorizacion_icmp',
|
'https://pandorafms.com/manual/es/documentation/pandorafms/monitoring/03_remote_monitoring#monitorizacion_icmp',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/en/documentation/03_monitoring/03_remote_monitoring#icmp_monitoring',
|
'https://pandorafms.com/manual/en/documentation/pandorafms/monitoring/03_remote_monitoring#icmp_monitoring',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
@ -1809,13 +1818,13 @@ ui_require_jquery_file('json');
|
|||||||
) {
|
) {
|
||||||
if (language == 'es') {
|
if (language == 'es') {
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/es/documentation/03_monitoring/03_remote_monitoring#monitorizando_con_modulos_de_red_tipo_snmp',
|
'https://pandorafms.com/manual/es/documentation/pandorafms/monitoring/03_remote_monitoring#monitorizando_con_modulos_de_red_tipo_snmp',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/en/documentation/03_monitoring/03_remote_monitoring#monitoring_through_network_modules_with_snmp',
|
'https://pandorafms.com/manual/en/documentation/pandorafms/monitoring/03_remote_monitoring#monitoring_through_network_modules_with_snmp',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
@ -1829,13 +1838,13 @@ ui_require_jquery_file('json');
|
|||||||
) {
|
) {
|
||||||
if (language == 'es') {
|
if (language == 'es') {
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/es/documentation/03_monitoring/03_remote_monitoring#monitorizacion_tcp',
|
'https://pandorafms.com/manual/es/documentation/pandorafms/monitoring/03_remote_monitoring#monitorizacion_tcp',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/en/documentation/03_monitoring/03_remote_monitoring#tcp_monitoring',
|
'https://pandorafms.com/manual/en/documentation/pandorafms/monitoring/03_remote_monitoring#tcp_monitoring',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
@ -1848,13 +1857,13 @@ ui_require_jquery_file('json');
|
|||||||
) {
|
) {
|
||||||
if (language == 'es') {
|
if (language == 'es') {
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/es/documentation/03_monitoring/06_web_monitoring#creacion_de_modulos_web',
|
'https://pandorafms.com/manual/es/documentation/pandorafms/monitoring/06_web_monitoring#creacion_de_modulos_web',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/en/documentation/03_monitoring/06_web_monitoring#creating_web_modules',
|
'https://pandorafms.com/manual/en/documentation/pandorafms/monitoring/06_web_monitoring#creating_web_modules',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
|
@ -28,8 +28,8 @@
|
|||||||
|
|
||||||
enterprise_include_once('include/functions_policies.php');
|
enterprise_include_once('include/functions_policies.php');
|
||||||
enterprise_include_once('godmode/agentes/module_manager_editor_prediction.php');
|
enterprise_include_once('godmode/agentes/module_manager_editor_prediction.php');
|
||||||
|
enterprise_include_once('include/functions_modules.php');
|
||||||
require_once 'include/functions_agents.php';
|
require_once 'include/functions_agents.php';
|
||||||
ui_require_jquery_file('validate');
|
|
||||||
|
|
||||||
$disabledBecauseInPolicy = false;
|
$disabledBecauseInPolicy = false;
|
||||||
$disabledTextBecauseInPolicy = '';
|
$disabledTextBecauseInPolicy = '';
|
||||||
@ -38,9 +38,21 @@ $id_agente = get_parameter('id_agente', '');
|
|||||||
$agent_name = get_parameter('agent_name', agents_get_alias($id_agente));
|
$agent_name = get_parameter('agent_name', agents_get_alias($id_agente));
|
||||||
$id_agente_modulo = get_parameter('id_agent_module', 0);
|
$id_agente_modulo = get_parameter('id_agent_module', 0);
|
||||||
$custom_integer_2 = get_parameter('custom_integer_2', 0);
|
$custom_integer_2 = get_parameter('custom_integer_2', 0);
|
||||||
$sql = 'SELECT *
|
$id_policy_module = get_parameter('id_policy_module', 0);
|
||||||
FROM tagente_modulo
|
$policy = false;
|
||||||
WHERE id_agente_modulo = '.$id_agente_modulo;
|
|
||||||
|
if (strstr($page, 'policy_modules') !== false) {
|
||||||
|
$sql = 'SELECT *
|
||||||
|
FROM tpolicy_modules
|
||||||
|
WHERE id = '.$id_policy_module;
|
||||||
|
$policy = true;
|
||||||
|
$id_agente_modulo = $id_policy_module;
|
||||||
|
} else {
|
||||||
|
$sql = 'SELECT *
|
||||||
|
FROM tagente_modulo
|
||||||
|
WHERE id_agente_modulo = '.$id_agente_modulo;
|
||||||
|
}
|
||||||
|
|
||||||
$row = db_get_row_sql($sql);
|
$row = db_get_row_sql($sql);
|
||||||
$is_service = false;
|
$is_service = false;
|
||||||
$is_synthetic = false;
|
$is_synthetic = false;
|
||||||
@ -48,9 +60,10 @@ $is_synthetic_avg = false;
|
|||||||
$ops = false;
|
$ops = false;
|
||||||
if ($row !== false && is_array($row) === true) {
|
if ($row !== false && is_array($row) === true) {
|
||||||
$prediction_module = $row['prediction_module'];
|
$prediction_module = $row['prediction_module'];
|
||||||
$custom_integer_2 = $row['custom_integer_2'];
|
|
||||||
// Services are an Enterprise feature.
|
|
||||||
$custom_integer_1 = $row['custom_integer_1'];
|
$custom_integer_1 = $row['custom_integer_1'];
|
||||||
|
$custom_integer_2 = $row['custom_integer_2'];
|
||||||
|
$custom_string_1 = $row['custom_string_1'];
|
||||||
|
$custom_integer_2 = $row['custom_integer_2'];
|
||||||
|
|
||||||
switch ((int) $prediction_module) {
|
switch ((int) $prediction_module) {
|
||||||
case MODULE_PREDICTION_SERVICE:
|
case MODULE_PREDICTION_SERVICE:
|
||||||
@ -61,7 +74,10 @@ if ($row !== false && is_array($row) === true) {
|
|||||||
case MODULE_PREDICTION_SYNTHETIC:
|
case MODULE_PREDICTION_SYNTHETIC:
|
||||||
$ops_json = enterprise_hook(
|
$ops_json = enterprise_hook(
|
||||||
'modules_get_synthetic_operations',
|
'modules_get_synthetic_operations',
|
||||||
[$id_agente_modulo]
|
[
|
||||||
|
$id_agente_modulo,
|
||||||
|
$policy,
|
||||||
|
]
|
||||||
);
|
);
|
||||||
|
|
||||||
$ops = json_decode($ops_json, true);
|
$ops = json_decode($ops_json, true);
|
||||||
@ -84,6 +100,7 @@ if ($row !== false && is_array($row) === true) {
|
|||||||
case MODULE_PREDICTION_TRENDING:
|
case MODULE_PREDICTION_TRENDING:
|
||||||
$selected = 'trending_selected';
|
$selected = 'trending_selected';
|
||||||
$prediction_module = $custom_integer_1;
|
$prediction_module = $custom_integer_1;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case MODULE_PREDICTION_PLANNING:
|
case MODULE_PREDICTION_PLANNING:
|
||||||
@ -223,7 +240,31 @@ if (strstr($page, 'policy_modules') === false) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$data[0] = $predictionModuleInput;
|
$data[0] = $predictionModuleInput;
|
||||||
$data[1] = html_print_select([__('Weekly'), __('Monthly'), __('Daily')], 'custom_integer_2', $custom_integer_2, '', '', 0, true, false, true, '', false, 'width: 100%;');
|
$data[1] = html_print_select(
|
||||||
|
[
|
||||||
|
'0' => __('Weekly'),
|
||||||
|
'1' => __('Monthly'),
|
||||||
|
'2' => __('Daily'),
|
||||||
|
],
|
||||||
|
'custom_integer_2',
|
||||||
|
$module['custom_integer_2'],
|
||||||
|
'',
|
||||||
|
'',
|
||||||
|
0,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
true,
|
||||||
|
'',
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'',
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
true
|
||||||
|
);
|
||||||
$data[1] .= html_print_input_hidden('id_agente_module_prediction', $id_agente, true);
|
$data[1] .= html_print_input_hidden('id_agente_module_prediction', $id_agente, true);
|
||||||
|
|
||||||
$table_simple->cellclass['prediction_module'][0] = 'w33p';
|
$table_simple->cellclass['prediction_module'][0] = 'w33p';
|
||||||
@ -328,6 +369,7 @@ if ($netflow_module_form !== ENTERPRISE_NOT_HOOK) {
|
|||||||
|
|
||||||
// Removed common useless parameter.
|
// Removed common useless parameter.
|
||||||
unset($table_advanced->data[3]);
|
unset($table_advanced->data[3]);
|
||||||
|
|
||||||
?>
|
?>
|
||||||
<script type="text/javascript">
|
<script type="text/javascript">
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
@ -338,6 +380,7 @@ unset($table_advanced->data[3]);
|
|||||||
$selected,
|
$selected,
|
||||||
$is_netflow,
|
$is_netflow,
|
||||||
$ops,
|
$ops,
|
||||||
|
false,
|
||||||
]
|
]
|
||||||
);
|
);
|
||||||
?>
|
?>
|
||||||
|
167
pandora_console/godmode/files_repo/files_repo.php
Normal file
167
pandora_console/godmode/files_repo/files_repo.php
Normal file
@ -0,0 +1,167 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* File repository
|
||||||
|
*
|
||||||
|
* @category Files repository
|
||||||
|
* @package Pandora FMS
|
||||||
|
* @subpackage Enterprise
|
||||||
|
* @version 1.0.0
|
||||||
|
* @license See below
|
||||||
|
*
|
||||||
|
* ______ ___ _______ _______ ________
|
||||||
|
* | __ \.-----.--.--.--| |.-----.----.-----. | ___| | | __|
|
||||||
|
* | __/| _ | | _ || _ | _| _ | | ___| |__ |
|
||||||
|
* |___| |___._|__|__|_____||_____|__| |___._| |___| |__|_|__|_______|
|
||||||
|
*
|
||||||
|
* ============================================================================
|
||||||
|
* Copyright (c) 2007-2023 Artica Soluciones Tecnologicas, http://www.artica.es
|
||||||
|
* This code is NOT free software. This code is NOT licenced under GPL2 licence
|
||||||
|
* You cannnot redistribute it without written permission of copyright holder.
|
||||||
|
* ============================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
global $config;
|
||||||
|
|
||||||
|
// ACL Check.
|
||||||
|
check_login();
|
||||||
|
if (check_acl($config['id_user'], 0, 'PM') === false) {
|
||||||
|
db_pandora_audit(
|
||||||
|
AUDIT_LOG_ACL_VIOLATION,
|
||||||
|
'Trying to access to Files repository'
|
||||||
|
);
|
||||||
|
include 'general/noaccess.php';
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$tab = get_parameter('tab', '');
|
||||||
|
|
||||||
|
$url = 'index.php?sec=extensions&sec2=godmode/files_repo/files_repo';
|
||||||
|
|
||||||
|
// Header tabs.
|
||||||
|
$godmode['text'] = '<a href="'.$url.'&tab=configuration">';
|
||||||
|
$godmode['text'] .= html_print_image(
|
||||||
|
'images/configuration@svg.svg',
|
||||||
|
true,
|
||||||
|
[
|
||||||
|
'title' => __('Administration view'),
|
||||||
|
'class' => 'main_menu_icon invert_filter',
|
||||||
|
]
|
||||||
|
);
|
||||||
|
$godmode['text'] .= '</a>';
|
||||||
|
$godmode['godmode'] = 1;
|
||||||
|
|
||||||
|
$operation['text'] = '<a href="'.$url.'">';
|
||||||
|
$operation['text'] .= html_print_image(
|
||||||
|
'images/see-details@svg.svg',
|
||||||
|
true,
|
||||||
|
[
|
||||||
|
'title' => __('Operation view'),
|
||||||
|
'class' => 'main_menu_icon invert_filter',
|
||||||
|
]
|
||||||
|
);
|
||||||
|
$operation['text'] .= '</a>';
|
||||||
|
$operation['operation'] = 1;
|
||||||
|
|
||||||
|
$operation['active'] = 1;
|
||||||
|
$godmode['active'] = 0;
|
||||||
|
if ($tab === 'configuration') {
|
||||||
|
$godmode['active'] = 1;
|
||||||
|
$operation['active'] = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
$onheader = [
|
||||||
|
'godmode' => $godmode,
|
||||||
|
'operation' => $operation,
|
||||||
|
];
|
||||||
|
|
||||||
|
// Header.
|
||||||
|
ui_print_standard_header(
|
||||||
|
__('Extensions'),
|
||||||
|
'images/extensions.png',
|
||||||
|
false,
|
||||||
|
'',
|
||||||
|
true,
|
||||||
|
$onheader,
|
||||||
|
[
|
||||||
|
[
|
||||||
|
'link' => '',
|
||||||
|
'label' => __('Tools'),
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'link' => '',
|
||||||
|
'label' => __('Files repository'),
|
||||||
|
],
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
|
require_once __DIR__.'/../../include/functions_files_repository.php';
|
||||||
|
|
||||||
|
// Directory files_repo check.
|
||||||
|
if (files_repo_check_directory() === false) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
$server_content_length = 0;
|
||||||
|
if (isset($_SERVER['CONTENT_LENGTH'])) {
|
||||||
|
$server_content_length = $_SERVER['CONTENT_LENGTH'];
|
||||||
|
}
|
||||||
|
|
||||||
|
// Check for an anoying error that causes the $_POST and $_FILES arrays.
|
||||||
|
// were empty if the file is larger than the post_max_size.
|
||||||
|
if (intval($server_content_length) > 0 && empty($_POST)) {
|
||||||
|
ui_print_error_message(
|
||||||
|
__('Problem uploading. Please check this PHP runtime variable values: <pre> post_max_size (currently '.ini_get('post_max_size').')</pre>')
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
// GET and POST parameters.
|
||||||
|
$file_id = (int) get_parameter('file_id');
|
||||||
|
$add_file = (bool) get_parameter('add_file');
|
||||||
|
$update_file = (bool) get_parameter('update_file');
|
||||||
|
$delete_file = (bool) get_parameter('delete');
|
||||||
|
|
||||||
|
// File add or update.
|
||||||
|
if ($add_file === true || ($update_file === true && $file_id > 0)) {
|
||||||
|
$groups = get_parameter('groups', []);
|
||||||
|
$public = (bool) get_parameter('public');
|
||||||
|
$description = io_safe_output((string) get_parameter('description'));
|
||||||
|
if (mb_strlen($description, 'UTF-8') > 200) {
|
||||||
|
$description = mb_substr($description, 0, 200, 'UTF-8');
|
||||||
|
}
|
||||||
|
|
||||||
|
$description = io_safe_input($description);
|
||||||
|
|
||||||
|
if ($add_file === true) {
|
||||||
|
$result = files_repo_add_file('upfile', $description, $groups, $public);
|
||||||
|
} else if ($update_file === true) {
|
||||||
|
$result = files_repo_update_file($file_id, $description, $groups, $public);
|
||||||
|
$file_id = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($result['status'] == false) {
|
||||||
|
ui_print_error_message($result['message']);
|
||||||
|
} else {
|
||||||
|
if ($add_file === true) {
|
||||||
|
ui_print_success_message(__('Successfully created'));
|
||||||
|
} else if ($update_file === true) {
|
||||||
|
ui_print_success_message(__('Successfully updated'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// File delete.
|
||||||
|
if ($delete_file === true && $file_id > 0) {
|
||||||
|
$result = files_repo_delete_file($file_id);
|
||||||
|
if ($result !== -1) {
|
||||||
|
ui_print_result_message($result, __('Successfully deleted'), __('Could not be deleted'));
|
||||||
|
}
|
||||||
|
|
||||||
|
$file_id = 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
$operation['active'] = 1;
|
||||||
|
if ($tab === 'configuration') {
|
||||||
|
include_once __DIR__.'/files_repo_form.php';
|
||||||
|
} else {
|
||||||
|
include_once __DIR__.'/files_repo_list.php';
|
||||||
|
}
|
@ -1,20 +1,27 @@
|
|||||||
<?php
|
<?php
|
||||||
|
/**
|
||||||
|
* File repository Form
|
||||||
|
*
|
||||||
|
* @category Files repository
|
||||||
|
* @package Pandora FMS
|
||||||
|
* @subpackage Enterprise
|
||||||
|
* @version 1.0.0
|
||||||
|
* @license See below
|
||||||
|
*
|
||||||
|
* ______ ___ _______ _______ ________
|
||||||
|
* | __ \.-----.--.--.--| |.-----.----.-----. | ___| | | __|
|
||||||
|
* | __/| _ | | _ || _ | _| _ | | ___| |__ |
|
||||||
|
* |___| |___._|__|__|_____||_____|__| |___._| |___| |__|_|__|_______|
|
||||||
|
*
|
||||||
|
* ============================================================================
|
||||||
|
* Copyright (c) 2007-2023 Artica Soluciones Tecnologicas, http://www.artica.es
|
||||||
|
* This code is NOT free software. This code is NOT licenced under GPL2 licence
|
||||||
|
* You cannnot redistribute it without written permission of copyright holder.
|
||||||
|
* ============================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
// Pandora FMS - https://pandorafms.com
|
|
||||||
// ==================================================
|
|
||||||
// Copyright (c) 2005-2023 Pandora FMS
|
|
||||||
// Please see https://pandorafms.com/community/ for full contribution list
|
|
||||||
// This program is free software; you can redistribute it and/or
|
|
||||||
// modify it under the terms of the GNU General Public License
|
|
||||||
// as published by the Free Software Foundation; version 2
|
|
||||||
// This program is distributed in the hope that it will be useful,
|
|
||||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
// GNU General Public License for more details.
|
|
||||||
global $config;
|
global $config;
|
||||||
|
|
||||||
$full_extensions_dir = $config['homedir'].'/'.EXTENSIONS_DIR.'/';
|
|
||||||
require_once $full_extensions_dir.'files_repo/functions_files_repo.php';
|
|
||||||
|
|
||||||
$file = [];
|
$file = [];
|
||||||
$file['name'] = '';
|
$file['name'] = '';
|
||||||
@ -117,6 +124,10 @@ if ($file_id > 0) {
|
|||||||
'file_id',
|
'file_id',
|
||||||
$file_id,
|
$file_id,
|
||||||
true
|
true
|
||||||
|
).html_print_input_hidden(
|
||||||
|
'update_file',
|
||||||
|
1,
|
||||||
|
true
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
@ -150,8 +161,8 @@ if ($file_id > 0) {
|
|||||||
|
|
||||||
$table->data[] = $row;
|
$table->data[] = $row;
|
||||||
|
|
||||||
$url = ui_get_full_url('index.php?sec=godmode/extensions&sec2=extensions/files_repo');
|
$url = ui_get_full_url('index.php?sec=extensions&sec2=godmode/files_repo/files_repo');
|
||||||
echo "<form method='post' action='$url' enctype='multipart/form-data'>";
|
echo '<form method="post" action="'.$url.'" enctype="multipart/form-data">';
|
||||||
html_print_table($table);
|
html_print_table($table);
|
||||||
html_print_action_buttons($submit_button);
|
html_print_action_buttons($submit_button);
|
||||||
echo '</form>';
|
echo '</form>';
|
@ -1,54 +1,60 @@
|
|||||||
<?php
|
<?php
|
||||||
|
/**
|
||||||
|
* Get public file repository.
|
||||||
|
*
|
||||||
|
* @category Files repository
|
||||||
|
* @package Pandora FMS
|
||||||
|
* @subpackage Enterprise
|
||||||
|
* @version 1.0.0
|
||||||
|
* @license See below
|
||||||
|
*
|
||||||
|
* ______ ___ _______ _______ ________
|
||||||
|
* | __ \.-----.--.--.--| |.-----.----.-----. | ___| | | __|
|
||||||
|
* | __/| _ | | _ || _ | _| _ | | ___| |__ |
|
||||||
|
* |___| |___._|__|__|_____||_____|__| |___._| |___| |__|_|__|_______|
|
||||||
|
*
|
||||||
|
* ============================================================================
|
||||||
|
* Copyright (c) 2007-2023 Artica Soluciones Tecnologicas, http://www.artica.es
|
||||||
|
* This code is NOT free software. This code is NOT licenced under GPL2 licence
|
||||||
|
* You cannnot redistribute it without written permission of copyright holder.
|
||||||
|
* ============================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
// Pandora FMS - https://pandorafms.com
|
|
||||||
// ==================================================
|
|
||||||
// Copyright (c) 2005-2023 Pandora FMS
|
|
||||||
// Please see https://pandorafms.com/community/ for full contribution list
|
|
||||||
// This program is free software; you can redistribute it and/or
|
|
||||||
// modify it under the terms of the GNU Lesser General Public License
|
|
||||||
// as published by the Free Software Foundation; version 2
|
|
||||||
// This program is distributed in the hope that it will be useful,
|
|
||||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
||||||
// GNU General Public License for more details.
|
|
||||||
require_once '../../include/config.php';
|
require_once '../../include/config.php';
|
||||||
|
|
||||||
$file_hash = (string) get_parameter('file');
|
$file_hash = (string) get_parameter('file');
|
||||||
|
|
||||||
// Only allow 1 parameter in the request
|
// Only allow 1 parameter in the request.
|
||||||
$check_request = (count($_REQUEST) === 1) ? true : false;
|
$check_request = (count($_REQUEST) === 1) ? true : false;
|
||||||
$check_get = (count($_GET) === 1) ? true : false;
|
$check_get = (count($_GET) === 1) ? true : false;
|
||||||
$check_post = (count($_POST) === 0) ? true : false;
|
$check_post = (count($_POST) === 0) ? true : false;
|
||||||
// Only allow the parameter 'file'
|
|
||||||
$check_parameter = (!empty($file_hash)) ? true : false;
|
// Only allow the parameter 'file'.
|
||||||
|
$check_parameter = (empty($file_hash) === false) ? true : false;
|
||||||
$check_string = (preg_match('/^[0-9a-zA-Z]{8}$/', $file_hash) === 1) ? true : false;
|
$check_string = (preg_match('/^[0-9a-zA-Z]{8}$/', $file_hash) === 1) ? true : false;
|
||||||
|
|
||||||
$checks = ($check_request && $check_get && $check_post && $check_parameter && $check_string);
|
$checks = ($check_request && $check_get && $check_post && $check_parameter && $check_string);
|
||||||
if (!$checks) {
|
if (!$checks) {
|
||||||
throw_error(15);
|
throw_error(15);
|
||||||
// ERROR
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get the db file row
|
// Get the db file row.
|
||||||
$file = db_get_row_filter('tfiles_repo', ['hash' => $file_hash]);
|
$file = db_get_row_filter('tfiles_repo', ['hash' => $file_hash]);
|
||||||
if (!$file) {
|
if (!$file) {
|
||||||
throw_error(10);
|
throw_error(10);
|
||||||
// ERROR
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Case sensitive check
|
// Case sensitive check.
|
||||||
$check_hash = ($file['hash'] == $file_hash) ? true : false;
|
$check_hash = ($file['hash'] == $file_hash) ? true : false;
|
||||||
if (!$check_hash) {
|
if (!$check_hash) {
|
||||||
throw_error(10);
|
throw_error(10);
|
||||||
// ERROR
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Get the location
|
// Get the location.
|
||||||
$files_repo_path = io_safe_output($config['attachment_store']).'/files_repo';
|
$files_repo_path = io_safe_output($config['attachment_store']).'/files_repo';
|
||||||
$location = $files_repo_path.'/'.$file['id'].'_'.$file['name'];
|
$location = $files_repo_path.'/'.$file['id'].'_'.$file['name'];
|
||||||
if (!file_exists($location) || !is_readable($location) || !is_file($location)) {
|
if (!file_exists($location) || !is_readable($location) || !is_file($location)) {
|
||||||
throw_error(5);
|
throw_error(5);
|
||||||
// ERROR
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// All checks are fine. Download the file!
|
// All checks are fine. Download the file!
|
||||||
@ -58,6 +64,13 @@ header('Content-Disposition: attachment; filename="'.$file['name'].'"');
|
|||||||
readfile($location);
|
readfile($location);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Show errors
|
||||||
|
*
|
||||||
|
* @param integer $time Sleep.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
function throw_error($time=15)
|
function throw_error($time=15)
|
||||||
{
|
{
|
||||||
sleep($time);
|
sleep($time);
|
157
pandora_console/godmode/files_repo/files_repo_list.php
Normal file
157
pandora_console/godmode/files_repo/files_repo_list.php
Normal file
@ -0,0 +1,157 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* File repository List
|
||||||
|
*
|
||||||
|
* @category Files repository
|
||||||
|
* @package Pandora FMS
|
||||||
|
* @subpackage Enterprise
|
||||||
|
* @version 1.0.0
|
||||||
|
* @license See below
|
||||||
|
*
|
||||||
|
* ______ ___ _______ _______ ________
|
||||||
|
* | __ \.-----.--.--.--| |.-----.----.-----. | ___| | | __|
|
||||||
|
* | __/| _ | | _ || _ | _| _ | | ___| |__ |
|
||||||
|
* |___| |___._|__|__|_____||_____|__| |___._| |___| |__|_|__|_______|
|
||||||
|
*
|
||||||
|
* ============================================================================
|
||||||
|
* Copyright (c) 2007-2023 Artica Soluciones Tecnologicas, http://www.artica.es
|
||||||
|
* This code is NOT free software. This code is NOT licenced under GPL2 licence
|
||||||
|
* You cannnot redistribute it without written permission of copyright holder.
|
||||||
|
* ============================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
global $config;
|
||||||
|
|
||||||
|
$offset = (int) get_parameter('offset');
|
||||||
|
$filter = [];
|
||||||
|
$filter['limit'] = $config['block_size'];
|
||||||
|
$filter['offset'] = $offset;
|
||||||
|
$filter['order'] = [
|
||||||
|
'field' => 'id',
|
||||||
|
'order' => 'DESC',
|
||||||
|
];
|
||||||
|
|
||||||
|
$files = files_repo_get_files($filter);
|
||||||
|
|
||||||
|
if (empty($files) === false) {
|
||||||
|
$url = ui_get_full_url('index.php?sec=extensions&sec2=godmode/files_repo/files_repo');
|
||||||
|
|
||||||
|
$total_files = files_repo_get_files(false, true);
|
||||||
|
ui_pagination($total_files, $url, $offset);
|
||||||
|
|
||||||
|
$table = new stdClass();
|
||||||
|
$table->width = '100%';
|
||||||
|
$table->class = 'info_table';
|
||||||
|
$table->style = [];
|
||||||
|
$table->style[1] = 'max-width: 200px;';
|
||||||
|
$table->style[4] = 'text-align: center;';
|
||||||
|
$table->head = [];
|
||||||
|
$table->head[0] = __('Name');
|
||||||
|
$table->head[1] = __('Description');
|
||||||
|
$table->head[2] = __('Size');
|
||||||
|
$table->head[3] = __('Last modification');
|
||||||
|
$table->head[4] = '';
|
||||||
|
$table->data = [];
|
||||||
|
|
||||||
|
foreach ($files as $file_id => $file) {
|
||||||
|
$data = [];
|
||||||
|
// Prepare the filename for the get_file.php script.
|
||||||
|
$document_root = str_replace(
|
||||||
|
'\\',
|
||||||
|
'/',
|
||||||
|
io_safe_output($_SERVER['DOCUMENT_ROOT'])
|
||||||
|
);
|
||||||
|
$file['location'] = str_replace(
|
||||||
|
'\\',
|
||||||
|
'/',
|
||||||
|
io_safe_output($file['location'])
|
||||||
|
);
|
||||||
|
$relative_path = str_replace($document_root, '', $file['location']);
|
||||||
|
$file_name = explode('/', $file['location']);
|
||||||
|
$file_decoded = $file_name[(count($file_name) - 1)];
|
||||||
|
$file_path = base64_encode($file_decoded);
|
||||||
|
$hash = md5($file_path.$config['server_unique_identifier']);
|
||||||
|
$url_get_file = ui_get_full_url(
|
||||||
|
'include/get_file.php?file='.urlencode($file_path).'&hash='.$hash
|
||||||
|
);
|
||||||
|
|
||||||
|
$date_format = (isset($config['date_format']) === true) ? io_safe_output($config['date_format']) : 'F j, Y - H:m';
|
||||||
|
|
||||||
|
$data[0] = '<a href="'.$url_get_file.'" target="_blank">'.$file['name'].'</a>';
|
||||||
|
// Name.
|
||||||
|
$data[1] = ui_print_truncate_text(
|
||||||
|
$file['description'],
|
||||||
|
'description',
|
||||||
|
true,
|
||||||
|
true
|
||||||
|
);
|
||||||
|
// Description.
|
||||||
|
$data[2] = ui_format_filesize($file['size']);
|
||||||
|
// Size.
|
||||||
|
$data[3] = date($date_format, $file['mtime']);
|
||||||
|
// Last modification.
|
||||||
|
// Public URL.
|
||||||
|
$data[4] = '';
|
||||||
|
$table->cellclass[][4] = 'table_action_buttons';
|
||||||
|
if (empty($file['hash']) === false) {
|
||||||
|
$url_get_public_file = ui_get_full_url(
|
||||||
|
'godmode/files_repo/files_repo_get_file.php?file='.$file['hash']
|
||||||
|
);
|
||||||
|
|
||||||
|
$message = __('Copy to clipboard').': Ctrl+C -> Enter';
|
||||||
|
$action = 'window.prompt(\''.$message.'\', \''.$url_get_public_file.'\');';
|
||||||
|
$data[4] .= '<a href="javascript:;" onclick="'.$action.'">';
|
||||||
|
$data[4] .= html_print_image(
|
||||||
|
'images/world.png',
|
||||||
|
true,
|
||||||
|
['title' => __('Public link')]
|
||||||
|
);
|
||||||
|
// Public link image.
|
||||||
|
$data[4] .= '</a> ';
|
||||||
|
}
|
||||||
|
|
||||||
|
$data[4] .= '<a href="'.$url_get_file.'" target="_blank">';
|
||||||
|
$data[4] .= html_print_image(
|
||||||
|
'images/download.png',
|
||||||
|
true,
|
||||||
|
[
|
||||||
|
'title' => __('Download'),
|
||||||
|
'style' => 'padding:3px',
|
||||||
|
]
|
||||||
|
);
|
||||||
|
// Download image.
|
||||||
|
$data[4] .= '</a>';
|
||||||
|
|
||||||
|
$config_url = $url.'&tab=configuration&file_id='.$file_id;
|
||||||
|
$data[4] .= '<a href="'.$config_url.'">';
|
||||||
|
$data[4] .= html_print_image(
|
||||||
|
'images/edit.svg',
|
||||||
|
true,
|
||||||
|
[
|
||||||
|
'title' => __('Edit'),
|
||||||
|
'class' => 'main_menu_icon invert_filter',
|
||||||
|
]
|
||||||
|
);
|
||||||
|
// Edit image.
|
||||||
|
$data[4] .= '</a>';
|
||||||
|
|
||||||
|
$delete_url = $url.'&delete=1&file_id='.$file_id;
|
||||||
|
$data[4] .= '<a href="'.$delete_url.'" onClick="if (!confirm(\''.__('Are you sure?').'\')) return false;">';
|
||||||
|
$data[4] .= html_print_image(
|
||||||
|
'images/delete.svg',
|
||||||
|
true,
|
||||||
|
[
|
||||||
|
'title' => __('Delete'),
|
||||||
|
'class' => 'main_menu_icon invert_filter',
|
||||||
|
]
|
||||||
|
);
|
||||||
|
// Delete image.
|
||||||
|
$data[4] .= '</a>';
|
||||||
|
|
||||||
|
$table->data[] = $data;
|
||||||
|
}
|
||||||
|
|
||||||
|
html_print_table($table);
|
||||||
|
} else {
|
||||||
|
ui_print_info_message(__('No items'));
|
||||||
|
}
|
@ -194,6 +194,10 @@ if ($update_agents) {
|
|||||||
$values['safe_mode_module'] = '0';
|
$values['safe_mode_module'] = '0';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (get_parameter('ignore_unknown', '') != '') {
|
||||||
|
$values['ignore_unknown'] = get_parameter('ignore_unknown');
|
||||||
|
}
|
||||||
|
|
||||||
$secondary_groups_added = (array) get_parameter(
|
$secondary_groups_added = (array) get_parameter(
|
||||||
'secondary_groups_added',
|
'secondary_groups_added',
|
||||||
[]
|
[]
|
||||||
@ -1183,6 +1187,24 @@ $table->data[7][1] .= html_print_select(
|
|||||||
true
|
true
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$table->data[8][0] = __('Ignore unknown').ui_print_help_tip(_('This disables the calculation of the unknown state in the agent and any of its modules, so it will never transition to unknown. The state it reflects is the last known status.'), true);
|
||||||
|
$table->data[8][1] = html_print_select(
|
||||||
|
[
|
||||||
|
'' => __('No change'),
|
||||||
|
'1' => __('Yes'),
|
||||||
|
'0' => __('No'),
|
||||||
|
],
|
||||||
|
'ignore_unknown',
|
||||||
|
'',
|
||||||
|
'',
|
||||||
|
'',
|
||||||
|
'',
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'w100p'
|
||||||
|
);
|
||||||
|
|
||||||
ui_toggle(html_print_table($table, true), __('Advanced options'));
|
ui_toggle(html_print_table($table, true), __('Advanced options'));
|
||||||
unset($table);
|
unset($table);
|
||||||
|
|
||||||
|
@ -1319,7 +1319,7 @@ $table->data[29][0] = html_print_label_input_block(
|
|||||||
);
|
);
|
||||||
|
|
||||||
$table->data[29][1] = html_print_label_input_block(
|
$table->data[29][1] = html_print_label_input_block(
|
||||||
__('Discard unknown events'),
|
__('Discard unknown events').ui_print_help_tip(__('With this mode, the unknown state will be detected, but it will not generate events.'), true),
|
||||||
html_print_select(
|
html_print_select(
|
||||||
[
|
[
|
||||||
'' => __('No change'),
|
'' => __('No change'),
|
||||||
@ -1544,6 +1544,26 @@ $table->data[40][0] = html_print_label_input_block(
|
|||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$table->data[40][1] = html_print_label_input_block(
|
||||||
|
__('Ignore unknown').ui_print_help_tip(_('This disables the module\'s state calculation to unknown, so it will never transition to unknown. The state it reflects is the last known status.'), true),
|
||||||
|
html_print_select(
|
||||||
|
[
|
||||||
|
'' => __('No change'),
|
||||||
|
'1' => __('Yes'),
|
||||||
|
'0' => __('No'),
|
||||||
|
],
|
||||||
|
'ignore_unknown',
|
||||||
|
'',
|
||||||
|
'',
|
||||||
|
'',
|
||||||
|
'',
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'w100p'
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
echo '<form method="post" class="max_floating_element_size" action="index.php?sec=gmassive&sec2=godmode/massive/massive_operations&option=edit_modules" id="form_edit">';
|
echo '<form method="post" class="max_floating_element_size" action="index.php?sec=gmassive&sec2=godmode/massive/massive_operations&option=edit_modules" id="form_edit">';
|
||||||
html_print_table($table);
|
html_print_table($table);
|
||||||
|
|
||||||
@ -2358,6 +2378,7 @@ function process_manage_edit($module_name, $agents_select=null, $module_status='
|
|||||||
'plugin_pass',
|
'plugin_pass',
|
||||||
'id_export',
|
'id_export',
|
||||||
'history_data',
|
'history_data',
|
||||||
|
'ignore_unknown',
|
||||||
'critical_inverse',
|
'critical_inverse',
|
||||||
'warning_inverse',
|
'warning_inverse',
|
||||||
'percentage_warning',
|
'percentage_warning',
|
||||||
|
@ -498,6 +498,9 @@ if ($access_console_node === true) {
|
|||||||
$sub2['godmode/setup/setup§ion=welcome_tips']['text'] = __('Welcome Tips');
|
$sub2['godmode/setup/setup§ion=welcome_tips']['text'] = __('Welcome Tips');
|
||||||
$sub2['godmode/setup/setup§ion=welcome_tips']['refr'] = 0;
|
$sub2['godmode/setup/setup§ion=welcome_tips']['refr'] = 0;
|
||||||
|
|
||||||
|
$sub2['godmode/setup/setup§ion=demo_data']['text'] = __('Demo data');
|
||||||
|
$sub2['godmode/setup/setup§ion=demo_data']['refr'] = 0;
|
||||||
|
|
||||||
if ((bool) $config['activate_gis'] === true) {
|
if ((bool) $config['activate_gis'] === true) {
|
||||||
$sub2['godmode/setup/setup§ion=gis']['text'] = __('Map conections GIS');
|
$sub2['godmode/setup/setup§ion=gis']['text'] = __('Map conections GIS');
|
||||||
}
|
}
|
||||||
@ -508,6 +511,8 @@ if ($access_console_node === true) {
|
|||||||
|
|
||||||
enterprise_hook('skins_submenu');
|
enterprise_hook('skins_submenu');
|
||||||
|
|
||||||
|
enterprise_hook('translate_string_submenu');
|
||||||
|
|
||||||
$menu_godmode['gsetup']['sub'] = $sub;
|
$menu_godmode['gsetup']['sub'] = $sub;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -711,15 +716,25 @@ if ($access_console_node === true) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($access_console_node === true) {
|
if ($access_console_node === true) {
|
||||||
// Tools
|
// Tools.
|
||||||
$menu_godmode['tools']['text'] = __('Tools');
|
$menu_godmode['tools']['text'] = __('Tools');
|
||||||
$menu_godmode['tools']['sec2'] = 'operation/extensions';
|
$menu_godmode['tools']['sec2'] = 'operation/extensions';
|
||||||
$menu_godmode['tools']['id'] = 'oper-extensions';
|
$menu_godmode['tools']['id'] = 'oper-extensions';
|
||||||
$sub = [];
|
$sub = [];
|
||||||
$sub['operation/agentes/exportdata']['text'] = __('Export data');
|
|
||||||
$sub['operation/agentes/exportdata']['id'] = 'export_data';
|
if (check_acl($config['id_user'], 0, 'RR')
|
||||||
$sub['extensions/files_repo']['text'] = __('File repository');
|
|| check_acl($config['id_user'], 0, 'RW')
|
||||||
$sub['extensions/files_repo']['id'] = 'file_repository';
|
|| check_acl($config['id_user'], 0, 'RM')
|
||||||
|
) {
|
||||||
|
$sub['operation/agentes/exportdata']['text'] = __('Export data');
|
||||||
|
$sub['operation/agentes/exportdata']['id'] = 'export_data';
|
||||||
|
}
|
||||||
|
|
||||||
|
if ((bool) check_acl($config['id_user'], 0, 'PM') === true) {
|
||||||
|
$sub['godmode/files_repo/files_repo']['text'] = __('File repository');
|
||||||
|
$sub['godmode/files_repo/files_repo']['id'] = 'file_repository';
|
||||||
|
}
|
||||||
|
|
||||||
$menu_godmode['tools']['sub'] = $sub;
|
$menu_godmode['tools']['sub'] = $sub;
|
||||||
|
|
||||||
// About.
|
// About.
|
||||||
|
@ -559,14 +559,14 @@ $next_row++;
|
|||||||
){
|
){
|
||||||
if (language == 'es'){
|
if (language == 'es'){
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/es/documentation/03_monitoring/02_operations#tipos_de_modulos',
|
'https://pandorafms.com/manual/es/documentation/pandorafms/monitoring/02_operations#tipos_de_modulos',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/en/documentation/03_monitoring/02_operations#types_of_modules',
|
'https://pandorafms.com/manual/en/documentation/pandorafms/monitoring/02_operations#types_of_modules',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
@ -579,14 +579,14 @@ $next_row++;
|
|||||||
){
|
){
|
||||||
if(language == 'es'){
|
if(language == 'es'){
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/es/documentation/03_monitoring/03_remote_monitoring#monitorizacion_icmp',
|
'https://pandorafms.com/manual/es/documentation/pandorafms/monitoring/03_remote_monitoring#monitorizacion_icmp',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/en/documentation/03_monitoring/03_remote_monitoring#icmp_monitoring',
|
'https://pandorafms.com/manual/en/documentation/pandorafms/monitoring/03_remote_monitoring#icmp_monitoring',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
@ -601,14 +601,14 @@ $next_row++;
|
|||||||
){
|
){
|
||||||
if(language == 'es'){
|
if(language == 'es'){
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/es/documentation/03_monitoring/03_remote_monitoring#monitorizando_con_modulos_de_red_tipo_snmp',
|
'https://pandorafms.com/manual/es/documentation/pandorafms/monitoring/03_remote_monitoring#monitorizando_con_modulos_de_red_tipo_snmp',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/en/documentation/03_monitoring/03_remote_monitoring&printable=yes#monitoring_through_network_modules_with_snmp',
|
'https://pandorafms.com/manual/en/documentation/pandorafms/monitoring/03_remote_monitoring&printable=yes#monitoring_through_network_modules_with_snmp',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
@ -623,14 +623,14 @@ $next_row++;
|
|||||||
){
|
){
|
||||||
if(language == 'es'){
|
if(language == 'es'){
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/es/documentation/03_monitoring/03_remote_monitoring#monitorizacion_tcp',
|
'https://pandorafms.com/manual/es/documentation/pandorafms/monitoring/03_remote_monitoring#monitorizacion_tcp',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/en/documentation/03_monitoring/03_remote_monitoring&printable=yes#tcp_monitoring',
|
'https://pandorafms.com/manual/en/documentation/pandorafms/monitoring/03_remote_monitoring&printable=yes#tcp_monitoring',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
@ -645,14 +645,14 @@ $next_row++;
|
|||||||
){
|
){
|
||||||
if(language == 'es'){
|
if(language == 'es'){
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/es/documentation/03_monitoring/06_web_monitoring#creacion_de_modulos_web',
|
'https://pandorafms.com/manual/es/documentation/pandorafms/monitoring/06_web_monitoring#creacion_de_modulos_web',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
window.open(
|
window.open(
|
||||||
'https://pandorafms.com/manual/en/documentation/03_monitoring/06_web_monitoring#creating_web_modules',
|
'https://pandorafms.com/manual/en/documentation/pandorafms/monitoring/06_web_monitoring#creating_web_modules',
|
||||||
'_blank',
|
'_blank',
|
||||||
'width=800,height=600'
|
'width=800,height=600'
|
||||||
);
|
);
|
||||||
|
@ -236,17 +236,39 @@ if ($add_module === true) {
|
|||||||
$id_modules
|
$id_modules
|
||||||
);
|
);
|
||||||
|
|
||||||
$id_agent_modules = db_get_all_rows_sql(
|
$sql = sprintf(
|
||||||
'SELECT id_agente_modulo FROM tagente_modulo WHERE id_agente IN ('.implode(',', $id_agents).") AND nombre IN ('".implode("','", $id_modules)."')"
|
'SELECT id_agente_modulo
|
||||||
|
FROM tagente_modulo
|
||||||
|
WHERE id_agente IN (%s)
|
||||||
|
AND nombre IN ("%s")',
|
||||||
|
implode(',', $id_agents),
|
||||||
|
implode('","', $id_modules)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$id_agent_modules = db_get_all_rows_sql($sql);
|
||||||
|
|
||||||
if (count($id_agent_modules) > 0 && $id_agent_modules != '') {
|
if (count($id_agent_modules) > 0 && $id_agent_modules != '') {
|
||||||
$order = db_get_row_sql("SELECT `field_order` from tgraph_source WHERE id_graph=$id_graph ORDER BY `field_order` DESC");
|
$sql_order = sprintf(
|
||||||
|
'SELECT `field_order`
|
||||||
|
FROM tgraph_source
|
||||||
|
WHERE id_graph=%d
|
||||||
|
ORDER BY `field_order` DESC',
|
||||||
|
$id_graph
|
||||||
|
);
|
||||||
|
$order = db_get_row_sql($sql_order);
|
||||||
|
|
||||||
$order = $order['field_order'];
|
$order = $order['field_order'];
|
||||||
foreach ($id_agent_modules as $id_agent_module) {
|
foreach ($id_agent_modules as $id_agent_module) {
|
||||||
$order++;
|
$order++;
|
||||||
$result = db_process_sql_insert('tgraph_source', ['id_graph' => $id_graph, 'id_agent_module' => $id_agent_module['id_agente_modulo'], 'weight' => $weight, 'field_order' => $order]);
|
$result = db_process_sql_insert(
|
||||||
|
'tgraph_source',
|
||||||
|
[
|
||||||
|
'id_graph' => $id_graph,
|
||||||
|
'id_agent_module' => $id_agent_module['id_agente_modulo'],
|
||||||
|
'weight' => $weight,
|
||||||
|
'field_order' => $order,
|
||||||
|
]
|
||||||
|
);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$result = false;
|
$result = false;
|
||||||
|
@ -154,6 +154,14 @@ $image_threshold = false;
|
|||||||
$time_compare_overlapped = false;
|
$time_compare_overlapped = false;
|
||||||
$unknowns_graph = false;
|
$unknowns_graph = false;
|
||||||
|
|
||||||
|
$periodicity_chart = false;
|
||||||
|
$period_maximum = true;
|
||||||
|
$period_minimum = true;
|
||||||
|
$period_average = true;
|
||||||
|
$period_summatory = false;
|
||||||
|
$period_slice_chart = SECONDS_1HOUR;
|
||||||
|
$period_mode = CUSTOM_GRAPH_VBARS;
|
||||||
|
|
||||||
// Added for events items.
|
// Added for events items.
|
||||||
$server_multiple = [0];
|
$server_multiple = [0];
|
||||||
$show_summary_group = false;
|
$show_summary_group = false;
|
||||||
@ -353,11 +361,19 @@ switch ($action) {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 'simple_graph':
|
case 'simple_graph':
|
||||||
$fullscale = isset($style['fullscale']) ? (bool) $style['fullscale'] : 0;
|
$fullscale = (isset($style['fullscale']) === true) ? (bool) $style['fullscale'] : 0;
|
||||||
$percentil = isset($style['percentil']) ? (bool) $style['percentil'] : 0;
|
$percentil = isset($style['percentil']) ? (bool) $style['percentil'] : 0;
|
||||||
$image_threshold = (isset($style['image_threshold']) === true) ? (bool) $style['image_threshold'] : false;
|
$image_threshold = (isset($style['image_threshold']) === true) ? (bool) $style['image_threshold'] : false;
|
||||||
$graph_render = $item['graph_render'];
|
$graph_render = $item['graph_render'];
|
||||||
$unknowns_graph = $item['check_unknowns_graph'];
|
$unknowns_graph = $item['check_unknowns_graph'];
|
||||||
|
$periodicity_chart = (isset($style['periodicity_chart']) === true) ? $style['periodicity_chart'] : false;
|
||||||
|
$period_maximum = (isset($style['period_maximum']) === true) ? $style['period_maximum'] : true;
|
||||||
|
$period_minimum = (isset($style['period_minimum']) === true) ? $style['period_minimum'] : true;
|
||||||
|
$period_average = (isset($style['period_average']) === true) ? $style['period_average'] : true;
|
||||||
|
$period_summatory = (isset($style['period_summatory']) === true) ? $style['period_summatory'] : false;
|
||||||
|
$period_slice_chart = (isset($style['period_slice_chart']) === true) ? $style['period_slice_chart'] : SECONDS_1HOUR;
|
||||||
|
$period_mode = (isset($style['period_mode']) === true) ? $style['period_mode'] : CUSTOM_GRAPH_VBARS;
|
||||||
|
|
||||||
// The break hasn't be forgotten.
|
// The break hasn't be forgotten.
|
||||||
case 'simple_baseline_graph':
|
case 'simple_baseline_graph':
|
||||||
case 'projection_graph':
|
case 'projection_graph':
|
||||||
@ -3050,6 +3066,22 @@ if (is_metaconsole() === true) {
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
<tr id="row_periodicity_chart" class="datos">
|
||||||
|
<td class="bolder"><?php echo __('Sliced mode'); ?></td>
|
||||||
|
<td >
|
||||||
|
<?php
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'periodicity_chart',
|
||||||
|
1,
|
||||||
|
(bool) $periodicity_chart,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'showPeriodicityOptions(this)'
|
||||||
|
);
|
||||||
|
?>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
<tr id="row_graph_render" class="datos">
|
<tr id="row_graph_render" class="datos">
|
||||||
<td class="bolder">
|
<td class="bolder">
|
||||||
<?php
|
<?php
|
||||||
@ -3197,6 +3229,111 @@ if (is_metaconsole() === true) {
|
|||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
|
<tr id="row_period_maximum" class="datos">
|
||||||
|
<td class="bolder"><?php echo __('Maximum'); ?></td>
|
||||||
|
<td >
|
||||||
|
<?php
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'period_maximum',
|
||||||
|
1,
|
||||||
|
(bool) $period_maximum,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
?>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr id="row_period_minimum" class="datos">
|
||||||
|
<td class="bolder"><?php echo __('Minimum'); ?></td>
|
||||||
|
<td >
|
||||||
|
<?php
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'period_minimum',
|
||||||
|
1,
|
||||||
|
(bool) $period_minimum,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
?>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr id="row_period_average" class="datos">
|
||||||
|
<td class="bolder"><?php echo __('Average'); ?></td>
|
||||||
|
<td >
|
||||||
|
<?php
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'period_average',
|
||||||
|
1,
|
||||||
|
(bool) $period_average,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
?>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr id="row_period_summatory" class="datos">
|
||||||
|
<td class="bolder"><?php echo __('Summatory'); ?></td>
|
||||||
|
<td >
|
||||||
|
<?php
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'period_summatory',
|
||||||
|
1,
|
||||||
|
(bool) $period_summatory,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
?>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr id="row_period_slice_chart" class="datos">
|
||||||
|
<td class="bolder"><?php echo __('Slice'); ?></td>
|
||||||
|
<td >
|
||||||
|
<?php
|
||||||
|
html_print_extended_select_for_time(
|
||||||
|
'period_slice_chart',
|
||||||
|
(string) $period_slice_chart,
|
||||||
|
'',
|
||||||
|
'',
|
||||||
|
0,
|
||||||
|
7,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
true,
|
||||||
|
'',
|
||||||
|
false,
|
||||||
|
[
|
||||||
|
SECONDS_1HOUR => __('1 hour'),
|
||||||
|
SECONDS_1DAY => __('1 day'),
|
||||||
|
SECONDS_1WEEK => __('1 week'),
|
||||||
|
SECONDS_1MONTH => __('1 month'),
|
||||||
|
]
|
||||||
|
);
|
||||||
|
?>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr id="row_period_mode" class="datos">
|
||||||
|
<td class="bolder"><?php echo __('Mode'); ?></td>
|
||||||
|
<td >
|
||||||
|
<?php
|
||||||
|
$options_period_mode = [
|
||||||
|
CUSTOM_GRAPH_AREA => __('Area'),
|
||||||
|
CUSTOM_GRAPH_LINE => __('Line'),
|
||||||
|
CUSTOM_GRAPH_VBARS => __('Vertical bars'),
|
||||||
|
];
|
||||||
|
html_print_select(
|
||||||
|
$options_period_mode,
|
||||||
|
'period_mode',
|
||||||
|
$period_mode,
|
||||||
|
'',
|
||||||
|
'',
|
||||||
|
0,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
?>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
<tr id="row_exception_condition" class="datos">
|
<tr id="row_exception_condition" class="datos">
|
||||||
<td class="bolder"><?php echo __('Condition'); ?></td>
|
<td class="bolder"><?php echo __('Condition'); ?></td>
|
||||||
<td>
|
<td>
|
||||||
@ -7305,6 +7442,13 @@ function chooseType() {
|
|||||||
$("#row_filter_search").hide();
|
$("#row_filter_search").hide();
|
||||||
$("#row_filter_exclude").hide();
|
$("#row_filter_exclude").hide();
|
||||||
$("#row_percentil").hide();
|
$("#row_percentil").hide();
|
||||||
|
$("#row_periodicity_chart").hide();
|
||||||
|
$("#row_period_maximum").hide();
|
||||||
|
$("#row_period_minimum").hide();
|
||||||
|
$("#row_period_average").hide();
|
||||||
|
$("#row_period_summatory").hide();
|
||||||
|
$("#row_period_slice_chart").hide();
|
||||||
|
$("#row_period_mode").hide();
|
||||||
$("#log_help_tip").css("visibility", "hidden");
|
$("#log_help_tip").css("visibility", "hidden");
|
||||||
$("#agents_row").hide();
|
$("#agents_row").hide();
|
||||||
$("#agents_modules_row").hide();
|
$("#agents_modules_row").hide();
|
||||||
@ -7448,12 +7592,23 @@ function chooseType() {
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case 'simple_graph':
|
case 'simple_graph':
|
||||||
$("#row_time_compare_overlapped").show();
|
$("#row_periodicity_chart").show();
|
||||||
$("#row_fullscale").show();
|
var periodicity_chart = $("input[name='periodicity_chart']").prop("checked");
|
||||||
$("#row_image_threshold").show();
|
if(periodicity_chart){
|
||||||
$("#row_graph_render").show();
|
$("#row_period_maximum").show();
|
||||||
$("#row_percentil").show();
|
$("#row_period_minimum").show();
|
||||||
$("#row_unknowns_graph").show();
|
$("#row_period_average").show();
|
||||||
|
$("#row_period_summatory").show();
|
||||||
|
$("#row_period_slice_chart").show();
|
||||||
|
$("#row_period_mode").show();
|
||||||
|
} else {
|
||||||
|
$("#row_time_compare_overlapped").show();
|
||||||
|
$("#row_fullscale").show();
|
||||||
|
$("#row_image_threshold").show();
|
||||||
|
$("#row_graph_render").show();
|
||||||
|
$("#row_percentil").show();
|
||||||
|
$("#row_unknowns_graph").show();
|
||||||
|
}
|
||||||
|
|
||||||
// Force type.
|
// Force type.
|
||||||
if('<?php echo $action; ?>' === 'new'){
|
if('<?php echo $action; ?>' === 'new'){
|
||||||
|
@ -2523,6 +2523,15 @@ switch ($action) {
|
|||||||
$style['image_threshold'] = (int) get_parameter(
|
$style['image_threshold'] = (int) get_parameter(
|
||||||
'image_threshold'
|
'image_threshold'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$style['periodicity_chart'] = (int) get_parameter_checkbox('periodicity_chart', 0);
|
||||||
|
$style['period_maximum'] = (int) get_parameter_checkbox('period_maximum', 1);
|
||||||
|
$style['period_minimum'] = (int) get_parameter_checkbox('period_minimum', 1);
|
||||||
|
$style['period_average'] = (int) get_parameter_checkbox('period_average', 1);
|
||||||
|
$style['period_summatory'] = (int) get_parameter_checkbox('period_summatory', 0);
|
||||||
|
$style['period_slice_chart'] = get_parameter('period_slice_chart', SECONDS_1HOUR);
|
||||||
|
$style['period_mode'] = get_parameter('period_mode', CUSTOM_GRAPH_VBARS);
|
||||||
|
|
||||||
if ($label != '') {
|
if ($label != '') {
|
||||||
$style['label'] = $label;
|
$style['label'] = $label;
|
||||||
} else {
|
} else {
|
||||||
@ -3512,6 +3521,15 @@ switch ($action) {
|
|||||||
$style['image_threshold'] = (int) get_parameter(
|
$style['image_threshold'] = (int) get_parameter(
|
||||||
'image_threshold'
|
'image_threshold'
|
||||||
);
|
);
|
||||||
|
|
||||||
|
$style['periodicity_chart'] = (int) get_parameter_checkbox('periodicity_chart', 0);
|
||||||
|
$style['period_maximum'] = (int) get_parameter_checkbox('period_maximum', 1);
|
||||||
|
$style['period_minimum'] = (int) get_parameter_checkbox('period_minimum', 1);
|
||||||
|
$style['period_average'] = (int) get_parameter_checkbox('period_average', 1);
|
||||||
|
$style['period_summatory'] = (int) get_parameter_checkbox('period_summatory', 0);
|
||||||
|
$style['period_slice_chart'] = get_parameter('period_slice_chart', SECONDS_1HOUR);
|
||||||
|
$style['period_mode'] = get_parameter('period_mode', CUSTOM_GRAPH_VBARS);
|
||||||
|
|
||||||
if ($label != '') {
|
if ($label != '') {
|
||||||
$style['label'] = $label;
|
$style['label'] = $label;
|
||||||
} else {
|
} else {
|
||||||
|
@ -144,7 +144,7 @@ foreach ($servers as $server) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Type.
|
// Type.
|
||||||
$data[2] = '<span class="nowrap">'.$server['img'].' '.$server['name'];
|
$data[2] = '<span class="nowrap">'.$server['img'].' '.$server['server_name'];
|
||||||
if ($server['master'] == $master) {
|
if ($server['master'] == $master) {
|
||||||
$data[3] .= __('Yes', true);
|
$data[3] .= __('Yes', true);
|
||||||
} else {
|
} else {
|
||||||
|
874
pandora_console/godmode/setup/demo.php
Normal file
874
pandora_console/godmode/setup/demo.php
Normal file
@ -0,0 +1,874 @@
|
|||||||
|
<?php
|
||||||
|
/**
|
||||||
|
* Enterprise Main Setup.
|
||||||
|
*
|
||||||
|
* @category Setup
|
||||||
|
* @package Pandora FMS
|
||||||
|
* @subpackage Enterprise
|
||||||
|
* @version 1.0.0
|
||||||
|
* @license See below
|
||||||
|
*
|
||||||
|
* ______ ___ _______ _______ ________
|
||||||
|
* | __ \.-----.--.--.--| |.-----.----.-----. | ___| | | __|
|
||||||
|
* | __/| _ | | _ || _ | _| _ | | ___| |__ |
|
||||||
|
* |___| |___._|__|__|_____||_____|__| |___._| |___| |__|_|__|_______|
|
||||||
|
*
|
||||||
|
* ============================================================================
|
||||||
|
* Copyright (c) 2007-2023 Pandora FMS, http://www.pandorafms.com
|
||||||
|
* This code is NOT free software. This code is NOT licenced under GPL2 licence
|
||||||
|
* You cannnot redistribute it without written permission of copyright holder.
|
||||||
|
* ============================================================================
|
||||||
|
*/
|
||||||
|
|
||||||
|
global $config;
|
||||||
|
global $table;
|
||||||
|
|
||||||
|
check_login();
|
||||||
|
|
||||||
|
if (users_is_admin() === false) {
|
||||||
|
db_pandora_audit(
|
||||||
|
AUDIT_LOG_ACL_VIOLATION,
|
||||||
|
'Trying to access demo data manager'
|
||||||
|
);
|
||||||
|
include 'general/noaccess.php';
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
html_print_input_hidden('demo_items_count', 0);
|
||||||
|
|
||||||
|
$display_loading = (bool) get_parameter('display_loading', 0);
|
||||||
|
|
||||||
|
$agents_num = (int) get_parameter('agents_num', 30);
|
||||||
|
$create_data = (bool) get_parameter('create_data', false);
|
||||||
|
$delete_data = (bool) get_parameter('delete_data', false);
|
||||||
|
|
||||||
|
$def_value = 0;
|
||||||
|
if ($create_data === false) {
|
||||||
|
$def_value = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
$adv_options_is_enabled = get_parameter('toggle_adv_opts', 0);
|
||||||
|
$days_hist_data = (int) get_parameter('days_hist_data', 15);
|
||||||
|
$interval = get_parameter('interval', 300);
|
||||||
|
$service_agent_name = get_parameter('service_agent_name', 'demo-global-agent-1');
|
||||||
|
|
||||||
|
// Map directory and demo item ID.
|
||||||
|
$dir_item_id_map = [
|
||||||
|
DEMO_CUSTOM_GRAPH => 'graphs',
|
||||||
|
DEMO_NETWORK_MAP => 'network_maps',
|
||||||
|
DEMO_GIS_MAP => 'gis_maps',
|
||||||
|
DEMO_SERVICE => 'services',
|
||||||
|
DEMO_REPORT => 'reports',
|
||||||
|
DEMO_DASHBOARD => 'dashboards',
|
||||||
|
DEMO_VISUAL_CONSOLE => 'visual_consoles',
|
||||||
|
];
|
||||||
|
|
||||||
|
$enabled_items = [
|
||||||
|
'graphs' => (int) get_parameter('enable_cg', $def_value),
|
||||||
|
'network_maps' => (int) get_parameter('enable_nm', $def_value),
|
||||||
|
'gis_maps' => (int) get_parameter('enable_gis', $def_value),
|
||||||
|
'services' => (int) get_parameter('enable_services', $def_value),
|
||||||
|
'reports' => (int) get_parameter('enable_rep', $def_value),
|
||||||
|
'dashboards' => (int) get_parameter('enable_dashboards', $def_value),
|
||||||
|
'visual_consoles' => (int) get_parameter('enable_vc', $def_value),
|
||||||
|
'enable_history' => (int) get_parameter('enable_history', 0),
|
||||||
|
];
|
||||||
|
|
||||||
|
$generate_hist = (int) get_parameter('enable_history', $def_value);
|
||||||
|
|
||||||
|
$plugin_agent = get_parameter('plugin_agent', 'demo-global-agent-1');
|
||||||
|
$traps_target_ip = get_parameter('traps_target_ip', '127.0.0.1');
|
||||||
|
$traps_community = get_parameter('traps_community', 'public');
|
||||||
|
$tentacle_target_ip = get_parameter('tentacle_target_ip', '127.0.0.1');
|
||||||
|
$tentacle_port = get_parameter('tentacle_port', '41121');
|
||||||
|
$tentacle_extra_options = get_parameter('tentacle_extra_options', '');
|
||||||
|
|
||||||
|
$demo_items_count = (int) db_get_value('count(*)', 'tdemo_data');
|
||||||
|
|
||||||
|
$current_progress_val = db_get_value_filter(
|
||||||
|
'value',
|
||||||
|
'tconfig',
|
||||||
|
['token' => 'demo_data_load_progress'],
|
||||||
|
'AND',
|
||||||
|
false,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
|
||||||
|
$current_progress_val_delete = db_get_value_filter(
|
||||||
|
'value',
|
||||||
|
'tconfig',
|
||||||
|
['token' => 'demo_data_delete_progress'],
|
||||||
|
'AND',
|
||||||
|
false,
|
||||||
|
false
|
||||||
|
);
|
||||||
|
|
||||||
|
$running_create = ($current_progress_val > 0 && $current_progress_val < 100);
|
||||||
|
$running_delete = ($current_progress_val_delete > 0 && $current_progress_val_delete < 100);
|
||||||
|
|
||||||
|
// Real time loading.
|
||||||
|
if ($display_loading === true || $running_create === true || $running_delete) {
|
||||||
|
$table_load = new stdClass();
|
||||||
|
$table_load->id = 'table-demo';
|
||||||
|
$table_load->class = 'filter-table-adv';
|
||||||
|
$table_load->width = '100%';
|
||||||
|
$table_load->data = [];
|
||||||
|
$table_load->size = [];
|
||||||
|
$table_load->size[0] = '50%';
|
||||||
|
$table_load->size[1] = '50%';
|
||||||
|
|
||||||
|
$table_load->data['row0'][] = progress_bar(
|
||||||
|
0,
|
||||||
|
100,
|
||||||
|
20,
|
||||||
|
'',
|
||||||
|
0,
|
||||||
|
false,
|
||||||
|
((int) 0 !== -1) ? false : '#f3b200',
|
||||||
|
[
|
||||||
|
'class' => 'progress_bar',
|
||||||
|
'id' => 'progress_bar',
|
||||||
|
]
|
||||||
|
).html_print_input_hidden('js_timer_'.$operation['id'], 0, true);
|
||||||
|
|
||||||
|
if ($create_data === true || $running_create === true) {
|
||||||
|
// Map demo item ID to display name in page.
|
||||||
|
$items_ids_text_map = [
|
||||||
|
DEMO_AGENT => 'agents',
|
||||||
|
DEMO_SERVICE => 'services',
|
||||||
|
DEMO_NETWORK_MAP => 'network maps',
|
||||||
|
DEMO_GIS_MAP => 'GIS maps',
|
||||||
|
DEMO_CUSTOM_GRAPH => 'custom graphs',
|
||||||
|
DEMO_REPORT => 'custom reports',
|
||||||
|
DEMO_VISUAL_CONSOLE => 'visual consoles',
|
||||||
|
DEMO_DASHBOARD => 'dashboards',
|
||||||
|
];
|
||||||
|
|
||||||
|
if ((bool) $adv_options_is_enabled === true) {
|
||||||
|
$enabled_keys = array_keys(array_filter($enabled_items));
|
||||||
|
$items_ids_text_map = array_filter(
|
||||||
|
$items_ids_text_map,
|
||||||
|
function ($k) use ($dir_item_id_map, $enabled_keys) {
|
||||||
|
return in_array($dir_item_id_map[$k], $enabled_keys);
|
||||||
|
},
|
||||||
|
ARRAY_FILTER_USE_KEY
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (enterprise_installed() === false) {
|
||||||
|
unset($items_ids_text_map[DEMO_SERVICE]);
|
||||||
|
}
|
||||||
|
|
||||||
|
$items_ids_text_map[DEMO_PLUGIN] = 'plugin';
|
||||||
|
$items_ids_text_map = ([DEMO_AGENT => 'agents'] + $items_ids_text_map);
|
||||||
|
|
||||||
|
$list_mkup = '<ul id="load-info">';
|
||||||
|
foreach ($items_ids_text_map as $item_id => $item_text) {
|
||||||
|
$list_mkup .= '<li data-item-id="'.$item_id.'">';
|
||||||
|
$list_mkup .= '<div class="inline vertical_middle w20px h20px" style="margin-right: 10px;">'.html_print_image(
|
||||||
|
'images/icono-unknown.png',
|
||||||
|
true,
|
||||||
|
[
|
||||||
|
'title' => __('View'),
|
||||||
|
'class' => 'icon w100p h100p',
|
||||||
|
]
|
||||||
|
).'</div>';
|
||||||
|
$list_mkup .= '<span class="inline vertical_middle">Create demo '.$item_text.'</span>';
|
||||||
|
$list_mkup .= '<ul class="error-list error margin-bottom-10" style="margin-left: 35px;">';
|
||||||
|
$list_mkup .= '</ul>';
|
||||||
|
$list_mkup .= '</li>';
|
||||||
|
}
|
||||||
|
|
||||||
|
$list_mkup .= '</ul>';
|
||||||
|
}
|
||||||
|
|
||||||
|
echo '<form class="max_floating_element_size" method="post">';
|
||||||
|
echo '<fieldset>';
|
||||||
|
echo '<legend>'.__('Progress').'</legend>';
|
||||||
|
html_print_table($table_load);
|
||||||
|
echo $list_mkup;
|
||||||
|
|
||||||
|
echo '</fieldset>';
|
||||||
|
|
||||||
|
if ($create_data === true || $running_create === true) {
|
||||||
|
$btn_span = __('View summary');
|
||||||
|
$icon = 'next';
|
||||||
|
} else {
|
||||||
|
$btn_span = __('Back');
|
||||||
|
$icon = 'back';
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
$action_btns = html_print_action_buttons(
|
||||||
|
html_print_submit_button(
|
||||||
|
$btn_span,
|
||||||
|
'redirect_button',
|
||||||
|
false,
|
||||||
|
['icon' => $icon],
|
||||||
|
true
|
||||||
|
),
|
||||||
|
[],
|
||||||
|
true
|
||||||
|
);
|
||||||
|
|
||||||
|
// Only rendered when data creation has been completed.
|
||||||
|
html_print_div(
|
||||||
|
[
|
||||||
|
'id' => 'action-btns-loading-done',
|
||||||
|
'class' => 'invisible',
|
||||||
|
'content' => $action_btns,
|
||||||
|
]
|
||||||
|
);
|
||||||
|
|
||||||
|
echo '</form>';
|
||||||
|
} else {
|
||||||
|
// Configuration.
|
||||||
|
if ($demo_items_count === 0) {
|
||||||
|
$table_aux = new stdClass();
|
||||||
|
$table_aux->id = 'table-demo';
|
||||||
|
$table_aux->class = 'filter-table-adv';
|
||||||
|
$table_aux->width = '100%';
|
||||||
|
$table_aux->data = [];
|
||||||
|
$table_aux->size = [];
|
||||||
|
$table_aux->size[0] = '50%';
|
||||||
|
$table_aux->size[1] = '50%';
|
||||||
|
|
||||||
|
$agent_sel_values = [
|
||||||
|
30 => '30',
|
||||||
|
50 => '50',
|
||||||
|
500 => '500',
|
||||||
|
1000 => '1000',
|
||||||
|
2000 => '2000',
|
||||||
|
];
|
||||||
|
|
||||||
|
$agent_num = (int) get_parameter('agents_num');
|
||||||
|
|
||||||
|
$otherData = [];
|
||||||
|
$table_aux->data['row1'][] = html_print_label_input_block(
|
||||||
|
__('Agents').ui_print_help_tip(__('You may need to increase the value of the plugin_timeout parameter in your server configuration to get all your agents data updated'), true),
|
||||||
|
html_print_div(
|
||||||
|
[
|
||||||
|
'class' => '',
|
||||||
|
'content' => html_print_select(
|
||||||
|
$agent_sel_values,
|
||||||
|
'agents_num',
|
||||||
|
$agents_num,
|
||||||
|
'',
|
||||||
|
'',
|
||||||
|
30,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
true,
|
||||||
|
'w80px'
|
||||||
|
),
|
||||||
|
],
|
||||||
|
true
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_aux->data['row2'][] = html_print_label_input_block(
|
||||||
|
__('Advanced options'),
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'toggle_adv_opts',
|
||||||
|
1,
|
||||||
|
false,
|
||||||
|
true
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv = new stdClass();
|
||||||
|
$table_adv->id = 'table-adv';
|
||||||
|
$table_adv->class = 'filter-table-adv';
|
||||||
|
$table_adv->width = '100%';
|
||||||
|
$table_adv->data = [];
|
||||||
|
$table_adv->size = [];
|
||||||
|
$table_adv->size[0] = '50%';
|
||||||
|
$table_adv->size[1] = '50%';
|
||||||
|
|
||||||
|
$interval_select = html_print_extended_select_for_time(
|
||||||
|
'interval',
|
||||||
|
$interval,
|
||||||
|
'',
|
||||||
|
'',
|
||||||
|
'0',
|
||||||
|
10,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
true,
|
||||||
|
'w20p'
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row0'][] = html_print_label_input_block(
|
||||||
|
__('Agents interval'),
|
||||||
|
$interval_select
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row1'][] = html_print_label_input_block(
|
||||||
|
__('Generate historical data for all agents'),
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'enable_history',
|
||||||
|
1,
|
||||||
|
(bool) $generate_hist,
|
||||||
|
true
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row2'][] = html_print_label_input_block(
|
||||||
|
__('Days of historical data to insert in the agent data'),
|
||||||
|
html_print_input_text(
|
||||||
|
'days_hist_data',
|
||||||
|
$days_hist_data,
|
||||||
|
'',
|
||||||
|
10,
|
||||||
|
20,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'',
|
||||||
|
'w80px'
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
if (enterprise_installed() === true) {
|
||||||
|
$table_adv->data['row3'][] = html_print_label_input_block(
|
||||||
|
__('Create services'),
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'enable_services',
|
||||||
|
1,
|
||||||
|
$enabled_items['services'],
|
||||||
|
true
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/*
|
||||||
|
$table_adv->data['row4'][] = html_print_label_input_block(
|
||||||
|
__('Services agent name').ui_print_help_tip(__('If not set, %s will be used as the default agent', 'demo-global-agent-1'), true),
|
||||||
|
html_print_input_text(
|
||||||
|
'service_agent_name',
|
||||||
|
$service_agent_name,
|
||||||
|
'',
|
||||||
|
50,
|
||||||
|
255,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'',
|
||||||
|
'w300px'
|
||||||
|
)
|
||||||
|
);
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
|
||||||
|
$table_adv->data['row5'][] = html_print_label_input_block(
|
||||||
|
__('Create network maps'),
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'enable_nm',
|
||||||
|
1,
|
||||||
|
$enabled_items['network_maps'],
|
||||||
|
true
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row6'][] = html_print_label_input_block(
|
||||||
|
__('Create GIS maps'),
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'enable_gis',
|
||||||
|
1,
|
||||||
|
$enabled_items['gis_maps'],
|
||||||
|
true
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row7'][] = html_print_label_input_block(
|
||||||
|
__('Create custom graphs'),
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'enable_cg',
|
||||||
|
1,
|
||||||
|
$enabled_items['graphs'],
|
||||||
|
true
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row8'][] = html_print_label_input_block(
|
||||||
|
__('Create reports'),
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'enable_rep',
|
||||||
|
1,
|
||||||
|
$enabled_items['reports'],
|
||||||
|
true
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row9'][] = html_print_label_input_block(
|
||||||
|
__('Create visual consoles'),
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'enable_vc',
|
||||||
|
1,
|
||||||
|
$enabled_items['visual_consoles'],
|
||||||
|
true
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row10'][] = html_print_label_input_block(
|
||||||
|
__('Create dashboards'),
|
||||||
|
html_print_checkbox_switch(
|
||||||
|
'enable_dashboards',
|
||||||
|
1,
|
||||||
|
$enabled_items['dashboards'],
|
||||||
|
true
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
/*
|
||||||
|
$table_adv->data['row11'][] = html_print_label_input_block(
|
||||||
|
__('Demo data plugin agent'),
|
||||||
|
html_print_input_text(
|
||||||
|
'plugin_agent',
|
||||||
|
$plugin_agent,
|
||||||
|
'',
|
||||||
|
50,
|
||||||
|
255,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'',
|
||||||
|
'w300px'
|
||||||
|
)
|
||||||
|
);
|
||||||
|
*/
|
||||||
|
|
||||||
|
$table_adv->data['row12'][] = html_print_label_input_block(
|
||||||
|
__('Traps target IP').ui_print_help_tip(__('All demo traps are generated using version 1'), true),
|
||||||
|
html_print_input_text(
|
||||||
|
'traps_target_ip',
|
||||||
|
$traps_target_ip,
|
||||||
|
'',
|
||||||
|
50,
|
||||||
|
255,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'',
|
||||||
|
'w300px'
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row13'][] = html_print_label_input_block(
|
||||||
|
__('Traps community'),
|
||||||
|
html_print_input_text(
|
||||||
|
'traps_community',
|
||||||
|
$traps_community,
|
||||||
|
'',
|
||||||
|
50,
|
||||||
|
255,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'',
|
||||||
|
'w300px'
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row14'][] = html_print_label_input_block(
|
||||||
|
__('Tentacle target IP'),
|
||||||
|
html_print_input_text(
|
||||||
|
'tentacle_target_ip',
|
||||||
|
$tentacle_target_ip,
|
||||||
|
'',
|
||||||
|
50,
|
||||||
|
255,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'',
|
||||||
|
'w300px'
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row15'][] = html_print_label_input_block(
|
||||||
|
__('Tentacle port'),
|
||||||
|
html_print_input_text(
|
||||||
|
'tentacle_port',
|
||||||
|
$tentacle_port,
|
||||||
|
'',
|
||||||
|
50,
|
||||||
|
255,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'',
|
||||||
|
'w300px'
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
$table_adv->data['row16'][] = html_print_label_input_block(
|
||||||
|
__('Tentacle extra options'),
|
||||||
|
html_print_input_text(
|
||||||
|
'tentacle_extra_options',
|
||||||
|
$tentacle_extra_options,
|
||||||
|
'',
|
||||||
|
50,
|
||||||
|
255,
|
||||||
|
true,
|
||||||
|
false,
|
||||||
|
false,
|
||||||
|
'',
|
||||||
|
'w300px'
|
||||||
|
)
|
||||||
|
);
|
||||||
|
|
||||||
|
echo '<form class="max_floating_element_size" id="form_setup" method="post">';
|
||||||
|
echo '<fieldset>';
|
||||||
|
echo '<legend>'.__('Configure demo data').'</legend>';
|
||||||
|
html_print_input_hidden('create_data', 1);
|
||||||
|
html_print_input_hidden('display_loading', 1);
|
||||||
|
html_print_table($table_aux);
|
||||||
|
html_print_div(
|
||||||
|
[
|
||||||
|
'class' => 'invisible',
|
||||||
|
'content' => html_print_table($table_adv),
|
||||||
|
],
|
||||||
|
true
|
||||||
|
);
|
||||||
|
echo '</fieldset>';
|
||||||
|
|
||||||
|
$actionButtons = [];
|
||||||
|
|
||||||
|
$actionButtons[] = html_print_submit_button(
|
||||||
|
__('Create demo data'),
|
||||||
|
'create_button',
|
||||||
|
false,
|
||||||
|
[
|
||||||
|
'icon' => 'update',
|
||||||
|
'fixed_id' => 'btn-create-demo-data',
|
||||||
|
],
|
||||||
|
true
|
||||||
|
);
|
||||||
|
|
||||||
|
// echo '<div id="btn-set" style="display:none;">';
|
||||||
|
html_print_action_buttons(
|
||||||
|
implode('', $actionButtons)
|
||||||
|
);
|
||||||
|
|
||||||
|
// echo '</div>';
|
||||||
|
echo '</form>';
|
||||||
|
} else {
|
||||||
|
// Summary data.
|
||||||
|
$demo_agents_count = (int) db_get_value('count(*)', 'tdemo_data', 'table_name', 'tagente');
|
||||||
|
$demo_services_count = (int) db_get_value('count(*)', 'tdemo_data', 'table_name', 'tservice');
|
||||||
|
$demo_nm_count = (int) db_get_value('count(*)', 'tdemo_data', 'table_name', 'tmap');
|
||||||
|
$demo_gis_count = (int) db_get_value('count(*)', 'tdemo_data', 'table_name', 'tgis_map');
|
||||||
|
$demo_cg_count = (int) db_get_value('count(*)', 'tdemo_data', 'table_name', 'tgraph');
|
||||||
|
$demo_rep_count = (int) db_get_value('count(*)', 'tdemo_data', 'table_name', 'treport');
|
||||||
|
$demo_vc_count = (int) db_get_value('count(*)', 'tdemo_data', 'table_name', 'tlayout');
|
||||||
|
$demo_dashboards_count = (int) db_get_value('count(*)', 'tdemo_data', 'table_name', 'tdashboard');
|
||||||
|
|
||||||
|
$table_summary = new stdClass();
|
||||||
|
$table_summary->id = 'table-summary';
|
||||||
|
$table_summary->class = 'filter-table-adv';
|
||||||
|
$table_summary->width = '100%';
|
||||||
|
$table_summary->data = [];
|
||||||
|
$table_summary->size = [];
|
||||||
|
$table_summary->size[0] = '50%';
|
||||||
|
$table_summary->size[1] = '50%';
|
||||||
|
|
||||||
|
$i = 0;
|
||||||
|
$table_summary->data[$i][0] = __('Agents');
|
||||||
|
$table_summary->data[$i][1] = ($demo_agents_count > 0) ? $demo_agents_count : '-';
|
||||||
|
$i++;
|
||||||
|
|
||||||
|
if (enterprise_installed() === true) {
|
||||||
|
$table_summary->data[$i][0] = __('Services');
|
||||||
|
$table_summary->data[$i][1] = ($demo_services_count > 0) ? $demo_services_count : '-';
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
|
||||||
|
$i++;
|
||||||
|
$table_summary->data[$i][0] = __('Network maps');
|
||||||
|
$table_summary->data[$i][1] = ($demo_nm_count > 0) ? $demo_nm_count : '-';
|
||||||
|
$i++;
|
||||||
|
$table_summary->data[$i][0] = __('GIS maps');
|
||||||
|
$table_summary->data[$i][1] = ($demo_gis_count > 0) ? $demo_gis_count : '-';
|
||||||
|
$i++;
|
||||||
|
$table_summary->data[$i][0] = __('Custom graphs');
|
||||||
|
$table_summary->data[$i][1] = ($demo_cg_count > 0) ? $demo_cg_count : '-';
|
||||||
|
$i++;
|
||||||
|
$table_summary->data[$i][0] = __('Custom reports');
|
||||||
|
$table_summary->data[$i][1] = ($demo_rep_count > 0) ? $demo_rep_count : '-';
|
||||||
|
$i++;
|
||||||
|
$table_summary->data[$i][0] = __('Visual consoles');
|
||||||
|
$table_summary->data[$i][1] = ($demo_vc_count > 0) ? $demo_vc_count : '-';
|
||||||
|
$i++;
|
||||||
|
$table_summary->data[$i][0] = __('Dashboards');
|
||||||
|
$table_summary->data[$i][1] = ($demo_dashboards_count > 0) ? $demo_dashboards_count : '-';
|
||||||
|
|
||||||
|
echo '<form class="max_floating_element_size" method="post">';
|
||||||
|
echo '<fieldset>';
|
||||||
|
echo '<legend>'.__('Active demo data summary').'</legend>';
|
||||||
|
html_print_table($table_summary);
|
||||||
|
echo '</fieldset>';
|
||||||
|
|
||||||
|
html_print_input_hidden('delete_data', 1);
|
||||||
|
html_print_input_hidden('display_loading', 1);
|
||||||
|
|
||||||
|
html_print_action_buttons(
|
||||||
|
html_print_submit_button(
|
||||||
|
__('Delete all demo data'),
|
||||||
|
'delete_button',
|
||||||
|
false,
|
||||||
|
[
|
||||||
|
'icon' => 'delete',
|
||||||
|
'mode' => 'secondary',
|
||||||
|
'fixed_id' => 'btn-delete-demo-data',
|
||||||
|
],
|
||||||
|
true
|
||||||
|
)
|
||||||
|
);
|
||||||
|
echo '</form>';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
||||||
|
<script type="text/javascript">
|
||||||
|
function active_button_add_agent() {
|
||||||
|
$("#button-add_agent").prop("disabled", false);
|
||||||
|
}
|
||||||
|
|
||||||
|
$(document).ready (function () {
|
||||||
|
var demo_items_count = <?php echo $demo_items_count; ?>;
|
||||||
|
var agent_count_span_str = '<?php echo __('demo agents currently in the system'); ?>';
|
||||||
|
var agents_str = '<?php echo __('agents'); ?>';
|
||||||
|
|
||||||
|
var display_progress_bar_cr = <?php echo (int) $running_create; ?>;
|
||||||
|
|
||||||
|
if (display_progress_bar_cr == 1) {
|
||||||
|
init_progress_bar('create');
|
||||||
|
}
|
||||||
|
|
||||||
|
var display_progress_bar_del = <?php echo (int) $running_delete; ?>;
|
||||||
|
|
||||||
|
if (display_progress_bar_del == 1) {
|
||||||
|
init_progress_bar('cleanup');
|
||||||
|
}
|
||||||
|
|
||||||
|
$("#table-adv").hide();
|
||||||
|
|
||||||
|
$('#checkbox-toggle_adv_opts').change(function() {
|
||||||
|
if ($(this).is(':checked') === true) {
|
||||||
|
$("#table-adv").show();
|
||||||
|
} else {
|
||||||
|
$("#table-adv").hide();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#table-adv-row2').hide();
|
||||||
|
if ($('#checkbox-enable_history').is(':checked') === true) {
|
||||||
|
$('#table-adv-row2').show();
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#checkbox-enable_history').change(function() {
|
||||||
|
if ($(this).is(':checked') === true) {
|
||||||
|
$('#table-adv-row2').show();
|
||||||
|
} else {
|
||||||
|
$('#table-adv-row2').hide();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
$('#table-adv-row4').hide();
|
||||||
|
if ($('#checkbox-enable_services').is(':checked') === true) {
|
||||||
|
$('#table-adv-row4').show();
|
||||||
|
}
|
||||||
|
|
||||||
|
$('#checkbox-enable_services').change(function() {
|
||||||
|
if ($(this).is(':checked') === true) {
|
||||||
|
$('#table-adv-row4').show();
|
||||||
|
} else {
|
||||||
|
$('#table-adv-row4').hide();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var create_data = '<?php echo $create_data; ?>';
|
||||||
|
var delete_data = '<?php echo $delete_data; ?>';
|
||||||
|
|
||||||
|
// Creation operation must be done via AJAX in order to be able to run the operations in background
|
||||||
|
// and keep it running even if we quit the page.
|
||||||
|
if (create_data == true) {
|
||||||
|
init_progress_bar('create');
|
||||||
|
|
||||||
|
var params = {};
|
||||||
|
params["action"] = "create_demo_data";
|
||||||
|
params["page"] = "include/ajax/demo_data.ajax";
|
||||||
|
params["agents_num"] = <?php echo $agents_num; ?>;
|
||||||
|
params["adv_options_is_enabled"] = <?php echo $adv_options_is_enabled; ?>;
|
||||||
|
params["enabled_items"] = <?php echo json_encode($enabled_items); ?>;
|
||||||
|
params["days_hist_data"] = <?php echo $days_hist_data; ?>;
|
||||||
|
params["interval"] = <?php echo $interval; ?>;
|
||||||
|
params["plugin_agent"] = "<?php echo $plugin_agent; ?>";
|
||||||
|
params["traps_target_ip"] = "<?php echo $traps_target_ip; ?>";
|
||||||
|
params["traps_community"] = "<?php echo $traps_community; ?>";
|
||||||
|
params["tentacle_target_ip"] = "<?php echo $tentacle_target_ip; ?>";
|
||||||
|
params["tentacle_port"] = <?php echo $tentacle_port; ?>;
|
||||||
|
params["tentacle_extra_options"] = "<?php echo $tentacle_extra_options; ?>";
|
||||||
|
params["service_agent_name"] = "<?php echo $service_agent_name; ?>";
|
||||||
|
|
||||||
|
jQuery.ajax({
|
||||||
|
data: params,
|
||||||
|
type: "POST",
|
||||||
|
url: "ajax.php",
|
||||||
|
dataType: 'json'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// Delete operation must be done via AJAX in order to be able to run the operations in background
|
||||||
|
// and keep it running even if we quit the page.
|
||||||
|
if (delete_data == true) {
|
||||||
|
/// $("#table-demo-row2").show();
|
||||||
|
init_progress_bar('cleanup');
|
||||||
|
|
||||||
|
var params = {};
|
||||||
|
params["action"] = "cleanup_demo_data";
|
||||||
|
params["page"] = "include/ajax/demo_data.ajax";
|
||||||
|
|
||||||
|
jQuery.ajax({
|
||||||
|
data: params,
|
||||||
|
type: "POST",
|
||||||
|
url: "ajax.php",
|
||||||
|
success: function(data) {
|
||||||
|
//$('#action-btns-loading-done').show();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
var items_checked = [];
|
||||||
|
|
||||||
|
function demo_load_progress(id_queue, operation) {
|
||||||
|
if (id_queue == null)
|
||||||
|
return;
|
||||||
|
|
||||||
|
var src_code = $('#' + id_queue).attr("src");
|
||||||
|
/* Check stop begin */
|
||||||
|
var progress_src = null;
|
||||||
|
var elements_src = src_code.split("&");
|
||||||
|
|
||||||
|
$.each(elements_src, function (key, value) {
|
||||||
|
/* Get progress of element */
|
||||||
|
if (value.indexOf("progress=") != -1) {
|
||||||
|
var tokens_src = value.split("=");
|
||||||
|
progress_src = tokens_src[1];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
/* STOP timer condition (progress >= 100) */
|
||||||
|
if (progress_src >= 100) {
|
||||||
|
clearInterval($("#hidden-js_timer_" + id_queue).val());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var params = {};
|
||||||
|
params["action"] = "get_progress_bar";
|
||||||
|
params["operation"] = operation;
|
||||||
|
if (operation == 'cleanup') {
|
||||||
|
var demo_items_count = '<?php echo $demo_items_count; ?>';
|
||||||
|
params["demo_items_to_cleanup"] = demo_items_count;
|
||||||
|
}
|
||||||
|
params["page"] = "include/ajax/demo_data.ajax";
|
||||||
|
params["id_queue"] = id_queue;
|
||||||
|
|
||||||
|
jQuery.ajax({
|
||||||
|
data: params,
|
||||||
|
type: "POST",
|
||||||
|
url: "ajax.php",
|
||||||
|
dataType: "json",
|
||||||
|
success: function(data) {
|
||||||
|
progress_tag_pos = src_code.indexOf("progress=");
|
||||||
|
rest_pos = src_code.indexOf("&", progress_tag_pos);
|
||||||
|
|
||||||
|
pre_src = src_code.substr(0,progress_tag_pos);
|
||||||
|
post_src = src_code.substr(rest_pos);
|
||||||
|
|
||||||
|
/* Create new src code for progress bar */
|
||||||
|
new_src_code = pre_src + "progress=" + data.current_progress_val + post_src;
|
||||||
|
|
||||||
|
if (data.current_progress_val != '')
|
||||||
|
$('#' + id_queue).attr("src", new_src_code);
|
||||||
|
|
||||||
|
if (data.current_progress_val == 100)
|
||||||
|
$('#action-btns-loading-done').show();
|
||||||
|
|
||||||
|
if (operation == 'create') {
|
||||||
|
var status_data = data?.demo_data_load_status;
|
||||||
|
|
||||||
|
status_data.checked_items?.forEach(function(item_id) {
|
||||||
|
if (items_checked.includes(item_id)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (typeof status_data !== 'undefined'
|
||||||
|
&& typeof status_data.errors !== 'undefined'
|
||||||
|
&& typeof status_data.errors[item_id] !== 'undefined'
|
||||||
|
&& status_data.errors[item_id].length > 0
|
||||||
|
) {
|
||||||
|
status_data.errors[item_id].forEach(function(error_msg) {
|
||||||
|
update_demo_status_icon(item_id, 'images/fail_circle_big.png');
|
||||||
|
print_error(item_id, error_msg);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
update_demo_status_icon(item_id, 'images/success_circle_big.png');
|
||||||
|
}
|
||||||
|
items_checked.push(item_id);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function init_progress_bar(operation) {
|
||||||
|
/* Get progress bar */
|
||||||
|
var elements = $(".progress_bar");
|
||||||
|
$.each(elements, function (key, progress_bar) {
|
||||||
|
var elements_bar = $(progress_bar).attr("src").split("&");
|
||||||
|
var current_progress = null;
|
||||||
|
$.each(elements_bar, function (key, value) {
|
||||||
|
/* Get progress */
|
||||||
|
if (value.indexOf("progress=") != -1) {
|
||||||
|
var tokens = value.split("=");
|
||||||
|
current_progress = tokens[1];
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
/* Get Queue id */
|
||||||
|
var id_bar = $(progress_bar).attr("id");
|
||||||
|
clearInterval($("#hidden-js_timer_" + id_bar).val());
|
||||||
|
|
||||||
|
/* Only autorefresh incomplete bars */
|
||||||
|
if (current_progress < 100) {
|
||||||
|
/* 1 seconds between ajax request */
|
||||||
|
var id_interval = setInterval("demo_load_progress('"+ id_bar +"','"+operation+"')", (1 * 1000));
|
||||||
|
/* This will keep timer info */
|
||||||
|
$("#hidden-js_timer_" + id_bar).val(id_interval);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
function update_demo_status_icon(itemId, iconName) {
|
||||||
|
var $listItem = $(`[data-item-id="${itemId}"]`);
|
||||||
|
var $icon = $listItem.find('.icon');
|
||||||
|
|
||||||
|
$icon.attr('src', iconName);
|
||||||
|
}
|
||||||
|
|
||||||
|
function print_error(item_id, error_msg) {
|
||||||
|
var error_list_item = $('<li>', {
|
||||||
|
text: error_msg
|
||||||
|
});
|
||||||
|
|
||||||
|
// Append the new item to the corresponding error-list ul.
|
||||||
|
$('#load-info li[data-item-id="' + item_id + '"] .error-list').append(error_list_item);
|
||||||
|
}
|
||||||
|
</script>
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user