# - Zabbix Proxy

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. Zabbix Proxy can be started by:

    shell> cd sbin
    shell> ./zabbix_proxy

Zabbix Proxy runs as a daemon process. Zabbix Proxy accepts the
following command line parameters:

      -c --config <file> specify configuration file, default is /etc/zabbix/zabbix_proxy.conf
      -h --help give this help
      -v --version display version number

In order to get this help run:

    shell> zabbix_proxy -h

Example of command line parameters:

    shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf
    shell> zabbix_proxy --help
    shell> zabbix_proxy -v

The configuration file contains parameters for zabbix\_proxy. The file
must exist and it should have read permissions for user 'zabbix'.
Supported parameters:

|Parameter|Mandatory|Range|Default|Description|
|---------|---------|-----|-------|-----------|
|CacheSize|no|128K-1G|8M|Size of configuration cache, in bytes.<br>Shared memory size, for storing hosts and items data.|
|CacheUpdateFrequency|no|1-3600|60|How often Zabbix will perform update of configuration cache, in seconds.<br>For a proxy in the passive mode this parameter will be ignored.|
|ConfigFrequency|no|1-604800|3600|How often proxy retrieves configuration data from Zabbix Server in seconds.<br>For a proxy in the passive mode this parameter will be ignored.|
|DBHost|no|<|localhost|Database host name.<br>If set to localhost, socket is used for MySQL.|
|DBName|yes|<|<|Database name.<br>For SQLite3 path to database file must be provided. DBUser and DBPassword are ignored.|
|DBPassword|no|<|<|Database password. Ignored for SQLite.<br>Comment this line if no password is used.|
|DBSocket|no|<|3306|Path to MySQL socket.<br>Database port when not using local socket. Ignored for SQLite.|
|DBUser|<|<|<|Database user. Ignored for SQLite.|
|DataSenderFrequency|no|1-3600|1|Proxy will send collected data to the Server every N seconds.|
|DebugLevel|no|0-4|3|Specifies debug level<br>0 - no debug<br>1 - critical information<br>2 - error information<br>3 - warnings<br>4 - for debugging (produces lots of information)|
|ExternalScripts|no|<|/etc/zabbix/externalscripts|Location of external scripts|
|Fping6Location|no|<|/usr/sbin/fping6|Location of fping6.<br>Make sure that fping6 binary has root ownership and SUID flag set.<br>Make empty ("Fping6Location=") if your fping utility is capable to process IPv6 addresses.|
|FpingLocation|no|<|/usr/sbin/fping|Location of fping.<br>Make sure that fping binary has root ownership and SUID flag set!|
|HeartbeatFrequency|no|0-3600|60|Frequency of heartbeat messages in seconds.<br>Used for monitoring availability of Proxy on server side.<br>0 - heartbeat messages disabled.<br>For a proxy in the passive mode this parameter will be ignored.|
|HistoryCacheSize|no|128K-1G|8M|Size of history cache, in bytes.<br>Shared memory size for storing history data.|
|HistoryTextCacheSize|no|128K-1G|16M|Size of text history cache, in bytes.<br>Shared memory size for storing character, text or log history data.|
|Hostname|no|<|<|Unique Proxy name. Make sure the Proxy name is known to the server!<br>System hostname is used if undefined.|
|HousekeepingFrequency|no|1-24|1|How often Zabbix will perform housekeeping procedure (in hours).<br>Housekeeping is removing unnecessary information from history, alert, and alarms tables.<br>If PostgreSQL is used, suggested value is 24, as it performs VACUUM.|
|Include|no|<|<|You may include individual files or all files in a directory in the configuration file.|
|ListenIP|no|<|0.0.0.0|List of comma delimited IP addresses that the trapper should listen on.<br>Trapper will listen on all network interfaces if this parameter is missing.<br>**Multiple IP addresses are supported in version 1.8.3 and higher.**|
|ListenPort|no|1024-32767|10051|Listen port for trapper.|
|LogFileSize|no|0-1024|1|Maximum size of log file in MB.<br>0 - disable automatic log rotation.|
|LogFile|no|<|<|Name of log file.<br>If not set, syslog is used.|
|LogSlowQueries|no|0-3600000|0|If a query takes longer than this many milliseconds, the query is logged to the log file.<br>0 - disable log slow queries<br>**This option is supported in version 1.8.2 and higher.**|
|PidFile|no|<|/tmp/zabbix\_proxy.pid|Name of PID file.|
|ProxyLocalBuffer|no|0-720|0|Proxy will keep data locally for N hours.<br>This parameter may be used if local data will be used by third party applications.|
|ProxyMode|no|0-1|0|Proxy operating mode.<br>0 - proxy in the active mode<br>1 - proxy in the passive mode<br>**This option is supported in version 1.8.3 and higher.**|
|ProxyOfflineBuffer|no|0-720|1|Proxy will keep data for N hours in case of no connectivity with Zabbix Server.<br>Older data will be lost.|
|SSHKeyLocation|no|<|<|Location of public keys for SSH checks|
|ServerPort|no|1024-32767|10051|Port of Zabbix trapper on Zabbix server.<br>For a proxy in the passive mode this parameter will be ignored.|
|Server|yes|<|<|IP address (or hostname) of Zabbix server.<br>Active Proxy will get configuration data from the server.<br>For a proxy in the passive mode this parameter will be ignored.|
|SourceIP|no|<|<|Source IP address for outgoing connections.|
|StartDBSyncers|no|1-64|4|Number of pre-forked instances of DB Syncers.<br>**This option is supported in version 1.8.3 and higher.**|
|StartDiscoverers|no|0-255|1|Number of pre-forked instances of discoverers.|
|StartHTTPPollers|no|0-255|1|Number of pre-forked instances of HTTP pollers.|
|StartIPMIPollers|no|0-255|0|Number of pre-forked instances of IPMI pollers.|
|StartPingers|no|0-255|1|Number of pre-forked instances of ICMP pingers.|
|StartPollersUnreachable|no|0-255|1|Number of pre-forked instances of pollers for unreachable hosts.<br>**Obsolete since 1.8.3.**|
|StartPollers|no|0-255|5|Number of pre-forked instances of pollers.|
|StartTrappers|no|0-255|5|Number of pre-forked instances of trappers|
|Timeout|no|1-30|3|Specifies how long we wait for agent, SNMP device or external check (in seconds).|
|TmpDir|no|<|/tmp|Temporary directory.|
|TrapperTimeout|no|1-300|300|Specifies how many seconds trapper may spend processing new data.|
|TrendCacheSize|no|128K-1G|4M|Size of trend cache, in bytes.<br>Shared memory size for storing trends data.|
|UnavailableDelay|no|1-3600|60|How often host is checked for availability during the unavailability period, in seconds.|
|UnreachableDelay|no|1-3600|15|How often host is checked for availability during the unreachability period, in seconds.|
|UnreachablePeriod|no|1-3600|45|After how many seconds of unreachability treat a host as unavailable.|
