Zabbix Documentation 4.2

2.23.04.04.2 (current)In development:4.4 (devel)Unsupported:1.82.02.43.23.4

User Tools

Site Tools


manual:config:items:itemtypes:http

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
manual:config:items:itemtypes:http [2018/08/01 05:07]
martins-v some reordering and adding more explanations
manual:config:items:itemtypes:http [2019/05/21 14:07] (current)
martins-v fixing copy-paste error
Line 23: Line 23:
   * Enter parameters of the item in the form   * Enter parameters of the item in the form
  
-|{{:​manual:​config:​items:​itemtypes:​http_item_new.png?600|}}|+{{:​manual:​config:​items:​itemtypes:​http_item_1.png?600|}}
  
 All mandatory input fields are marked with a red asterisk. ​ All mandatory input fields are marked with a red asterisk. ​
Line 31: Line 31:
 |//​Type// ​  ​|Select **HTTP agent** here.   | |//​Type// ​  ​|Select **HTTP agent** here.   |
 |//​Key// ​ |Enter a unique item key.  | |//​Key// ​ |Enter a unique item key.  |
-|//​URL// ​ |URL to connect to and retrieve data. For example:\\ %%https://​www.google.com%%\\ %%http://​www.zabbix.com/​download%%\\ Domain names can be specified in Unicode characters. They are automatically punycode-converted to ASCII when executing the web scenario step.\\ The //Parse// button can be used to separate optional query fields (like ?​name=Admin&​password=mypassword) from the URL, moving the attributes and values into //Query fields// for automatic URL-encoding.\\ Limited to 2048 characters.\\ Supported macros: {HOST.IP}, {HOST.CONN},​ {HOST.DNS}, {HOST.HOST},​ {HOST.NAME},​ {ITEM.ID}, {ITEM.KEY}, user macros, low-level discovery macros.\\ This sets the [[https://​curl.haxx.se/​libcurl/​c/​CURLOPT_URL.html|CURLOPT_URL]] cURL option. ​ |+|//​URL// ​ |URL to connect to and retrieve data. For example:\\ %%https://​www.google.com%%\\ %%http://​www.zabbix.com/​download%%\\ Domain names can be specified in Unicode characters. They are automatically punycode-converted to ASCII when executing the HTTP check.\\ The //Parse// button can be used to separate optional query fields (like ?​name=Admin&​password=mypassword) from the URL, moving the attributes and values into //Query fields// for automatic URL-encoding.\\ Limited to 2048 characters.\\ Supported macros: {HOST.IP}, {HOST.CONN},​ {HOST.DNS}, {HOST.HOST},​ {HOST.NAME},​ {ITEM.ID}, {ITEM.KEY}, user macros, low-level discovery macros.\\ This sets the [[https://​curl.haxx.se/​libcurl/​c/​CURLOPT_URL.html|CURLOPT_URL]] cURL option. ​ |
 |//Query fields// ​ |Variables for the URL (see above).\\ Specified as attribute and value pairs.\\ Values are URL-encoded automatically. Values from macros are resolved and then URL-encoded automatically.\\ Supported macros: {HOST.IP}, {HOST.CONN},​ {HOST.DNS}, {HOST.HOST},​ {HOST.NAME},​ {ITEM.ID}, {ITEM.KEY}, user macros, low-level discovery macros.\\ This sets the [[https://​curl.haxx.se/​libcurl/​c/​CURLOPT_URL.html|CURLOPT_URL]] cURL option. ​ | |//Query fields// ​ |Variables for the URL (see above).\\ Specified as attribute and value pairs.\\ Values are URL-encoded automatically. Values from macros are resolved and then URL-encoded automatically.\\ Supported macros: {HOST.IP}, {HOST.CONN},​ {HOST.DNS}, {HOST.HOST},​ {HOST.NAME},​ {ITEM.ID}, {ITEM.KEY}, user macros, low-level discovery macros.\\ This sets the [[https://​curl.haxx.se/​libcurl/​c/​CURLOPT_URL.html|CURLOPT_URL]] cURL option. ​ |
 |//Request type// ​ |Select request method type: //GET//, //POST//, //PUT// or //​HEAD// ​ | |//Request type// ​ |Select request method type: //GET//, //POST//, //PUT// or //​HEAD// ​ |
Line 42: Line 42:
 |//Retrieve mode// ​ |Select the part of response that must be retrieved:​\\ **Body** - body only\\ **Headers** - headers only\\ **Body and headers** - body and headers ​ | |//Retrieve mode// ​ |Select the part of response that must be retrieved:​\\ **Body** - body only\\ **Headers** - headers only\\ **Body and headers** - body and headers ​ |
 |//Convert to JSON// ​ |Headers are saved as attribute and value pairs under the %%"​%%header%%"​%% key.\\ If '​Content-Type:​ application/​json'​ is encountered then body is saved as an object, otherwise it is stored as string, for example:\\ {{:​manual:​config:​items:​itemtypes:​http_conv_json.png|}} ​ | |//Convert to JSON// ​ |Headers are saved as attribute and value pairs under the %%"​%%header%%"​%% key.\\ If '​Content-Type:​ application/​json'​ is encountered then body is saved as an object, otherwise it is stored as string, for example:\\ {{:​manual:​config:​items:​itemtypes:​http_conv_json.png|}} ​ |
-|//HTTP proxy// ​ |You can specify an HTTP proxy to use, using the format ''​%%http://​[username[:​password]@]proxy.mycompany.com[:​port]%%''​.\\ By default, 1080 port will be used.\\ If specified, the proxy will overwrite proxy related environment variables like http_proxy, HTTPS_PROXY. If not specified, the proxy will not overwrite proxy-related environment variables. The entered value is passed on %%"​%%as is%%"​%%,​ no sanity checking takes place.\\ You may also enter a SOCKS proxy address. If you specify the wrong protocol, the connection will fail and the item will become unsupported. With no protocol specified, the proxy will be treated as an HTTP proxy.\\ //Note// that only simple authentication is supported with HTTP proxy.\\ Supported macros: {HOST.IP}, {HOST.CONN},​ {HOST.DNS}, {HOST.HOST},​ {HOST.NAME},​ {ITEM.ID}, {ITEM.KEY}, user macros, low-level discovery macros.\\ This sets the [[https://​curl.haxx.se/​libcurl/​c/​CURLOPT_PROXY.html|CURLOPT_PROXY]] cURL option. ​ |+|//HTTP proxy// ​ |You can specify an HTTP proxy to use, using the format ''​%%[protocol://][username[:​password]@]proxy.mycompany.com[:​port]%%''​.\\ The optional ''​%%protocol://​%%''​ prefix may be used to specify alternative proxy protocols (the protocol prefix support was added in cURL 7.21.7). With no protocol specified, the proxy will be treated as an HTTP proxy.\\ By default, 1080 port will be used.\\ If specified, the proxy will overwrite proxy related environment variables like http_proxy, HTTPS_PROXY. If not specified, the proxy will not overwrite proxy-related environment variables. The entered value is passed on %%"​%%as is%%"​%%,​ no sanity checking takes place.\\ You may also enter a SOCKS proxy address. If you specify the wrong protocol, the connection will fail and the item will become unsupported.\\ //Note// that only simple authentication is supported with HTTP proxy.\\ Supported macros: {HOST.IP}, {HOST.CONN},​ {HOST.DNS}, {HOST.HOST},​ {HOST.NAME},​ {ITEM.ID}, {ITEM.KEY}, user macros, low-level discovery macros.\\ This sets the [[https://​curl.haxx.se/​libcurl/​c/​CURLOPT_PROXY.html|CURLOPT_PROXY]] cURL option. ​ |
 |//HTTP authentication// ​ |Authentication type:​\\ ​ **None** - no authentication used.\\ **Basic authentication** - basic authentication is used.\\ **NTLM authentication** - NTLM ([[http://​en.wikipedia.org/​wiki/​NTLM|Windows NT LAN Manager)]] authentication is used.\\ Selecting an authentication method will provide two additional fields for entering a user name and password, where user macros and low-level discovery macros are supported.\\ This sets the [[https://​curl.haxx.se/​libcurl/​c/​CURLOPT_HTTPAUTH.html|CURLOPT_HTTPAUTH]] cURL option. ​ | |//HTTP authentication// ​ |Authentication type:​\\ ​ **None** - no authentication used.\\ **Basic authentication** - basic authentication is used.\\ **NTLM authentication** - NTLM ([[http://​en.wikipedia.org/​wiki/​NTLM|Windows NT LAN Manager)]] authentication is used.\\ Selecting an authentication method will provide two additional fields for entering a user name and password, where user macros and low-level discovery macros are supported.\\ This sets the [[https://​curl.haxx.se/​libcurl/​c/​CURLOPT_HTTPAUTH.html|CURLOPT_HTTPAUTH]] cURL option. ​ |
 |//SSL verify peer// ​ |Mark the checkbox to verify the SSL certificate of the web server. The server certificate will be automatically taken from system-wide certificate authority (CA) location. You can override the location of CA files using Zabbix server or proxy configuration parameter SSLCALocation.\\ This sets the [[http://​curl.haxx.se/​libcurl/​c/​CURLOPT_SSL_VERIFYPEER.html|CURLOPT_SSL_VERIFYPEER]] cURL option. ​ | |//SSL verify peer// ​ |Mark the checkbox to verify the SSL certificate of the web server. The server certificate will be automatically taken from system-wide certificate authority (CA) location. You can override the location of CA files using Zabbix server or proxy configuration parameter SSLCALocation.\\ This sets the [[http://​curl.haxx.se/​libcurl/​c/​CURLOPT_SSL_VERIFYPEER.html|CURLOPT_SSL_VERIFYPEER]] cURL option. ​ |
Line 50: Line 50:
 |//SSL key password// ​ |SSL private key file password.\\ Supported macros: user macros, low-level discovery macros.\\ This sets the [[http://​curl.haxx.se/​libcurl/​c/​CURLOPT_KEYPASSWD.html|CURLOPT_KEYPASSWD]] cURL option. ​ | |//SSL key password// ​ |SSL private key file password.\\ Supported macros: user macros, low-level discovery macros.\\ This sets the [[http://​curl.haxx.se/​libcurl/​c/​CURLOPT_KEYPASSWD.html|CURLOPT_KEYPASSWD]] cURL option. ​ |
 |//Enable trapping// ​ |With this checkbox marked, the item will also function as [[:​manual/​config/​items/​itemtypes/​trapper|trapper item]] and will accept data sent to this item by Zabbix sender or using Zabbix sender protocol. ​ | |//Enable trapping// ​ |With this checkbox marked, the item will also function as [[:​manual/​config/​items/​itemtypes/​trapper|trapper item]] and will accept data sent to this item by Zabbix sender or using Zabbix sender protocol. ​ |
-|//Allowed hosts// ​  ​|Visible only if //Enable trapping// ​ checkbox is marked.\\ List of comma delimited IP addresses, optionally in CIDR notation, or hostnames.\\ If specified, incoming connections will be accepted only from the hosts listed here.\\ If IPv6 support is enabled then '​127.0.0.1',​ '::​127.0.0.1',​ '::​ffff:​127.0.0.1'​ are treated equally and '::/​0'​ will allow any IPv4 or IPv6 address.\\ '​0.0.0.0/​0'​ can be used to allow any IPv4 address.\\ Note, that "​IPv4-compatible IPv6 addresses"​ (0000::/96 prefix) are supported but deprecated by [[https://​tools.ietf.org/​html/​rfc4291#​section-2.5.5|RFC4291]].\\ Example: Server=127.0.0.1,​192.168.1.0/​24,::​1,​2001:​db8::/​32,​zabbix.domain\\ Spaces and [[manual:​config:​macros:​usermacros|user macros]] are allowed in this field. ​ |+|//Allowed hosts// ​  ​|Visible only if //Enable trapping// ​ checkbox is marked.\\ List of comma delimited IP addresses, optionally in CIDR notation, or hostnames.\\ If specified, incoming connections will be accepted only from the hosts listed here.\\ If IPv6 support is enabled then '​127.0.0.1',​ '::​127.0.0.1',​ '::​ffff:​127.0.0.1'​ are treated equally and '::/​0'​ will allow any IPv4 or IPv6 address.\\ '​0.0.0.0/​0'​ can be used to allow any IPv4 address.\\ Note, that "​IPv4-compatible IPv6 addresses"​ (0000::/96 prefix) are supported but deprecated by [[https://​tools.ietf.org/​html/​rfc4291#​section-2.5.5|RFC4291]].\\ Example: Server=127.0.0.1,​ 192.168.1.0/​24, 192.168.3.1-255,​ 192.168.1-10.1-255, ::​1,​2001:​db8::/​32,​ zabbix.domain\\ Spaces and [[manual:​config:​macros:​usermacros|user macros]] ​are allowed in this field.\\ Host macros: {HOST.HOST},​ {HOST.NAME},​ {HOST.IP}, {HOST.DNS}, {HOST.CONN} ​are allowed in this field. ​ |
  
 <note tip>If the //HTTP proxy// field is left empty, another way for using an HTTP proxy is to set proxy-related environment variables. ​ <note tip>If the //HTTP proxy// field is left empty, another way for using an HTTP proxy is to set proxy-related environment variables. ​