aboutsummaryrefslogtreecommitdiffstats
path: root/config/zabbix2-proxy
diff options
context:
space:
mode:
authormarcelloc <marcellocoutinho@gmail.com>2013-02-11 01:36:16 -0200
committermarcelloc <marcellocoutinho@gmail.com>2013-02-11 01:36:16 -0200
commita67b748e2428950343488085c4a60021d83a43d5 (patch)
tree8ec178797593db154f133f818b52ee89be9cf713 /config/zabbix2-proxy
parentdd5d6380fecbd2e502d1378348b735adb678cbea (diff)
downloadpfsense-packages-a67b748e2428950343488085c4a60021d83a43d5.tar.gz
pfsense-packages-a67b748e2428950343488085c4a60021d83a43d5.tar.bz2
pfsense-packages-a67b748e2428950343488085c4a60021d83a43d5.zip
zabbix2 - split xml into xml and inc file.
Use same inc dir and file for zabbix agent and client as both scripts are very similar
Diffstat (limited to 'config/zabbix2-proxy')
-rw-r--r--config/zabbix2-proxy/zabbix2-proxy.xml273
1 files changed, 0 insertions, 273 deletions
diff --git a/config/zabbix2-proxy/zabbix2-proxy.xml b/config/zabbix2-proxy/zabbix2-proxy.xml
deleted file mode 100644
index f4d05173..00000000
--- a/config/zabbix2-proxy/zabbix2-proxy.xml
+++ /dev/null
@@ -1,273 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<packagegui>
- <name>zabbixproxy</name>
- <title>Services: Zabbix-2 Proxy</title>
- <category>Monitoring</category>
- <version>0.5</version>
- <addedit_string>Zabbix Proxy has been created/modified.</addedit_string>
- <delete_string>Zabbix Proxy has been deleted.</delete_string>
- <restart_command>/usr/local/etc/rc.d/zabbix2_proxy.sh restart</restart_command>
- <menu>
- <name>Zabbix-2 Proxy</name>
- <tooltiptext>Setup Zabbix Proxy specific settings</tooltiptext>
- <section>Services</section>
- <url>/pkg_edit.php?xml=zabbix2-proxy.xml&amp;id=0</url>
- </menu>
- <service>
- <name>zabbix-proxy</name>
- <rcfile>zabbix2_proxy.sh</rcfile>
- <executable>zabbix_proxy</executable>
- <description>Zabbix proxy is a process which collects performance and availability data from one or more monitored devices and sends the information to a Zabbix server</description>
- </service>
- <tabs>
- <tab>
- <text>Settings</text>
- <url>/pkg_edit.php?xml=zabbix2-proxy.xml&amp;id=0</url>
- <active />
- </tab>
- </tabs>
- <fields>
- <field>
- <fielddescr>Server</fielddescr>
- <fieldname>server</fieldname>
- <description>List of comma delimited IP addresses (or hostnames) of ZABBIX servers</description>
- <default_value>127.0.0.1</default_value>
- <type>input</type>
- <size>100</size>
- <required>true</required>
- </field>
- <field>
- <fielddescr>Server Port</fielddescr>
- <fieldname>serverport</fieldname>
- <description>Port of Zabbix trapper on Zabbix server. default value 10051</description>
- <value>10051</value>
- <default_value>10051</default_value>
- <type>input</type>
- <size>6</size>
- <required>true</required>
- </field>
- <field>
- <fielddescr>Hostname</fielddescr>
- <fieldname>hostname</fieldname>
- <description>Unique, case-sensitive proxy name. Make sure the proxy name is known to the server</description>
- <default_value>localhost</default_value>
- <type>input</type>
- <size>100</size>
- <required>true</required>
- </field>
- <field>
- <fielddescr>Active Mode</fielddescr>
- <fieldname>activemode</fieldname>
- <description>Check to run Zabbix proxy in active mode (default)</description>
- <default_value>on</default_value>
- <type>checkbox</type>
- <required>true</required>
- </field>
- <field>
- <fielddescr>Config Frequency</fielddescr>
- <fieldname>configfrequency</fieldname>
- <description>How often the proxy retrieves configuration data from the Zabbix server in seconds. Ignored if the proxy runs in passive mode.</description>
- <default_value>3600</default_value>
- <type>input</type>
- <size>10</size>
- <required>true</required>
- </field>
- </fields>
- <custom_php_install_command>
- <![CDATA[
- global $config, $g;
-
- $pfs_version = substr(trim(file_get_contents("/etc/version")),0,3);
- switch ($pfs_version) {
- case "1.2":
- case "2.0":
- define('ZABBIX_PROXY_BASE', '/usr/local');
- break;
- case "2.1":
- define('ZABBIX_PROXY_BASE', '/usr/local');
- break;
- default:
- define('ZABBIX_PROXY_BASE', '/usr/pbi/zabbix2-proxy-' . php_uname("m"));
- }
-
- mwexec("mkdir -p /var/log/zabbix2/");
- mwexec("mkdir -p /var/run/zabbix2/");
- mwexec("mkdir -p /var/db/zabbix2/");
-
- conf_mount_rw();
-
- /* create a few directories and ensure the sample files are in place */
- exec("/bin/mkdir -p " . ZABBIX_PROXY_BASE . "/etc/zabbix2");
- exec("/bin/mkdir -p /var/log/zabbix2");
- exec("/bin/mkdir -p /var/run/zabbix2");
- exec("/bin/mkdir -p /var/db/zabbix2");
-
- exec("/bin/rm -f " . ZABBIX_PROXY_BASE . "/etc/rc.d/zabbix2_proxy");
-
- $start = "/bin/mkdir -p /var/log/zabbix2\n";
- $start .= "/usr/sbin/chown -R zabbix:zabbix /var/log/zabbix2\n";
-
- $start .= "/bin/mkdir -p /var/run/zabbix2\n";
- $start .= "/usr/sbin/chown -R zabbix:zabbix /var/run/zabbix2\n";
-
- $start .= "/bin/mkdir -p /var/db/zabbix2\n";
- $start .= "/usr/sbin/chown -R zabbix:zabbix /var/db/zabbix2\n";
-
- $start .= "echo \"Starting Zabbix Proxy\"...\n";
-
- /* start zabbix proxy */
- $start .= ZABBIX_PROXY_BASE . "/sbin/zabbix_proxy\n";
-
- $stop = "echo \"Stopping Zabbix Proxy\"\n";
- $stop .= "/usr/bin/killall zabbix_proxy\n";
- /* write out rc.d start/stop file */
- write_rcfile(array(
- "file" => "zabbix2_proxy.sh",
- "start" => "{$start}",
- "restart" => "$stop\n" . "sleep 5\n" . "{$start}",
- "stop" => "$stop"
- )
- );
-
- conf_mount_ro();
- ]]>
- </custom_php_install_command>
- <custom_php_command_before_form></custom_php_command_before_form>
- <custom_php_after_head_command></custom_php_after_head_command>
- <custom_php_after_form_command></custom_php_after_form_command>
- <custom_php_validation_command>
- <![CDATA[
- global $_POST;
-
- $ServerPort=$_POST['serverport'];
- if (!preg_match("/^\d+$/", $ServerPort)) {
- $input_errors[]='Server Port is not numeric.';
- }
-
- $ConfigFrequency=$_POST['configfrequency'];
- if (!preg_match("/^\d+$/", $ConfigFrequency)) {
- $input_errors[]='Config Frequency is not numeric.';
- }
- ]]>
- </custom_php_validation_command>
- <custom_add_php_command></custom_add_php_command>
- <custom_php_resync_config_command>
- <![CDATA[
- conf_mount_rw();
- global $config, $g;
-
- $pfs_version = substr(trim(file_get_contents("/etc/version")),0,3);
- switch ($pfs_version) {
- case "1.2":
- case "2.0":
- define('ZABBIX_PROXY_BASE', '/usr/local');
- break;
- default:
- define('ZABBIX_PROXY_BASE', '/usr/pbi/zabbix2-proxy-' . php_uname("m"));
- }
-
- $zabbixproxy_config = $config['installedpackages']['zabbixproxy']['config'][0];
-
- $Server=$zabbixproxy_config['server'];
- $ServerPort=$zabbixproxy_config['serverport'];
- $Hostname=$zabbixproxy_config['hostname'];
- $ListenPort=$zabbixproxy_config['listenport'];
- $ConfigFrequency=$zabbixproxy_config['configfrequency'];
- if(isset($zabbixproxy_config['activemode'])) {
- $Mode="0"; /* active */
- } else {
- $Mode="1"; /* passive */
- }
-
- $conf = "Server=$Server\n";
- $conf .= "ServerPort=$ServerPort\n";
- $conf .= "Hostname=$Hostname\n";
- $conf .= "PidFile=/var/run/zabbix2/zabbix2_proxy.pid\n";
- $conf .= "DBName=/var/db/zabbix2/proxy.db\n";
- $conf .= "LogFile=/var/log/zabbix2/zabbix_proxy.log\n";
- $conf .= "ConfigFrequency=$ConfigFrequency\n";
- $conf .= "FpingLocation=/usr/local/sbin/fping\n";
- /* there's currently no fping6 (IPv6) dependency in the package, but if there was, the binary would likely also be in /usr/local/sbin */
- $conf .= "Fping6Location=/usr/local/sbin/fping6\n";
- $conf .= "ProxyMode=$Mode\n";
-
- file_put_contents(ZABBIX_PROXY_BASE . "/etc/zabbix2/zabbix_proxy.conf", $conf);
-
- $want_sysctls = array(
- 'kern.ipc.shmall' => '2097152',
- 'kern.ipc.shmmax' => '2147483648',
- 'kern.ipc.semmsl' => '250'
- );
- $sysctls = array();
- if (file_exists("/etc/sysctl.conf")) {
- $sc = file_get_contents("/etc/sysctl.conf");
- $sc = explode("\n", $sc);
- foreach ($sc as $num => $line) {
- list($sysctl, $val) = explode("=", $line, 2);
- if (array_key_exists($sysctl, $want_sysctls) || empty($sysctl))
- unset($sc[$num]);
- }
- }
- foreach ($want_sysctls as $ws => $wv) {
- $sc[] = "{$ws}={$wv}";
- exec("/sbin/sysctl {$ws}={$wv}");
- }
- file_put_contents("/etc/sysctl.conf", implode("\n", $sc) . "\n");
-
- $want_tunables = array(
- 'kern.ipc.semopm' => '100',
- 'kern.ipc.semmni' => '128',
- 'kern.ipc.semmns' => '32000',
- 'kern.ipc.shmmni' => '4096'
- );
- $tunables = array();
- if (file_exists("/boot/loader.conf")) {
- $lt = file_get_contents("/boot/loader.conf");
- $lt = explode("\n", $lt);
- foreach ($lt as $num => $line) {
- list($tunable, $val) = explode("=", $line, 2);
- if (array_key_exists($tunable, $want_tunables) || empty($tunable))
- unset($lt[$num]);
- }
- }
- foreach ($want_tunables as $wt => $wv) {
- $lt[] = "{$wt}={$wv}";
- }
- file_put_contents("/boot/loader.conf", implode("\n", $lt) . "\n");
- chmod("/var/log/zabbix2", 0755);
- chmod("/var/run/zabbix2", 0755);
- conf_mount_ro();
-
- ]]>
- </custom_php_resync_config_command>
- <custom_php_deinstall_command>
- <![CDATA[
- $pfs_version = substr(trim(file_get_contents("/etc/version")),0,3);
- switch ($pfs_version) {
- case "1.2":
- case "2.0":
- define('ZABBIX_AGENT_BASE', '/usr/local');
- define('ZABBIX_PROXY_BASE', '/usr/local');
- break;
- default:
- define('ZABBIX_AGENT_BASE', '/usr/pbi/zabbix2-agent-' . php_uname("m"));
- define('ZABBIX_PROXY_BASE', '/usr/pbi/zabbix2-proxy-' . php_uname("m"));
- }
-
- exec("/usr/bin/killall zabbix_proxy");
-
- exec("/bin/rm " . ZABBIX_PROXY_BASE . "/etc/rc.d/zabbix2_proxy.sh");
-
- // Check if Zabbix-2 Agent exists
- if(file_exists(ZABBIX_AGENT_BASE . "/etc/zabbix2/zabbix_agentd.conf")) {
- exec("/bin/rm /var/log/zabbix2/zabbix_proxy.log");
- exec("/bin/rm /var/run/zabbix2/zabbix2_proxy.pid");
- } else {
- exec("/bin/rm -r /var/log/zabbix2/");
- exec("/bin/rm -r /var/run/zabbix2/");
- }
-
- exec("/bin/rm -r /var/db/zabbix2/");
- ]]>
- </custom_php_deinstall_command>
-</packagegui>