en-us	#### Prediction functions  |FUNCTION|<|<|<| |--------|-|-|-| |<|**Description**|**Function-specific parameters**|**Comments**| |**forecast** (/host/key,(sec\|\#num)<:time shift>,time,<fit>,<mode>)|<|<|<| |<|Future value, max, min, delta or avg of the item.|See [common parameters](#common-parameters).<br><br>**time** - forecasting horizon in seconds (time suffixes can be used); negative values are supported<br><br>**fit** (optional; must be double-quoted) - function used to fit historical data<br><br>Supported `fits`:<br>*linear* - linear function<br>*polynomialN* - polynomial of degree N (1 <= N <= 6)<br>*exponential* - exponential function<br>*logarithmic* - logarithmic function<br>*power* - power function<br><br>Note that:<br>*linear* is default, *polynomial1* is equivalent to *linear*<br><br>**mode** (optional; must be double-quoted) - demanded output<br><br>Supported `modes`:<br>*value* - value (default)<br>*max* - maximum<br>*min* - minimum<br>*delta* - *max*-*min*<br>*avg* - average<br><br>Note that:<br>*value* estimates item value at the moment `now` + `time`<br>*max*, *min*, *delta* and *avg* investigate item value estimate on the interval between `now` and `now` + `time`|Supported value types: float, int<br><br>If value to return is larger than 1.7976931348623157E+308 or less than -1.7976931348623157E+308, return value is cropped to 1.7976931348623157E+308 or -1.7976931348623157E+308 correspondingly.<br><br>Becomes unsupported only if misused in expression (wrong item type, invalid parameters), otherwise returns -1 in case of errors.<br><br>Examples:<br>=> **forecast**(/host/key,**\#10**,**1h**) → forecast item value in one hour based on the last 10 values<br>=> **forecast**(/host/key,**1h**,**30m**) → forecast item value in 30 minutes based on the last hour data<br>=> **forecast**(/host/key,**1h:now-1d**,**12h**) → forecast item value in 12 hours based on one hour one day ago<br>=> **forecast**(/host/key,**1h**,**10m**,"exponential") → forecast item value in 10 minutes based on the last hour data and exponential function<br>=> **forecast**(/host/key,**1h**,**2h**,"polynomial3","max") → forecast the maximum value the item can reach in the next two hours based on last hour data and cubic (third degree) polynomial<br>=> **forecast**(/host/key,**\#2**,**-20m**) → estimate the item value 20 minutes ago based on the last two values (this can be more precise than using last(), especially if item is updated rarely, say, once an hour)<br><br>See also additional information on [predictive trigger functions](/manual/config/triggers/prediction).| |**timeleft** (/host/key,(sec\|\#num)<:time shift>,threshold,<fit>)|<|<|<| |<|Time in seconds needed for an item to reach a specified threshold.|See [common parameters](#common-parameters).<br><br>**threshold** - value to reach ([unit suffixes](/manual/appendix/suffixes) can be used)<br><br>**fit** (optional; must be double-quoted) - see forecast()|Supported value types: float, int<br><br>If value to return is larger than 1.7976931348623157E+308, return value is cropped to 1.7976931348623157E+308.<br><br>Returns 1.7976931348623157E+308 if threshold cannot be reached.<br><br>Becomes unsupported only if misused in the expression (wrong item type, invalid parameters), otherwise returns -1 in case of errors.<br><br>Examples:<br>=> **timeleft**(/host/key,**\#10**,**0**) → time until the item value reaches zero based on the last 10 values<br>=> **timeleft**(/host/key,**1h**,**100**) → time until the item value reaches 100 based on the last hour data<br>=> **timeleft**(/host/key,**1h:now-1d**,**100**) → time until the item value reaches 100 based on one hour one day ago<br>=> **timeleft**(/host/key,**1h**,**200**,"polynomial2") → time until the item value reaches 200 based on the last hour data and assumption that the item behaves like quadratic (second degree) polynomial<br>See also additional information on [predictive trigger functions](/manual/config/triggers/prediction).|
pt-br	#### Funções de previsão  |FUNÇÃO|<|<|<| |--------|-|-|-| |<|**Descrição**|**Parâmetros específicos da função**|**Comentários**| |**previsão** (/host/key,(sec\|\#num)<:time shift>,time,<fit>,<mode>)|<|<|<| |<|Valor futuro, max, min, delta ou avg do item.|Consulte [parâmetros comuns](#common-parameters).<br><br>**tempo** - horizonte de previsão em segundos (os sufixos de tempo podem ser usado); valores negativos são suportados<br><br>**fit** (opcional; deve estar entre aspas duplas) - função usada para ajustar dados históricos<br><br>compatível com `fits`:<br>*linear* - linear função<br>*polinômioN* - polinômio de grau N (1 <= N <= 6)<br>*exponencial* - função exponencial<br>*logarítmico* - função logarítmica<br>*potência* - função de potência<br> ><br>Observe que:<br>*linear* é o padrão, *polinomial1* é equivalente a *linear*<br><br>**modo** (opcional; deve estar entre aspas duplas) - saída exigida<br ><br>Modos compatíveis:<br>*valor* - valor (padrão)<br>*max* - máximo<br>*min* - mínimo<br>*delta* - *max*-*min* <br>*avg* - média<br><br>Observe que:<br>*value* estima o valor do item no momento `now` + `time`<br>*max*, *min*, *delta* e *avg* investigam a estimativa de valor do item no intervalo entre `now` e `now` + `time`|Tipos de valor suportados: float, int<br><br>Se o valor a ser retornado for maior que 1,7976931348623157E+308 ou menos que -1,7976931348623157E+308, o valor de retorno é cortado para 1,79769313486231 57E+308 ou -1,7976931348623157E+308 correspondentemente.<br><br>Torna-se incompatível apenas se usado incorretamente na expressão (tipo de item errado, parâmetros inválidos), caso contrário retorna -1 em caso de erros.<br><br>Exemplos: <br>=> **previsão**(/host/key,**\#10**,**1h**) → valor do item previsto em uma hora com base nos últimos 10 valores<br>=> ** previsão**(/host/key,**1h**,**30m**) → valor do item previsto em 30 minutos com base nos dados da última hora<br>=> **previsão**(/host/key, **1h:agora-1d**,**12h**) → valor do item previsto em 12 horas com base em uma hora do dia anterior<br>=> **previsão**(/host/key,**1h* *,**10m**,"exponencial") → valor do item de previsão em 10 minutos com base nos dados da última hora e função exponencial<br>=> **previsão**(/host/key,**1h**, **2h**,"polinomial3","max") → preveja o valor máximo que o item pode atingir nas próximas duas horas com base nos dados da última hora e no polinômio cúbico (terceiro grau)<br>=> **previsão** (/host/key,**\#2**,**-20m**) → estime o valor do item 20 minutos atrás com base nos dois últimos valores (t isso pode ser mais preciso do que usar last(), especialmente se o item for atualizado raramente, digamos, uma vez por hora)<br><br>Veja também informações adicionais sobre [funções de gatilho preditivas](/manual/config/triggers/prediction) .| |**timeleft** (/host/key,(sec\|\#num)<:time shift>,threshold,<fit>)|<|<|<| |<|Tempo em segundos necessário para um item atingir um limite especificado.|Consulte [parâmetros comuns](#common-parameters).<br><br>**limiar** - valor a ser alcançado ([sufixos de unidade]( /manual/apêndice/sufixos) podem ser usados)<br><br>**fit** (opcional; deve ser entre aspas duplas) - veja forecast()|Tipos de valor suportados: float, int<br><br> Se o valor a ser retornado for maior que 1,7976931348623157E+308, o valor de retorno será recortado para 1,7976931348623157E+308.<br><br>Retorna 1,7976931348623157E+308 se o limite não puder ser alcançado.<br><br>Torna-se incompatível somente se usado incorretamente. na expressão (tipo de item errado, parâmetros inválidos), caso contrário retorna -1 em caso de erros.<br><br>Exemplos:<br>=> **timeleft**(/host/key,**\#10 **,**0**) → tempo até que o valor do item chegue a zero com base nos últimos 10 valores<br>=> **timeleft**(/host/key,**1h**,**100** ) → tempo até que o valor do item atinja 100 com base nos dados da última hora<br>=> **timeleft**(/host/key,**1h:now-1d**,**100**) → tempo até o valor do item atinge 100 com base em uma hora um dia atrás<br>=> **timeleft**(/host/key,**1h**,**200**,"polynomial2") → tempo até que o valor do item atinja 200 com base nos dados da última hora e supondo que o item se comporta como polinômio quadrático (segundo grau)<br>Veja também informações adicionais sobre [funções de gatilho preditivas](/manual/config/triggers/prediction).|

en-us	 ## Preprocessing
pt-br	 ## Pré-processamento

en-us	#### Preprocessing test result truncation  When [testing preprocessing steps](/manual/config/items/preprocessing#testing), test results are now truncated to a maximum size of 512KB when sent to the frontend. Note that data larger than 512KB is still processed fully by Zabbix server.
pt-br	#### Truncamento de resultados de teste de pré-processamento  Ao testar as etapas do pré-processamento [testing preprocessing steps](/manual/config/items/preprocessing#testing), os resultados dos testes agora são truncados para um tamanho máximo de 512KB quando enviados para a interface. Note que dados maiores que 512KB ainda são processados integralmente pelo servidor Zabbix.

en-us	#### Preprocessing  The **Preprocessing** tab allows to define transformation rules to apply to the result of discovery. One or several transformations are possible in this step. Transformations are executed in the order in which they are defined. All preprocessing is done by Zabbix server.  See also:  -   [Preprocessing     details](/manual/config/items/preprocessing/preprocessing_details) -   [Preprocessing testing](/manual/config/items/preprocessing#testing)  ![](../../../assets/en/manual/discovery/low_level_discovery/lld_fs_b.png)  |Type|Transformation|Description| |----|--------------|-----------| |Text|<|<| |<|*Regular expression*|Match the received value to the <pattern> regular expression and replace value with the extracted <output>. The regular expression supports extraction of maximum 10 captured groups with the \\N sequence.<br>Parameters:<br>**pattern** - regular expression<br>**output** - output formatting template. An \\N (where N=1…9) escape sequence is replaced with the Nth matched group. A \\0 escape sequence is replaced with the matched text.<br>If you mark the *Custom on fail* checkbox, it is possible to specify custom error handling options: either to discard the value, set a specified value or set a specified error message.| |^|*Replace*|Find the search string and replace it with another (or nothing). All occurrences of the search string will be replaced.<br>Parameters:<br>**search string** - the string to find and replace, case-sensitive (required)<br>**replacement** - the string to replace the search string with. The replacement string may also be empty effectively allowing to delete the search string when found.<br>It is possible to use escape sequences to search for or replace line breaks, carriage return, tabs and spaces "\\n \\r \\t \\s"; backslash can be escaped as "\\\\" and escape sequences can be escaped as "\\\\n". Escaping of line breaks, carriage return, tabs is automatically done during low-level discovery.<br>Supported since 5.0.0.| |Structured data|<|<| |<|*JSONPath*|Extract value or fragment from JSON data using [JSONPath functionality](/manual/config/items/preprocessing/jsonpath_functionality).<br>If you mark the *Custom on fail* checkbox, the item will not become unsupported in case of failed preprocessing step and it is possible to specify custom error handling options: either to discard the value, set a specified value or set a specified error message.| |<|*XML XPath*|Extract value or fragment from XML data using XPath functionality.<br>For this option to work, Zabbix server must be compiled with libxml support.<br>Examples:<br>`number(/document/item/value)` will extract `10` from `<document><item><value>10</value></item></document>`<br>`number(/document/item/@attribute)` will extract `10` from `<document><item attribute="10"></item></document>`<br>`/document/item` will extract `<item><value>10</value></item>` from `<document><item><value>10</value></item></document>`<br>Note that namespaces are not supported.<br>Supported since 4.4.0.<br>If you mark the *Custom on fail* checkbox, it is possible to specify custom error handling options: either to discard the value, set a specified value or set a specified error message.| |<|*CSV to JSON*|Convert CSV file data into JSON format.<br>For more information, see: [CSV to JSON preprocessing](/manual/config/items/preprocessing/csv_to_json#csv_header_processing).<br>Supported since 4.4.0.| |^|*XML to JSON*|Convert data in XML format to JSON.<br>For more information, see: [Serialization rules](/manual/config/items/preprocessing/javascript/javascript_objects#serialization_rules).<br>If you mark the *Custom on fail* checkbox, it is possible to specify custom error handling options: either to discard the value, set a specified value or set a specified error message.| |Custom scripts|<|<| |<|*JavaScript*|Enter JavaScript code in the block that appears when clicking in the parameter field or on *Open*.<br>Note that available JavaScript length depends on the [database used](/manual/config/items/item#custom_script_limit).<br>For more information, see: [Javascript preprocessing](/manual/config/items/preprocessing/javascript)| |Validation|<|<| |<|*Does not match regular expression*|Specify a regular expression that a value must not match.<br>E.g. `Error:(.*?)\.`<br>If you mark the *Custom on fail* checkbox, it is possible to specify custom error handling options: either to discard the value, set a specified value or set a specified error message.| |^|*Check for error in JSON*|Check for an application-level error message located at JSONpath. Stop processing if succeeded and message is not empty; otherwise continue processing with the value that was before this preprocessing step. Note that these external service errors are reported to user as is, without adding preprocessing step information.<br>E.g. `$.errors`. If a JSON like `{"errors":"e1"}` is received, the next preprocessing step will not be executed.<br>If you mark the *Custom on fail* checkbox, it is possible to specify custom error handling options: either to discard the value, set a specified value or set a specified error message.| |^|*Check for error in XML*|Check for an application-level error message located at xpath. Stop processing if succeeded and message is not empty; otherwise continue processing with the value that was before this preprocessing step. Note that these external service errors are reported to user as is, without adding preprocessing step information.<br>No error will be reported in case of failing to parse invalid XML.<br>Supported since 4.4.0.<br>If you mark the *Custom on fail* checkbox, it is possible to specify custom error handling options: either to discard the value, set a specified value or set a specified error message.| |Throttling|<|<| |<|*Discard unchanged with heartbeat*|Discard a value if it has not changed within the defined time period (in seconds).<br>Positive integer values are supported to specify the seconds (minimum - 1 second). Time suffixes can be used in this field (e.g. 30s, 1m, 2h, 1d). User macros and low-level discovery macros can be used in this field.<br>Only one throttling option can be specified for a discovery item.<br>E.g. `1m`. If identical text is passed into this rule twice within 60 seconds, it will be discarded.<br>*Note*: Changing item prototypes does not reset throttling. Throttling is reset only when preprocessing steps are changed.| |Prometheus|<|<| |<|*Prometheus to JSON*|Convert required Prometheus metrics to JSON.<br>See [Prometheus checks](/manual/config/items/itemtypes/prometheus) for more details.|  Note that if the discovery rule has been applied to the host via template then the content of this tab is read-only.
pt-br	#### Pré-processando  A guia **Pré-processamento** permite definir as regras de transformação a serem aplicadas ao resultado da descoberta. Uma ou várias transformações são possíveis nesta etapa. As transformações são executadas na ordem em que são definidos. Todo o pré-processamento é feito pelo servidor Zabbix.  Veja também:  -   [Pré-processando     detalhes](/manual/config/items/preprocessing/preprocessing_details) - [Teste de pré-processamento](/manual/config/items/preprocessing#testing)  ![](../../../assets/en/manual/discovery/low_level_discovery/lld_fs_b.png)  |Tipo|Transformação|Descrição| |----|--------------|-----------| |Texto|<|<| |<|*Expressão regular*|Faça corresponder o valor recebido à expressão regular <pattern> e substitua o valor pela <saída> extraída. A expressão regular oferece suporte à extração de no máximo 10 grupos capturados com a sequência \\N.<br>Parâmetros:<br>**padrão** - expressão regular<br>**saída** - modelo de formatação de saída. Uma sequência de escape \\N (onde N=1…9) é substituída pelo enésimo grupo correspondente. Uma sequência de escape \\0 é substituída pelo texto correspondente.<br>Se você marcar a caixa de seleção *Personalizado em caso de falha*, é possível especificar opções personalizadas de tratamento de erros: descartar o valor, definir um valor especificado ou definir um mensagem de erro especificada.| |^|*Substituir*|Encontre a string de pesquisa e substitua-a por outra (ou nada). Todas as ocorrências da string de pesquisa serão substituídas.<br>Parâmetros:<br>**search string** - a string para localizar e substituir, diferencia maiúsculas de minúsculas (obrigatório)<br>**replacement** - a string para substitua a string de pesquisa por. A string de substituição também pode estar vazia, permitindo excluir a string de pesquisa quando encontrada.<br>É possível usar sequências de escape para procurar ou substituir quebras de linha, retorno de carro, tabulações e espaços "\\n \\r \\ t\\s"; a barra invertida pode ser escapada como "\\\\" e as seqüências de escape podem ser escapadas como "\\\\n". O escape de quebras de linha, retorno de carro, guias é feito automaticamente durante a descoberta de baixo nível.<br>Suportado desde 5.0.0.| |Dados estruturados|<|<| |<|*JSONPath*|Extraia valor ou fragmento de dados JSON usando [funcionalidade JSONPath](/manual/config/items/preprocessing/jsonpath_functionality).<br>Se você marcar a caixa de seleção *Personalizado em caso de falha*, o item não será tornam-se incompatíveis em caso de falha na etapa de pré-processamento e é possível especificar opções personalizadas de tratamento de erros: descartar o valor, definir um valor especificado ou definir uma mensagem de erro especificada.| |<|*XML XPath*|Extraia valor ou fragmento de dados XML usando a funcionalidade XPath.<br>Para que esta opção funcione, o servidor Zabbix deve ser compilado com suporte a libxml.<br>Exemplos:<br>`number(/document /item/value)` extrairá `10` de `<document><item><value>10</value></item></document>`<br>`number(/document/item/@attribute) ` extrairá `10` de `<document><item attribute="10"></item></document>`<br>`/document/item` extrairá `<item><value>10</value ></item>` de `<document><item><value>10</value></item></document>`<br>Observe que namespaces não são suportados.<br>Suportado desde 4.4.0. <br>Se você marcar a caixa de seleção *Personalizado em caso de falha*, é possível especificar opções personalizadas de tratamento de erros: descartar o valor, definir um valor especificado ou definir uma mensagem de erro especificada.| |<|*CSV para JSON*|Converter dados do arquivo CSV para o formato JSON.<br>Para obter mais informações, consulte: [CSV para pré-processamento JSON](/manual/config/items/preprocessing/csv_to_json#csv_header_processing).<br> Suportado desde 4.4.0.| |^|*XML para JSON*|Converter dados em formato XML para JSON.<br>Para obter mais informações, consulte: [Regras de serialização](/manual/config/items/preprocessing/javascript/javascript_objects#serialization_rules).<br> Se você marcar a caixa de seleção *Personalizado em caso de falha*, é possível especificar opções personalizadas de tratamento de erros: descartar o valor, definir um valor especificado ou definir uma mensagem de erro especificada.| |Scripts personalizados|<|<| |<|*JavaScript*|Insira o código JavaScript no bloco que aparece ao clicar no campo de parâmetro ou em *Abrir*.<br>Observe que o comprimento do JavaScript disponível depende do [banco de dados usado](/manual/config/items/ item#custom_script_limit).<br>Para obter mais informações, consulte: [Pré-processamento de Javascript](/manual/config/items/preprocessing/javascript)| |Validação|<|<| |<|*Não corresponde a expressão regular*|Especifique uma expressão regular que um valor não deve corresponder.<br>Ex. `Error:(.*?)\.`<br>Se você marcar a caixa de seleção *Custom on fail*, é possível especificar opções personalizadas de tratamento de erros: descartar o valor, definir um valor especificado ou definir um erro especificado mensagem.| |^|*Verifique se há erro no JSON*|Verifique se há uma mensagem de erro no nível do aplicativo localizada em JSONpath. Interrompa o processamento se for bem-sucedido e a mensagem não estiver vazia; caso contrário, continue o processamento com o valor que estava antes dessa etapa de pré-processamento. Observe que esses erros de serviço externo são relatados ao usuário como estão, sem adicionar informações da etapa de pré-processamento.<br>Por exemplo, `$.errors`. Se um JSON como `{"errors":"e1"}` for recebido, a próxima etapa de pré-processamento não será executada.<br>Se você marcar a caixa de seleção *Personalizado em caso de falha*, é possível especificar opções personalizadas de tratamento de erros : para descartar o valor, definir um valor especificado ou definir uma mensagem de erro especificada.| |^|*Verifique se há erro no XML*|Verifique se há uma mensagem de erro no nível do aplicativo localizada em xpath. Interrompa o processamento se for bem-sucedido e a mensagem não estiver vazia; caso contrário, continue o processamento com o valor que estava antes dessa etapa de pré-processamento. Observe que esses erros de serviço externo são relatados ao usuário como estão, sem adicionar informações da etapa de pré-processamento.<br>Nenhum erro será relatado em caso de falha ao analisar XML inválido.<br>Suportado desde a versão 4.4.0.<br>Se você marque a caixa de seleção *Personalizado em caso de falha*, é possível especificar opções personalizadas de tratamento de erros: descartar o valor, definir um valor especificado ou definir uma mensagem de erro especificada.| |Estrangulamento|<|<| |<|*Descartar inalterado com pulsação*|Descartar um valor se ele não foi alterado dentro do período de tempo definido (em segundos).<br>Valores inteiros positivos são suportados para especificar os segundos (mínimo - 1 segundo). Sufixos de tempo podem ser usados neste campo (por exemplo, 30s, 1m, 2h, 1d). Macros de usuário e macros de descoberta de baixo nível podem ser usadas neste campo.<br>Apenas uma opção de limitação pode ser especificada para um item de descoberta.<br>Por exemplo, `1m`. Se um texto idêntico for passado para esta regra duas vezes em 60 segundos, ele será descartado.<br>*Observação*: A alteração de protótipos de itens não redefine a limitação. A limitação é redefinida somente quando as etapas de pré-processamento são alteradas.| |Prometeu|<|<| |<|*Prometheus para JSON*|Converter as métricas necessárias do Prometheus para JSON.<br>Consulte [verificações do Prometheus](/manual/config/items/itemtypes/prometheus) para obter mais detalhes.|  Observe que se a regra de descoberta foi aplicada ao host via template então o conteúdo desta guia é somente leitura.

en-us	 ### Pre-requisites  Prior to configuring service monitoring, you need to have the hosts configured:  - *HA node 1* with at least one trigger and a tag (preferably set on a trigger level) `component:HA node 1` - *HA node 2* with at least one trigger and a tag (preferably set on a trigger level) `component:HA node 2`
pt-br	### Pré-requisitos  Antes configurar o monitoramento de serviço, é necessário ter os hosts configurados:   - *HA node 1* com pelo menos um trigger e uma tag  (preferencialmente, configurar em um nível de trigger) `component:HA node 1` - *HA node 2* com pelo menos um trigger e uma tag (preferencialmente, configurar em um nível de trigger) `component:HA node 2` 

en-us	#### Prerequisites  You will need command line developer tools (Xcode is not required), Automake, pkg-config and PCRE (v8.x) or PCRE2 (v10.x). If you want to build agent binaries with TLS, you will also need OpenSSL or GnuTLS.  To install Automake and pkg-config, you will need a Homebrew package manager from <https://brew.sh/>. To install it, open terminal and run the following command:      /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"  Then install Automake and pkg-config:      brew install automake     brew install pkg-config  Preparing PCRE, OpenSSL and GnuTLS libraries depends on the way how they are going to be linked to the agent.  If you intend to run agent binaries on a macOS machine that already has these libraries, you can use precompiled libraries that are provided by Homebrew. These are typically macOS machines that use Homebrew for building Zabbix agent binaries or for other purposes.  If agent binaries will be used on macOS machines that don't have the shared version of libraries, you should compile static libraries from sources and link Zabbix agent with them.
pt-br	#### Pré-requisitos  Você precisará de ferramentas de desenvolvedor de linha de comando (Xcode não é necessário), Automake, pkg-config e PCRE (v8.x) ou PCRE2 (v10.x). Se você deseja criar os binários do agente com TLS,  precisará também do OpenSSL ou GnuTLS.  Para instalar o Automake e o pkg-config, você precisará de um gerenciador de pacotes Homebrew de <https://brew.sh/>. Para instalar, abra o terminal  e execute o seguinte comando:      $ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"  Em seguida, instale o Automake e o pkg-config:      $ brew install automake     $ brew install pkg-config  A prepração das bibliotecas do PCRE, OpenSSL e GnuTLS depende da maneira como eles serão vinculados ao agente.  Se você pretende executar os binários do agente em uma máquina macOS que possui estas bibliotecas, você pode utilizar bibliotecas pré-compiladas fornecidas pelo Homebrew. Normalmente, são máquinas macOS que usam o Homebrew para criar binários do agente Zabbix ou para outros fins.  Se os binários do agente forem utilizados ​​em máquinas macOS que não possuem a versão compartilhada das bibliotecas, você deve compilar bibliotecas estáticas a partir de fontes e vincular o agente Zabbix com eles.

en-us	 #### Primary keys  Primary keys are now used for all tables, including history tables, in new installations.  There is no automatic upgrade to primary keys for existing installations.  Instructions for a **manual upgrade** of history tables to primary keys in  pre-existing installations are available for  [MySQL/MariaDB](/manual/appendix/install/db_primary_keys#mysql),  [PostgreSQL](/manual/appendix/install/db_primary_keys#postgresql),  [TimescaleDB v1](/manual/appendix/install/db_primary_keys#timescaledb-v1) and  [v2](/manual/appendix/install/db_primary_keys#timescaledb-v2),  and [Oracle](/manual/appendix/install/db_primary_keys#oracle).  
pt-br	 #### Primary keys  Primary keys are now used for all tables, including history tables, in new installations.  There is no automatic upgrade to primary keys for existing installations.  Instructions for a **manual upgrade** of history tables to primary keys in  pre-existing installations are available for  [MySQL/MariaDB](manual/appendix/install/db_primary_keys#mysql),  [PostgreSQL](manual/appendix/install/db_primary_keys#posgresql),  [TimescaleDB v1](manual/appendix/install/db_primary_keys#timescaledb-v1) and  [v2](manual/appendix/install/db_primary_keys#timescaledb-v2),  and [Oracle](manual/appendix/install/db_primary_keys#oracle).  

en-us	 #### Primary keys  Primary keys are now used for all tables, including history tables, in new installations.  There is no automatic upgrade to primary keys for existing installations.  Instructions for a **manual upgrade** of history tables to primary keys in  pre-existing installations are available for  [MySQL/MariaDB](/manual/appendix/install/db_primary_keys#mysql),  [PostgreSQL](/manual/appendix/install/db_primary_keys#postgresql),  [TimescaleDB v1](/manual/appendix/install/db_primary_keys#timescaledb-v1) and  [v2](/manual/appendix/install/db_primary_keys#timescaledb-v2),  and [Oracle](/manual/appendix/install/db_primary_keys#oracle).  
pt-br	 #### Primary keys  Primary keys are now used for all tables, including history tables, in new installations.  There is no automatic upgrade to primary keys for existing installations.  Instructions for a **manual upgrade** of history tables to primary keys in  pre-existing installations are available for  [MySQL/MariaDB](manual/appendix/install/db_primary_keys#mysql),  [PostgreSQL](manual/appendix/install/db_primary_keys#posgresql),  [TimescaleDB v1](manual/appendix/install/db_primary_keys#timescaledb-v1) and  [v2](manual/appendix/install/db_primary_keys#timescaledb-v2),  and [Oracle](manual/appendix/install/db_primary_keys#oracle).  

en-us	 #### Primary keys  Primary keys are now used for all tables, including history tables, in new installations.  There is no automatic upgrade to primary keys for existing installations. Instructions for a **manual upgrade** of history tables to primary keys in pre-existing installations are available for [MySQL/MariaDB](/manual/appendix/install/db_primary_keys#mysql),  [PostgreSQL](/manual/appendix/install/db_primary_keys#postgresql),  [TimescaleDB v1](/manual/appendix/install/db_primary_keys#timescaledb-v1) and  [v2](/manual/appendix/install/db_primary_keys#timescaledb-v2),  and [Oracle](/manual/appendix/install/db_primary_keys#oracle).
pt-br	 #### Chaves primárias  As chaves primárias agora são usadas em todas as tabelas, inclusive nas tabelas de histórico, em novas instalações.  Não há atualização automática para chaves primárias nas instalações existentes. As instruções para uma **atualização manual** das tabelas de histórico para chaves primárias em instalações pré-existentes estão disponíveis em [MySQL/MariaDB](/manual/appendix/install/db_primary_keys#mysql), [PostgreSQL](/manual/appendix/install/db_primary_keys#postgresql), [TimescaleDB v1](/manual/appendix/install/db_primary_keys#timescaledb-v1) e [v2](/manual/appendix/install/db_primary_keys#timescaledb-v2), e [Oracle](/manual/appendix/install/db_primary_keys#oracle).

en-us	 ##### Primary keys  Primary keys are now used for all tables, including history tables, in new installations.  There is no automatic upgrade to primary keys for existing installations.  Instructions for a **manual upgrade** of history tables to primary keys in  pre-existing installations are available for  [MySQL/MariaDB](/manual/appendix/install/db_primary_keys#mysql),  [PostgreSQL](/manual/appendix/install/db_primary_keys#postgresql),  [TimescaleDB v1](/manual/appendix/install/db_primary_keys#timescaledb-v1) and  [v2](/manual/appendix/install/db_primary_keys#timescaledb-v2),  and [Oracle](/manual/appendix/install/db_primary_keys#oracle).
pt-br	##### Chaves primárias  As chaves primárias são agora usadas para todas as tabelas, incluindo as tabelas  históricas, em novas instalações.  Não há atualização automática para chaves primárias para instalações existentes.  Instruções para uma **atualização manual** das tabelas históricas para chaves  primárias em instalações pré-existentes estão disponíveis para [MySQL/MariaDB](/manual/appendix/install/db_primary_keys#mysql),  [PostgreSQL](/manual/appendix/install/db_primary_keys#postgresql),  [TimescaleDB v1](/manual/appendix/install/db_primary_keys#timescaledb-v1) e  [v2](/manual/appendix/install/db_primary_keys#timescaledb-v2),  e [Oracle](/manual/appendix/install/db_primary_keys#oracle).

en-us	#### Problem events  A problem event is created:  -   when a trigger expression evaluates to TRUE if the trigger is in OK     state; -   each time a trigger expression evaluates to TRUE if multiple problem     event generation is enabled for the trigger.  
pt-br	#### Eventos PROBLEMA  Um evento problema é criado:  -   quando uma expressão de gatilho avalia para VERDADEIRO (TRUE) se o gatilho está     em estado OK; -   a cada vez que uma expressão de gatilho avalia para VERDADEIRO se a geração de múltiplos     eventos problema está habilitada para o gatilho.  

en-us	# problem.get
pt-br	# problem.get

en-us	#### Problems  Retrieve problems according to the given parameters.  [Problem API](/manual/api/reference/problem)
pt-br	#### Problemas  Recupere problemas de acordo com os parâmetros fornecidos.  [API de problema](/manual/api/reference/problem)

en-us	#### Problems  The following parameters are supported for configuring *Problems*.  |Parameter|<|[type](/manual/api/reference/dashboard/object#dashboard-widget-field)|name|value| |-|--------|--|--------|-------------------------------| |*Show problems*|<|0|show_problems|0 - *(default)* Disabled;<br>1 - Enabled.| |*Selected items only*|<|0|graph_item_problems|0 - Disabled;<br>1 - *(default)* Enabled.| |*Problem hosts*|<|1|problemhosts.0|[Host](/manual/api/reference/host/get) name.<br><br>Note: The number in the property name references the configured host.<br>To configure multiple hosts, create a dashboard widget field object for each host.| |*Severity*|<|0|severities|0 - Not classified;<br>1 - Information;<br>2 - Warning;<br>3 - Average;<br>4 - High;<br>5 - Disaster.<br><br>Default: empty (all enabled).<br><br>Note: To configure multiple values, create a dashboard widget field object for each value.| |*Problem*|<|1|problem_name|Problem [event name](/manual/config/triggers/trigger#configuration) (case insensitive, full name or part of it).| |*Tags* (the number in the property name (e.g. tags.tag.0) references tag order in the tag evaluation list)|<|<|<|<| |<|*Evaluation type*|0|evaltype|0 - *(default)* And/Or;<br>2 - Or.| |^|*Tag name*|1|tags.tag.0|Any string value.<br><br>Parameter *Tag name* required if configuring *Tags*.| |^|*Operator*|0|tags.operator.0|0 - Contains;<br>1 - Equals;<br>2 - Does not contain;<br>3 - Does not equal;<br>4 - Exists;<br>5 - Does not exist.<br><br>Parameter *Operator* required if configuring *Tags*.| |^|*Tag value*|1|tags.value.0|Any string value.<br><br>Parameter *Tag value* required if configuring *Tags*.|
pt-br	#### Problemas  The following parameters are supported for configuring *Problems*.  |Parâmetro|<|[type](/manual/api/reference/dashboard/object#dashboard-widget-field)|nome|valor| |-|--------|--|--------|-------------------------------| |*Mostrar problemas*|<|0|show_problems|0 - *(padrão)* Desativado;<br>1 -Ativado.| |*Apenas itens selecionados*|<|0|graph_item_problems|0 - Desativado;<br>1 - *(padrão)* Ativado.| |*Hosts de problema*|<|1|problemhosts.0|Nome do [Host](/manual/api/reference/host/get).<br><br>Nota: O número no nome da propriedade se refere ao host configurado.<br>Para configurar múltiplos hosts, crie um objeto de campo de widget de painel para cada host.| |*Gravidade*|<|0|severities|0 - Não classificado;<br>1 - Informação;<br>2 - Aviso;<br>3 - Médio;<br>4 - Alto;<br>5 - Desastre.<br><br>Padrão: vazio (todos habilitados).<br><br>Note: Para configurar múltiplos valores, crie um objeto de campo de widget de painel para cada valor.| |*Problema*|<|1|problem_name|Nome do problema [event name](/manual/config/triggers/trigger#configuration) (insensível a maiúsculas, nome completo ou parte dele).| |*Tags* o número no nome da propriedade (por exemplo, tags.tag.0) refere-se à ordem da tag na lista de avaliação de tags)|<|<|<|<| |<|*Tipo de avaliação*|0|evaltype|0 - *(padrão)* E/Ou;<br>2 - Ou.| |^|*Nome da tag*|1|tags.tag.0|Qualquer valor de string.<br><br>Parâmetro *Tag name* obrigatório se estiver configurando *Tags*.| |^|*Operador*|0|tags.operator.0|0 - Contém;<br>1 - Igual;<br>2 - Não contém;<br>3 - Não é igual;<br>4 - Existe;<br>5 - Não existe.<br><br>Parâmetro *Operador* obrigatório se estiver configurando *Tags*.| |^|*Valor da tag*|1|tags.value.0|Qualquer valor de string.<br><br>Parâmetro *Valor da tag* obrigatório se estiver configurando *Tags*.|

en-us	### Problem tag  Problem tags allow linking services with problem events. The problem tag object has the following properties.  | Property              | [Type](/manual/api/reference_commentary#data_types) | Description                                                                                 | |-----------------------|-----------------------------------------------------|---------------------------------------------------------------------------------------------| | **tag**<br>(required) | string                                              | Problem tag name.                                                                           | | operator              | integer                                             | Mapping condition operator.<br><br>Possible values:<br>0 - *(default)* equals;<br>2 - like. | | value                 | string                                              | Problem tag value.                                                                          |
pt-br	### Etiqueta do problema      As etiquetas de problema permitem vincular serviços a eventos de problema. O objeto de etiquetas de problema tem as seguintes propriedades.      | Propriedade | [Tipo](/manual/api/reference_commentary#data_types) | Descrição                                                                                 | |-----------------------|-----------------------------------------------------|---------------------------------------------------------------------------------------------| | **tag**<br>(requerido) | string                                              | Nome da etiqueta do problema.                                                                           | | operator              | integer                                             | Operador de condição de mapeamento.<br><br>Valores possíveis:<br>0 - *(padrão)* é igual;<br>2 - igual. | | value                 | string                                              | Valor da etiqueta  do problema.                                                                          |

en-us	 #### Problem tags  Problem tags are used to match problems and services. These tags are specified at the primary service configuration tab.   Only child services of the lowest hierarchy level may have problem tags defined and be directly correlated to problems. If problem tags match,  the service status will change to the same status as the problem has. In case of several problems, a service will have the status of the most severe one. Status of a  parent service is then calculated based on child services statuses according to Status calculation rules.   If several tags are specified, *AND* logic is used: a problem must have all tags  specified in the service configuration to be mapped to the service.   ![](../../../assets/en/manual/config/problem_tags.png){width=600}   :::noteclassic A problem in Zabbix inherits tags from the whole chain of templates, hosts, items, web scenarios, and triggers. Any of these tags can be used for matching problems to services. ::: 
pt-br	#### Tags problema  As tags problema são usadas para associar problemas e serviços. Essas tags são especificadas na guia de configuração principal do serviço.  Somente os serviços de child do nível hierárquico mais baixo podem ter tags de problema definidas e estar diretamente correlacionados aos problemas. Se as tags de problema corresponderem, o status do serviço será alterado para o mesmo status do problema. Em caso de vários problemas, o serviço terá o status de mais severo de todos. O status de um serviço parent é então calculado baseado nos status dos serviços de child de acordo com as regras de cálculo status.   Se múltiplas tags são especificadas, several tags, a lógica *e* é utilizada: um problema deve ter todas as tags especificadas na configuração do serviço para ser mapeado para o serviço.   ![](../../../assets/en/manual/config/problem_tags.png){largura=600}   :::noteclassic A problem in Zabbix inherits tags from the whole chain of templates, hosts, items, web scenarios, and triggers. Any of these tags can be used for matching problems to services. :::   Um problema no Zabbix é que herda tags de toda cadeia de templates, hosts, itens, cenários web, e triggers. Qualquer uma dessas tags pode ser usada para fazer a correspondência de problemas com serviços.

en-us	### Problem tag  The problem tag object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |tag|string|Problem tag name.| |value|string|Problem tag value.|
pt-br	### Etiqueta do problema      O objeto de tag de problema tem as seguintes propriedades.  |Propriedade|[Tipo](/manual/api/reference_commentary#data_types)|Descrição| |--|--|------| |tag|string|Nome da tag do problema.| |value|string|Valor da etiqueta do problema.|

en-us	### Problem tag  The problem tag object is used to define which problems must be suppressed when the maintenance comes into effect. It has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |**tag**<br>(required)|string|Problem tag name.| |operator|integer|Condition operator.<br><br>Possible values:<br>0 - Equals;<br>2 - *(default)* Contains.| |value|string|Problem tag value.|  Tags can only be specified for maintenance periods with data collection (`"maintenance_type":0`).
pt-br	### Tag do problema  O objeto tag de problema é utilizado para definir quais problemas devem ser suprimidos quando a manutenção entrar em vigor. Ele tem as seguintes propriedades.  |Propriedade|[Tipo](/manual/api/reference_commentary#data_types)|Descrição| |--|--|------| |**tag**<br>(required)|string|Nome da tag do problema.| |operator|integer|Operador de condição.<br><br>Valores possíveis:<br>0 - Igual a;<br>2 - *(padrão)* Contém.| |value|string|Valor da tag do problema.|  Tags só podem ser especificadas para períodos de manutenção com coleta de dados (`"maintenance_type":0`).

en-us	# Problem  This class is designed to work with problems.  Object references:\  -   [Problem](/manual/api/reference/problem/object#problem)  Available methods:\  -   [problem.get](/manual/api/reference/problem/get) - retrieving     problems
pt-br	# Problema      Esta classe é projetada para trabalhar com problemas.      Referências de objetos:\  -   [Problema](/manual/api/reference/problem/object#problem)  Métodos disponíveis:\  -   [problem.get](/manual/api/reference/problem/get) - recuperando problemas

en-us	##### Problem update window  If a problem arises for a trigger with the *Manual close* flag, you can open the [problem update](/manual/acknowledges#updating_problems) popup window of that problem and close the problem manually.  To close the problem, check the *Close problem* option in the form and click on *Update*.  ![](../../../../assets/en/manual/config/close_problem1.png)  All mandatory input fields are marked with a red asterisk.  The request is processed by Zabbix server. Normally it will take a few seconds to close the problem. During that process *CLOSING* is displayed in *Monitoring* → *Problems* as the status of the problem.  
pt-br	##### Janela atualização de problema  Se um problema surge para um gatilho com a marcação *Encerramento manual*, você pode abrir a janela [atualização de problema](/manual/acknowledges#updating_problems) desse problema e encerrar o problema manualmente.  Para encerrar o problema, marque a opção *Encerrar problema* no formulário e clique em *Atualizar*.  ![](../../../../assets/en/manual/config/close_problem1.png)  Todos os campos de entrada obrigatórios estão marcados com um asterisco vermelho  A requisição é processada pelo Zabbix Server. Normalmente ele levará alguns poucos segundos para encerrar o problema. Durante esse processo *ENCERRANDO* é exibido em *Monitoramento* → *Problemas* como o estado do problema.  

en-us	##### Process data  |Item key|<|<|<| |--|--|------|------| |Description|Return value|Parameters|Comments| |**proc.cpu.util**\[<name>,<user>,<type>,<cmdline>,<mode>,<zone>\]|<|<|<| |Process CPU utilization percentage.|Float|**name** - process name (default is *all processes*)<br>**user** - user name (default is *all users*)<br>**type** - CPU utilization type:<br>*total* (default), *user*, *system*<br>**cmdline** - filter by command line (it is a regular [expression](/manual/regular_expressions#overview))<br>**mode** - data gathering mode: *avg1* (default), *avg5*, *avg15*<br>**zone** - target zone: *current* (default), *all*. This parameter is supported on Solaris only.|Examples:<br>=> proc.cpu.util\[,root\] → CPU utilization of all processes running under the "root" user<br>=> proc.cpu.util\[zabbix\_server,zabbix\] → CPU utilization of all zabbix\_server processes running under the zabbix user<br><br>The returned value is based on single CPU core utilization percentage. For example CPU utilization of a process fully using two cores is 200%.<br><br>The process CPU utilization data is gathered by a collector which supports the maximum of 1024 unique (by name, user and command line) queries. Queries not accessed during the last 24 hours are removed from the collector.<br><br>*Note* that when setting the `zone` parameter to *current* (or default) in case the agent has been compiled on a Solaris without zone support, but running on a newer Solaris where zones are supported, then the agent will return NOTSUPPORTED (the agent cannot limit results to only the current zone). However, *all* is supported in this case.<br><br>This key is supported since Zabbix 3.0.0 and is available on several platforms (see [Items supported by platform](/manual/appendix/items/supported_by_platform)).| |**proc.mem**\[<name>,<user>,<mode>,<cmdline>,<memtype>\]|<|<|<| |Memory used by process in bytes.|Integer - with `mode` as *max*, *min*, *sum*<br><br>Float - with `mode` as *avg*|**name** - process name (default is *all processes*)<br>**user** - user name (default is *all users*)<br>**mode** - possible values:<br>*avg*, *max*, *min*, *sum* (default)<br>**cmdline** - filter by command line (it is a regular [expression](/manual/regular_expressions#overview))<br>**memtype** - [type of memory](/manual/appendix/items/proc_mem_notes) used by process|Examples:<br>=> proc.mem\[,root\] → memory used by all processes running under the "root" user<br>=> proc.mem\[zabbix\_server,zabbix\] → memory used by all zabbix\_server processes running under the zabbix user<br>=> proc.mem\[,oracle,max,oracleZABBIX\] → memory used by the most memory-hungry process running under oracle having oracleZABBIX in its command line<br><br>*Note*: When several processes use shared memory, the sum of memory used by processes may result in large, unrealistic values.<br><br>See [notes](/manual/appendix/items/proc_mem_num_notes) on selecting processes with `name` and `cmdline` parameters (Linux-specific).<br><br>When this item is invoked from the command line and contains a command line parameter (e.g. using the agent test mode: `zabbix_agentd -t proc.mem[,,,apache2]`), one extra process will be counted, as the agent will count itself.<br><br>The `memtype` parameter is supported on several [platforms](/manual/appendix/items/supported_by_platform) since Zabbix 3.0.0.| |**proc.num**\[<name>,<user>,<state>,<cmdline>,<zone>\]|<|<|<| |The number of processes.|Integer|**name** - process name (default is *all processes*)<br>**user** - user name (default is *all users*)<br>**state** (*disk* and *trace* options since version 3.4.0) - possible values:<br>*all* (default),<br>*disk* - uninterruptible sleep,<br>*run* - running,<br>*sleep* - interruptible sleep,<br>*trace* - stopped,<br>*zomb* - zombie<br>**cmdline** - filter by command line (it is a regular [expression](/manual/regular_expressions#overview))<br>**zone** - target zone: *current* (default), *all*. This parameter is supported on Solaris only.|Examples:<br>=> proc.num\[,mysql\] → number of processes running under the mysql user<br>=> proc.num\[apache2,www-data\] → number of apache2 processes running under the www-data user<br>=> proc.num\[,oracle,sleep,oracleZABBIX\] → number of processes in sleep state running under oracle having oracleZABBIX in its command line<br><br>See [notes](/manual/appendix/items/proc_mem_num_notes) on selecting processes with `name` and `cmdline` parameters (Linux-specific).<br><br>On Windows, only the `name` and `user` parameters are supported.<br><br>When this item is invoked from the command line and contains a command line parameter (e.g. using the agent test mode: `zabbix_agentd -t proc.num[,,,apache2]`), one extra process will be counted, as the agent will count itself.<br><br>*Note* that when setting the `zone` parameter to *current* (or default) in case the agent has been compiled on a Solaris without zone support, but running on a newer Solaris where zones are supported, then the agent will return NOTSUPPORTED (the agent cannot limit results to only the current zone). However, *all* is supported in this case.|
pt-br	##### Processar dados  |Chave do item|<|<|<| |--|--|------|------| |Descrição|Valor retornado|Parâmetros|Comentários| |**proc.cpu.util**\[<name>,<user>,<type>,<cmdline>,<mode>,<zone>\]|<|<|<| |Percentual de utilização da CPU pelo processo.|Float|**name** - nome do processo (o padrão é *todos os processos*)<br>**user** - nome do usuário (o padrão é *todos os usuários*)<br>**type** - tipo de utilização de CPU:<br>*total* (padrão), *user*, *system*<br>**cmdline** - filtrar por linha de comando (é uma expressão regular [expression](/manual/regular_expressions#overview))<br>**mode** - modo de coleta de dados: *avg1* (padrão), *avg5*, *avg15*<br>**zone** - zona alvo: *atual* (padrão), *todos*. Este parâmetro é suportado apenas no Solaris.|Exemplos:<br>=> proc.cpu.util\[,root\] → Utilização de CPU de todos os processos executados pelo usuário "root"<br>=> proc.cpu.util\[zabbix\_server,zabbix\] → Utilização de CPU de todos os processos zabbix zabbix\_server executados pelo usuário zabbix<br><br>O valor retornado é baseado na porcentagem de utilização de um único núcleo de CPU. Por exemplo, a utilização de CPU de um processo que utiliza totalmente dois núcleos é de 200%.<br><br>Os dados de utilização de CPU do processo são coletados por um coletor que suporta no máximo 1024 consultas únicas (por nome, usuário e linha de comando). Consultas não acessadas nas últimas 24 horas são removidas do coletor. <br><br>*Note* que, ao definir o parâmetro `zone` como *atual* (ou padrão) caso o agente tenha sido compilado em um Solaris sem suporte a zona, mas executado em um Solaris mais recente onde zonas são suportadas, o agente retornará NOTSUPPORTED (o agente não pode limitar os resultados apenas à zona atual). No entanto, *todos* é suportado nesse caso.<br><br>Esta chave é suportada desde o Zabbix 3.0.0 e está disponível em várias plataformas (consulte [Items supported by platform](/manual/appendix/items/supported_by_platform)).| |**proc.mem**\[<name>,<user>,<mode>,<cmdline>,<memtype>\]|<|<|<| |Memória usada pelo processo em bytes.|Integer - com `mode` como *max*, *min*, *sum*<br><br>Float - como `mode` como *avg*|**name** - nome do processo (o padrão é *todos os processos*)<br>**user** - nome do usuário (o padrão é *todos os usuários*)<br>**mode** - valores possíveis:<br>*avg*, *max*, *min*, *sum* (padrão)<br>**cmdline** - filtrar por linha de comando (é um expressão regular [expression](/manual/regular_expressions#overview))<br>**memtype** - [type of memory](/manual/appendix/items/proc_mem_notes) usado pelo processo|Exemplos:<br>=> proc.mem\[,root\] → memória usada por todos os processos executados pelo usuário "root"<br>=> proc.mem\[zabbix\_server,zabbix\] → memória usada por todos os processos zabbix\_server executados pelo usuário zabbix<br>=> proc.mem\[,oracle,max,oracleZABBIX\] → memória usada pelo processo mais faminto por memória executado pelo usuário oracle e que tenha oracleZABBIX na sua linha de comando<br><br>*Note*: Quando vários processos usam memória compartilhada, a soma da memória usada pelos processos pode resultar em valores grandes e irreais.<br><br>Consulte as notas [notes](/manual/appendix/items/proc_mem_num_notes) sobre a seleção de processos com os parâmetros `name` e `cmdline` (específico para Linux).<br><br>Quando este item é invocado a partir da linha de comando e contém um parâmetro de linha de comando (por exemplo, usando o modo de teste do agente: `zabbix_agentd -t proc.mem[,,,apache2]`), um processo extra será contado, pois o agente contará a si mesmo.<br><br>O parâmetro `memtype` é suportado por várias plataformas [platforms](/manual/appendix/items/supported_by_platform) desde o Zabbix 3.0.0.| |**proc.num**\[<name>,<user>,<state>,<cmdline>,<zone>\]|<|<|<| |O número de processos.|Integer|**name** - nome do processo (o padrão é *todos os processos*)<br>**user** - nome do usuário (o padrão é *todos os usuários*)<br>**state** (opções *disk* e *trace* desde a versão 3.4.0) - valores possíveis:<br>*todos* (padrão),<br>*disk* - sono ininterruptível,<br>*run* - executando,<br>*sleep* - sono ininterruptível,<br>*trace* - parado,<br>*zomb* - zumbi<br>**cmdline** - filtrar por linha de comando (é uma expressão regular [expression](/manual/regular_expressions#overview))<br>**zone** - zona alvo: *atual* (padrão), *todos*. Esse parâmetro é suportado somente no Solaris.|Exemplos:<br>=> proc.num\[,mysql\] → número de processos executados pelo usuário mysql<br>=> proc.num\[apache2,www-data\] → número de processos apache2 executados pelo usuário<br>=> proc.num\[,oracle,sleep,oracleZABBIX\] → número de processos em estado de espera executados pelo usuário oracle e que tenham oracleZABBIX na sua linha de comando<br><br>Consulte notas [notes](/manual/appendix/items/proc_mem_num_notes) sobre a seleção de processos com os parâmetros `name` e `cmdline` (específico para Linux).<br><br>No Windows, somente os parâmetros `name` e `user` são suportados.<br><br>Quando este item é invocado a partir da linha de comando e contém um parâmetro de linha de comando (por exemplo, usando o modo de teste do agente: `zabbix_agentd -t proc.num[,,,apache2]`), um processo extra será contado, pois o agente contará a si mesmo.<br><br>*Note* que ao definir o parâmetro `zone` como *atual* (ou padrão) caso o agente tenha sido compilado em um Solaris sem suporte a zona, mas executado em um Solaris mais recente onde zonas são suportadas, o agente retornaráNOTSUPPORTED (o agente não pode limitar os resultados apenas à zona atual). Contudo, *todos* é suportado nesse caso.|

en-us	 ## Processes
pt-br	 ## Processos

en-us	#### Processes modifying their commandline  Some programs use modifying their commandline as a method for displaying their current activity. A user can see the activity by running `ps` and `top` commands. Examples of such programs include *PostgreSQL*, *Sendmail*, *Zabbix*.  Let's see an example from Linux. Let's assume we want to monitor a number of Zabbix agent processes.  `ps` command shows processes of interest as      $ ps -fu zabbix     UID        PID  PPID  C STIME TTY          TIME CMD     ...     zabbix    6318     1  0 12:01 ?        00:00:00 sbin/zabbix_agentd -c /home/zabbix/ZBXNEXT-1078/zabbix_agentd.conf     zabbix    6319  6318  0 12:01 ?        00:00:01 sbin/zabbix_agentd: collector [idle 1 sec]                               zabbix    6320  6318  0 12:01 ?        00:00:00 sbin/zabbix_agentd: listener #1 [waiting for connection]                 zabbix    6321  6318  0 12:01 ?        00:00:00 sbin/zabbix_agentd: listener #2 [waiting for connection]                 zabbix    6322  6318  0 12:01 ?        00:00:00 sbin/zabbix_agentd: listener #3 [waiting for connection]                 zabbix    6323  6318  0 12:01 ?        00:00:00 sbin/zabbix_agentd: active checks #1 [idle 1 sec]                        ...  Selecting processes by name and user does the job:      $ zabbix_get -s localhost -k 'proc.num[zabbix_agentd,zabbix]'     6  Now let's rename `zabbix_agentd` executable to `zabbix_agentd_30` and restart it.  `ps` now shows      $ ps -fu zabbix     UID        PID  PPID  C STIME TTY          TIME CMD     ...     zabbix    6715     1  0 12:53 ?        00:00:00 sbin/zabbix_agentd_30 -c /home/zabbix/ZBXNEXT-1078/zabbix_agentd.conf     zabbix    6716  6715  0 12:53 ?        00:00:00 sbin/zabbix_agentd_30: collector [idle 1 sec]                               zabbix    6717  6715  0 12:53 ?        00:00:00 sbin/zabbix_agentd_30: listener #1 [waiting for connection]                 zabbix    6718  6715  0 12:53 ?        00:00:00 sbin/zabbix_agentd_30: listener #2 [waiting for connection]                 zabbix    6719  6715  0 12:53 ?        00:00:00 sbin/zabbix_agentd_30: listener #3 [waiting for connection]                 zabbix    6720  6715  0 12:53 ?        00:00:00 sbin/zabbix_agentd_30: active checks #1 [idle 1 sec]                        ...  Now selecting processes by name and user produces an incorrect result:      $ zabbix_get -s localhost -k 'proc.num[zabbix_agentd_30,zabbix]'     1  Why a simple renaming of executable to a longer name lead to quite different result ?  Zabbix agent starts with checking the process name. `/proc/<pid>/status` file is opened and the line `Name` is checked. In our case the `Name` lines are:      $ grep Name /proc/{6715,6716,6717,6718,6719,6720}/status     /proc/6715/status:Name:   zabbix_agentd_3     /proc/6716/status:Name:   zabbix_agentd_3     /proc/6717/status:Name:   zabbix_agentd_3     /proc/6718/status:Name:   zabbix_agentd_3     /proc/6719/status:Name:   zabbix_agentd_3     /proc/6720/status:Name:   zabbix_agentd_3  The process name in `status` file is truncated to 15 characters.  A similar result can be seen with `ps` command:      $ ps -u zabbix       PID TTY          TIME CMD     ...      6715 ?        00:00:00 zabbix_agentd_3      6716 ?        00:00:01 zabbix_agentd_3      6717 ?        00:00:00 zabbix_agentd_3      6718 ?        00:00:00 zabbix_agentd_3      6719 ?        00:00:00 zabbix_agentd_3      6720 ?        00:00:00 zabbix_agentd_3      ...  Obviously, that is not equal to our `proc.num[]` `name` parameter value `zabbix_agentd_30`. Having failed to match the process name from `status` file the Zabbix agent turns to `/proc/<pid>/cmdline` file.  How the agent sees the "cmdline" file can be illustrated with running a command      $ for i in 6715 6716 6717 6718 6719 6720; do cat /proc/$i/cmdline | awk '{gsub(/\x0/,"<NUL>"); print};'; done     sbin/zabbix_agentd_30<NUL>-c<NUL>/home/zabbix/ZBXNEXT-1078/zabbix_agentd.conf<NUL>     sbin/zabbix_agentd_30: collector [idle 1 sec]<NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL>...     sbin/zabbix_agentd_30: listener #1 [waiting for connection]<NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL>...     sbin/zabbix_agentd_30: listener #2 [waiting for connection]<NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL>...     sbin/zabbix_agentd_30: listener #3 [waiting for connection]<NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL>...     sbin/zabbix_agentd_30: active checks #1 [idle 1 sec]<NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL>...  `/proc/<pid>/cmdline` files in our case contain invisible, non-printable null bytes, used to terminate strings in *C* language. The null bytes are shown as "<NUL>" in this example.  Zabbix agent checks "cmdline" for the main process and takes a `zabbix_agentd_30`, which matches our `name` parameter value `zabbix_agentd_30`. So, the main process is counted by item `proc.num[zabbix_agentd_30,zabbix]`.  When checking the next process, the agent takes `zabbix_agentd_30: collector [idle 1 sec]` from the `cmdline` file and it does not meet our `name` parameter `zabbix_agentd_30`. So, only the main process which does not modify its commandline, gets counted. Other agent processes modify their command line and are ignored.  This example shows that the `name` parameter cannot be used in `proc.mem[]` and `proc.num[]` for selecting processes in this case.  Using `cmdline` parameter with a proper regular expression produces a correct result:      $ zabbix_get -s localhost -k 'proc.num[,zabbix,,zabbix_agentd_30[ :]]'     6  Be careful when using `proc.mem[]` and `proc.num[]` items for monitoring programs which modify their commandlines.  Before putting `name` and `cmdline` parameters into `proc.mem[]` and `proc.num[]` items, you may want to test the parameters using `proc.num[]` item and `ps` command.
pt-br	#### Processos modificando sua linha de comando  Alguns programas usam a modificação de sua linha de comando como um método para exibir sua atividade atual. Um usuário pode ver a atividade executando `ps` e comandos `top`. Exemplos de tais programas incluem *PostgreSQL*, *Sendmail*, *Zabbix*.  Vamos ver um exemplo do Linux. Vamos supor que queremos monitorar um número de processos do agente Zabbix.  O comando `ps` mostra os processos de interesse como      $ ps -fu zabbix     UID PID PPID C STIME TTY TIME CMD     ...     zabbix 6318 1 0 12:01 ? 00:00:00 sbin/zabbix_agentd -c /home/zabbix/ZBXNEXT-1078/zabbix_agentd.conf     zabbix 6319 6318 0 12:01 ? 00:00:01 sbin/zabbix_agentd: coletor [inativo 1 segundo]     zabbix 6320 6318 0 12:01 ? 00:00:00 sbin/zabbix_agentd: listener #1 [aguardando conexão]     zabbix 6321 6318 0 12:01 ? 00:00:00 sbin/zabbix_agentd: listener #2 [aguardando conexão]     zabbix 6322 6318 0 12:01 ? 00:00:00 sbin/zabbix_agentd: listener #3 [aguardando conexão]     zabbix 6323 6318 0 12:01 ? 00:00:00 sbin/zabbix_agentd: verificações ativas #1 [ocioso 1 segundo]     ...  Selecionar processos por nome e usuário faz o trabalho:      $ zabbix_get -s localhost -k 'proc.num[zabbix_agentd,zabbix]'     6  Agora vamos renomear o executável `zabbix_agentd` para `zabbix_agentd_30` e reinicie-o.  `ps` agora mostra      $ ps -fu zabbix     UID PID PPID C STIME TTY TIME CMD     ...     zabbix 6715 1 0 12:53 ? 00:00:00 sbin/zabbix_agentd_30 -c /home/zabbix/ZBXNEXT-1078/zabbix_agentd.conf     zabbix 6716 6715 0 12:53 ? 00:00:00 sbin/zabbix_agentd_30: coletor [inativo 1 segundo]     zabbix 6717 6715 0 12:53 ? 00:00:00 sbin/zabbix_agentd_30: ouvinte #1 [aguardando conexão]     zabbix 6718 6715 0 12:53 ? 00:00:00 sbin/zabbix_agentd_30: ouvinte #2 [aguardando conexão]     zabbix 6719 6715 0 12:53 ? 00:00:00 sbin/zabbix_agentd_30: ouvinte #3 [aguardando conexão]     zabbix 6720 6715 0 12:53 ? 00:00:00 sbin/zabbix_agentd_30: verificações ativas #1 [ocioso 1 segundo]     ...  Agora, selecionar processos por nome e usuário produz um resultado incorreto:      $ zabbix_get -s localhost -k 'proc.num[zabbix_agentd_30,zabbix]'     1  Por que uma simples renomeação de executável para um nome mais longo leva a resultado diferente?  O agente Zabbix começa verificando o nome do processo. `/proc/<pid>/status` arquivo é aberto e a linha `Name` é marcada. No nosso caso, o `Nome` linhas são:      $ grep Nome /proc/{6715,6716,6717,6718,6719,6720}/status     /proc/6715/status:Nome: zabbix_agentd_3     /proc/6716/status:Nome: zabbix_agentd_3     /proc/6717/status:Nome: zabbix_agentd_3     /proc/6718/status:Nome: zabbix_agentd_3     /proc/6719/status:Nome: zabbix_agentd_3     /proc/6720/status:Nome: zabbix_agentd_3  O nome do processo no arquivo `status` é truncado para 15 caracteres.  Um resultado semelhante pode ser visto com o comando `ps`:      $ ps -u zabbix       PID TTY TIME CMD     ...      6715? 00:00:00 zabbix_agentd_3      6716? 00:00:01 zabbix_agentd_3      6717? 00:00:00 zabbix_agentd_3      6718? 00:00:00 zabbix_agentd_3      6719? 00:00:00 zabbix_agentd_3      6720? 00:00:00 zabbix_agentd_3      ...  Obviamente, isso não é igual ao valor do nosso parâmetro `proc.num[]` `name` `zabbix_agentd_30`. Não ter correspondido ao nome do processo de arquivo `status` o agente Zabbix transforma em arquivo `/proc/<pid>/cmdline`.  Como o agente vê o arquivo "cmdline" pode ser ilustrado executando um comando      $ para i em 6715 6716 6717 6718 6719 6720; do gato /proc/$i/cmdline | awk '{gsub(/\x0/,"<NUL>"); imprimir};'; feito     sbin/zabbix_agentd_30<NUL>-c<NUL>/home/zabbix/ZBXNEXT-1078/zabbix_agentd.conf<NUL>     sbin/zabbix_agentd_30: coletor [inativo 1 seg]<NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL>. ..     sbin/zabbix_agentd_30: ouvinte #1 [aguardando conexão]<NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL>...     sbin/zabbix_agentd_30: ouvinte #2 [aguardando conexão]<NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL>...     sbin/zabbix_agentd_30: ouvinte #3 [aguardando conexão]<NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL>...     sbin/zabbix_agentd_30: verificações ativas #1 [ocioso 1 seg]<NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL><NUL>. ..  Os arquivos `/proc/<pid>/cmdline` em nosso caso contêm arquivos invisíveis, não imprimíveis bytes nulos, usados para encerrar strings na linguagem *C*. Os bytes nulos são mostrados como "<NUL>" neste exemplo.  O agente Zabbix verifica "cmdline" para o processo principal e leva um `zabbix_agentd_30`, que corresponde ao nosso valor de parâmetro `name` `zabbix_agentd_30`. Assim, o processo principal é contado por item `proc.num[zabbix_agentd_30,zabbix]`.  Ao verificar o próximo processo, o agente leva `zabbix_agentd_30: collector [idle 1 sec]` do arquivo `cmdline` e ele não atende ao nosso parâmetro `name` `zabbix_agentd_30`. Então, apenas o processo principal que não modifica sua linha de comando, é contado. De outros os processos do agente modificam sua linha de comando e são ignorados.  Este exemplo mostra que o parâmetro `name` não pode ser usado em `proc.mem[]` e `proc.num[]` para selecionar processos neste caso.  Usar o parâmetro `cmdline` com uma expressão regular adequada produz um resultado correto:      $ zabbix_get -s localhost -k 'proc.num[,zabbix,,zabbix_agentd_30[:]]'     6  Tenha cuidado ao usar os itens `proc.mem[]` e `proc.num[]` para monitoramento programas que modificam suas linhas de comando.  Antes de colocar os parâmetros `name` e `cmdline` em `proc.mem[]` e itens `proc.num[]`, você pode querer testar os parâmetros usando item `proc.num[]` e comando `ps`.

en-us	#### Prometheus query language  Zabbix Prometheus preprocessing [query language](/manual/config/items/itemtypes/prometheus) now supports two additional label matching operators:  -   **!=** -- select labels that are not equal to the provided string; -   **!\~** -- select labels that do not regex-match the provided     string.
pt-br	#### Linguagem de consulta do Prometheus  O pré-processamento do Zabbix Prometheus [query language](/manual/config/items/itemtypes/prometheus) agora suporta dois operadores adicionais de correspondência de rótulos:  -   **!=** -- seleciona rótulos que não são iguais à string fornecida; -   **!\~** -- seleciona rótulos que não correspondem à cadeia de caracteres fornecida     string fornecida.

en-us	##### Prometheus to JSON  In the discovery rule, go to the Preprocessing tab and select the *Prometheus to JSON* preprocessing option. Data in JSON format are needed for discovery and the *Prometheus to JSON* preprocessing option will return exactly that, with the following attributes:  -   metric name -   metric value -   help (if present) -   type (if present) -   labels (if present) -   raw line  For example, querying `wmi_logical_disk_free_bytes`:  ![](../../../../../assets/en/manual/discovery/low_level_discovery/lld_rule_prom_json.png)  from these Prometheus lines:      # HELP wmi_logical_disk_free_bytes Free space in bytes (LogicalDisk.PercentFreeSpace)     # TYPE wmi_logical_disk_free_bytes gauge     wmi_logical_disk_free_bytes{volume="C:"} 3.5180249088e+11     wmi_logical_disk_free_bytes{volume="D:"} 2.627731456e+09     wmi_logical_disk_free_bytes{volume="HarddiskVolume4"} 4.59276288e+08  will return:  ``` {.java} [     {         "name": "wmi_logical_disk_free_bytes",         "help": "Free space in bytes (LogicalDisk.PercentFreeSpace)",         "type": "gauge",         "labels": {             "volume": "C:"          },         "value": "3.5180249088e+11",         "line_raw": "wmi_logical_disk_free_bytes{volume=\"C:\"} 3.5180249088e+11"     },     {         "name": "wmi_logical_disk_free_bytes",         "help": "Free space in bytes (LogicalDisk.PercentFreeSpace)",         "type": "gauge",         "labels": {             "volume": "D:"          },         "value": "2.627731456e+09",         "line_raw": "wmi_logical_disk_free_bytes{volume=\"D:\"} 2.627731456e+09"     },     {         "name": "wmi_logical_disk_free_bytes",         "help": "Free space in bytes (LogicalDisk.PercentFreeSpace)",         "type": "gauge",         "labels": {             "volume": "HarddiskVolume4"          },         "value": "4.59276288e+08",         "line_raw": "wmi_logical_disk_free_bytes{volume=\"HarddiskVolume4\"} 4.59276288e+08"     } ] ```
pt-br	##### Prometheus para JSON  Na regra de descoberta, vá para a guia Pré-processamento e selecione o Opção de pré-processamento *Prometheus to JSON*. Os dados no formato JSON são necessário para descoberta e a opção de pré-processamento *Prometheus to JSON* retornará exatamente isso, com os seguintes atributos:  - nome da métrica - valor métrico - ajuda (se presente) - tipo (se houver) - etiquetas (se houver) - linha crua  Por exemplo, consultando `wmi_logical_disk_free_bytes`:  ![](../../../../../assets/en/manual/discovery/low_level_discovery/lld_rule_prom_json.png)  dessas linhas do Prometheus:      # HELP wmi_logical_disk_free_bytes Espaço livre em bytes (LogicalDisk.PercentFreeSpace)     # TYPE medidor wmi_logical_disk_free_bytes     wmi_logical_disk_free_bytes{volume="C:"} 3.5180249088e+11     wmi_logical_disk_free_bytes{volume="D:"} 2.627731456e+09     wmi_logical_disk_free_bytes{volume="HarddiskVolume4"} 4.59276288e+08  retornará:  ``` {.java} [     {         "name": "wmi_logical_disk_free_bytes",         "help": "Espaço livre em bytes (LogicalDisk.PercentFreeSpace)",         "tipo": "medidor",         "etiquetas": {             "volume": "C:"          },         "valor": "3.5180249088e+11",         "line_raw": "wmi_logical_disk_free_bytes{volume=\"C:\"} 3.5180249088e+11"     },     {         "name": "wmi_logical_disk_free_bytes",         "help": "Espaço livre em bytes (LogicalDisk.PercentFreeSpace)",         "tipo": "medidor",         "etiquetas": {             "volume": "D:"          },         "valor": "2.627731456e+09",         "line_raw": "wmi_logical_disk_free_bytes{volume=\"D:\"} 2.627731456e+09"     },     {         "name": "wmi_logical_disk_free_bytes",         "help": "Espaço livre em bytes (LogicalDisk.PercentFreeSpace)",         "tipo": "medidor",         "etiquetas": {             "volume": "HarddiskVolume4"          },         "valor": "4.59276288e+08",         "line_raw": "wmi_logical_disk_free_bytes{volume=\"HarddiskVolume4\"} 4.59276288e+08"     } ] ```

en-us	#### Property labels  Some of the objects properties are marked with short labels to describe their behavior. The following labels are used:  -   *readonly* - the value of the property is set automatically and     cannot be defined or changed by the client; -   *constant* - the value of the property can be set when creating an     object, but cannot be changed after.
pt-br	#### Rótulos de propriedade  Algumas das propriedades dos objetos são marcadas com rótulos curtos para descrever   Seu comportamento. Os seguintes rótulos são usados:  -   *readonly* - o valor do imóvel é definido automaticamente e     não pode ser definido ou alterado pelo cliente; -   *constant* - o valor da propriedade pode ser definido ao     criar um objeto, mas não pode ser alterado depois.

en-us	| Property                       | [Type](/manual/api/reference_commentary#data_types) | Description                                                                           | |--------------------------------|-----------------------------------------------------|---------------------------------------------------------------------------------------| | **name**<br>(required)         | string                                              | Name of the excluded downtime.                                                        | | **period\_from**<br>(required) | integer                                             | Starting time of the excluded downtime (inclusive).<br><br>Possible values: timestamp. | | **period\_to**<br>(required)   | integer                                             | Ending time of the excluded downtime (exclusive).<br><br>Possible values: timestamp.  |
pt-br	| Propriedade | [Tipo](/manual/api/reference_commentary#data_types) | Descrição                                                                           | |--------------------------------|-----------------------------------------------------|---------------------------------------------------------------------------------------| | **name**<br>(requerido)         | string                                              | Nome do tempo de inatividade excluído.                                                        | | **period\_from**<br>(requerido) | integer                                             | Hora de início do tempo de inatividade excluído (inclusive).<br><br>Valores possíveis: timestamp. | | **period\_to**<br>(requerido)   | integer                                             | Tempo de término do tempo de inatividade excluído (exclusivo).<br><br>Valores possíveis: timestamp.  |

en-us	| Property                       | [Type](/manual/api/reference_commentary#data_types) | Description                                                                                                                         | |--------------------------------|-----------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------| | **period\_from**<br>(required) | integer                                             | Starting time of the recurrent weekly period of time (inclusive).<br><br>Possible values: number of seconds (counting from Sunday). | | **period\_to**<br>(required)   | integer                                             | Ending time of the recurrent weekly period of time (exclusive).<br><br>Possible values: number of seconds (counting from Sunday).   |
pt-br	| Propriedade | [Tipo](/manual/api/reference_commentary#data_types) | Descrição                                                                                                                         | |--------------------------------|-----------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------| | **period\_from**<br>(requerido) | integer                                             | Hora de início do período de tempo semanal recorrente (inclusive).<br><br>Valores possíveis: número de segundos (contando a partir de domingo). | | **period\_to**<br>(requerido)   | integer                                             | Hora de término do período de tempo semanal recorrente (exclusivo).<br><br>Valores possíveis: número de segundos (contando a partir de domingo).   |

en-us	##### Protection against brute force attacks  In case of five consecutive failed login attempts, Zabbix interface will pause for 30 seconds in order to prevent brute force and dictionary attacks.  The IP address of a failed login attempt will be displayed after a successful login.
pt-br	##### Proteção contra ataques de força bruta  No caso de cinco tentativas falhas de autenticação consecutivas, o Zabbix pausará por 30 segundos para prevenir ataques de força bruta e de dicionário.  O endereço IP de uma tentativa de autenticação falha será exibido após uma autenticação bem-sucedida.

en-us	##### - Providing history export callbacks  ::: noteimportant History export via module is no longer supported by Zabbix proxy since Zabbix 4.0.0. :::  Module can specify functions to export history data by type: Numeric (float), Numeric (unsigned), Character, Text and Log:  ``` {.c} typedef struct {     void    (*history_float_cb)(const ZBX_HISTORY_FLOAT *history, int history_num);     void    (*history_integer_cb)(const ZBX_HISTORY_INTEGER *history, int history_num);     void    (*history_string_cb)(const ZBX_HISTORY_STRING *history, int history_num);     void    (*history_text_cb)(const ZBX_HISTORY_TEXT *history, int history_num);     void    (*history_log_cb)(const ZBX_HISTORY_LOG *history, int history_num); } ZBX_HISTORY_WRITE_CBS; ```  Each of them should take "history" array of "history\_num" elements as arguments. Depending on history data type to be exported, "history" is an array of the following structures, respectively:  ``` {.c} typedef struct {     zbx_uint64_t    itemid;     int     clock;     int     ns;     double      value; } ZBX_HISTORY_FLOAT;  typedef struct {     zbx_uint64_t    itemid;     int     clock;     int     ns;     zbx_uint64_t    value; } ZBX_HISTORY_INTEGER;  typedef struct {     zbx_uint64_t    itemid;     int     clock;     int     ns;     const char  *value; } ZBX_HISTORY_STRING;  typedef struct {     zbx_uint64_t    itemid;     int     clock;     int     ns;     const char  *value; } ZBX_HISTORY_TEXT;  typedef struct {     zbx_uint64_t    itemid;     int     clock;     int     ns;     const char  *value;     const char  *source;     int     timestamp;     int     logeventid;     int     severity; } ZBX_HISTORY_LOG; ```  Callbacks will be used by Zabbix server history syncer processes in the end of history sync procedure after data is written into Zabbix database and saved in value cache.
pt-br	##### - Fornecendo retornos de chamada de exportação de histórico  ::: não importante A exportação de histórico via módulo não é mais suportada pelo proxy Zabbix desde o Zabbix 4.0.0. :::  O módulo pode especificar funções para exportar dados de histórico por tipo: Numérico (float), Numérico (sem sinal), Caractere, Texto e Log:  ``` {.c} estrutura typedef {     void (*history_float_cb)(const ZBX_HISTORY_FLOAT *history, int history_num);     void (*history_integer_cb)(const ZBX_HISTORY_INTEGER *history, int history_num);     void (*history_string_cb)(const ZBX_HISTORY_STRING *history, int history_num);     void (*history_text_cb)(const ZBX_HISTORY_TEXT *history, int history_num);     void (*history_log_cb)(const ZBX_HISTORY_LOG *history, int history_num); } ZBX_HISTORY_WRITE_CBS; ```  Cada um deles deve ter o array "history" de elementos "history\_num" como argumentos. Dependendo do tipo de dados do histórico a ser exportado, "histórico" é uma matriz das seguintes estruturas, respectivamente:  ``` {.c} estrutura typedef {     zbx_uint64_t itemid;     relógio interno;     int ns;     valor duplo; } ZBX_HISTORY_FLOAT;  estrutura typedef {     zbx_uint64_t itemid;     relógio interno;     int ns;     valor zbx_uint64_t; } ZBX_HISTORY_INTEGER;  estrutura typedef {     zbx_uint64_t itemid;     relógio interno;     int ns;     const char *valor; } ZBX_HISTORY_STRING;  estrutura typedef {     zbx_uint64_t itemid;     relógio interno;     int ns;     const char *valor; } ZBX_HISTORY_TEXT;  estrutura typedef {     zbx_uint64_t itemid;     relógio interno;     int ns;     const char *valor;     const char *fonte;     int timestamp;     int logeventid;     gravidade int; } ZBX_HISTORY_LOG; ```  Callbacks serão usados ​​pelos processos de sincronização de histórico do servidor Zabbix no fim do procedimento de sincronização do histórico após os dados serem gravados no banco de dados Zabbix e salvo no cache de valor.

en-us	#### Proxies  A listing of existing proxies with their details is displayed.  ![](../../../../../assets/en/manual/web_interface/proxies1.png){width="600"}  Displayed data:  |Column|Description| |------|-----------| |*Name*|Name of the proxy. Clicking on the proxy name opens the proxy [configuration form](/manual/distributed_monitoring/proxies#configuration).| |*Mode*|Proxy mode is displayed - *Active* or *Passive*.| |*Encryption*|Encryption status for connections from the proxy is displayed:<br>**None** - no encryption<br>**PSK** - using pre-shared key<br>**Cert** - using certificate<br>| |*Last seen (age)*|The time when the proxy was last seen by the server is displayed.| |*Host count*|The number of enabled hosts assigned to the proxy is displayed.| |*Item count*|The number of enabled items on enabled hosts assigned to the proxy is displayed.| |*Required performance (vps)*|Required proxy performance is displayed (the number of values that need to be collected per second).| |*Hosts*|All hosts monitored by the proxy are listed. Clicking on the host name opens the host configuration form.|  To configure a new proxy, click on the *Create proxy* button in the top right-hand corner.
pt-br	#### Proxies  Uma lista de proxies existentes com seus detalhes é exibida.  ![](../../../../../assets/en/manual/web_interface/proxies1.png){width="600"}  Dados exibidos:  |Coluna|Descrição| |------|-----------| |*Nome*|Nome do proxy. Clicar no nome do proxy abre o proxy [formulário de configuração](/manual/distributed_monitoring/proxies#configuration).| |*Modo*|Modo proxy é exibido - *Ativo* ou *Passivo*.| |*Criptografia*|O status de criptografia para conexões do proxy é exibido:<br>**Nenhum** - sem criptografia<br>**PSK** - usando chave pré-compartilhada<br>**Cert** - usando certificado<br>| |*Última vista (idade)*|É exibida a hora em que o proxy foi visto pela última vez pelo servidor.| |*Contagem de hosts*|É exibido o número de hosts habilitados atribuídos ao proxy.| |*Contagem de itens*|É exibido o número de itens habilitados em hosts habilitados atribuídos ao proxy.| |*Desempenho necessário (vps)*|O desempenho de proxy necessário é exibido (o número de valores que precisam ser coletados por segundo).| |*Hosts*|Todos os hosts monitorados pelo proxy são listados. Clicar no nome do host abre o formulário de configuração do host.|  Para configurar um novo proxy, clique no botão *Criar proxy* na parte superior canto direito.

en-us	#### Proxies  Manage the proxies used in your distributed monitoring setup.  [Proxy API](/manual/api/reference/proxy)
pt-br	#### Proxies  Gerenciar os proxies utilizados na sua configuração de monitoramento distribuído.  [API de proxy](/manual/api/referência/proxy)

en-us	#### proxy  Changes:\ [ZBXNEXT-6889](https://support.zabbix.com/browse/ZBXNEXT-6889) `proxy.create`, `proxy.update`: dropped support of `interface.interfaceid` and `interface.hostid` properties.\
pt-br	#### proxy  Mudanças:\ [ZBXNEXT-6889](https://support.zabbix.com/browse/ZBXNEXT-6889) `proxy.create`, `proxy.update`: removido suporte as propriedades `interface.interfaceid` e `interface.hostid`.\

en-us	##### Proxy config request  The `proxy config` request is sent by proxy to obtain proxy configuration data. This request is sent every `ConfigFrequency` (proxy configuration parameter) seconds.  |name|<|<|<|value type|description| |----|-|-|-|----------|-----------| |proxy→server:|<|<|<|<|<| |**request**|<|<|<|*string*|'proxy config'| |**host**|<|<|<|*string*|proxy name| |**version**|<|<|<|*string*|the proxy version (<major>.<minor>.<build>)| |server→proxy:|<|<|<|<|<| |**request**|<|<|<|*string*|'proxy config'| |**<table>**|<|<|<|*object*|one or more objects with <table> data| |<|**fields**|<|<|*array*|array of field names| |<|<|\-|<|*string*|field name| |<|**data**|<|<|*array*|array of rows| |<|<|\-|<|*array*|array of columns| |<|<|<|\-|*string*,*number*|column value with type depending on column type in database schema| |proxy→server:|<|<|<|<|<| |**response**|<|<|<|*string*|the request success information ('success' or 'failed')|  Example:  proxy→server:  ``` {.javascript} {   "request": "proxy config",   "host": "Proxy #12",   "version":"5.4.0" } ```  server→proxy:  ``` {.javascript} {     "globalmacro":{         "fields":[             "globalmacroid",             "macro",             "value"         ],         "data":[             [                 2,                 "{$SNMP_COMMUNITY}",                 "public"             ]         ]     },     "hosts":{         "fields":[             "hostid",             "host",             "status",             "ipmi_authtype",             "ipmi_privilege",             "ipmi_username",             "ipmi_password",             "name",             "tls_connect",             "tls_accept",             "tls_issuer",             "tls_subject",             "tls_psk_identity",             "tls_psk"         ],         "data":[             [                 10001,                 "Linux",                 3,                 -1,                 2,                 "",                 "",                 "Linux",                 1,                 1,                 "",                 "",                 "",                 ""             ],             [                 10050,                 "Zabbix Agent",                 3,                 -1,                 2,                 "",                 "",                 "Zabbix Agent",                 1,                 1,                 "",                 "",                 "",                 ""             ],             [                 10105,                 "Logger",                 0,                 -1,                 2,                 "",                 "",                 "Logger",                 1,                 1,                 "",                 "",                 "",                 ""             ]         ]     },     "interface":{         "fields":[             "interfaceid",             "hostid",             "main",             "type",             "useip",             "ip",             "dns",             "port",             "bulk"         ],         "data":[             [                 2,                 10105,                 1,                 1,                 1,                 "127.0.0.1",                 "",                 "10050",                 1             ]         ]     },     ... } ```  proxy→server:  ``` {.javascript} {   "response": "success" } ```
pt-br	##### Solicitação de configuração de proxy  A solicitação `proxy config` é enviada pelo proxy para obter o proxy dados de configuração. Este pedido é enviado a cada `ConfigFrequency` (proxy parâmetro de configuração) segundos.  |nome|<|<|<|tipo de valor|descrição| |----|-|-|-|----------|-----------| |proxy→servidor:|<|<|<|<|<| |**request**|<|<|<|*string*|'proxy config'| |**host**|<|<|<|*string*|nome do proxy| |**versão**|<|<|<|*string*|a versão do proxy (<major>.<minor>.<build>)| |servidor→proxy:|<|<|<|<|<| |**request**|<|<|<|*string*|'proxy config'| |**<tabela>**|<|<|<|*objeto*|um ou mais objetos com <tabela> dados| |<|**campos**|<|<|*array*|array de nomes de campo| |<|<|\-|<|*string*|nome do campo| |<|**dados**|<|<|*array*|array de linhas| |<|<|\-|<|*array*|array de colunas| |<|<|<|\-|*string*,*number*|valor da coluna com tipo dependendo do tipo de coluna no esquema do banco de dados| |proxy→servidor:|<|<|<|<|<| |**resposta**|<|<|<|*string*|as informações de sucesso da solicitação ('sucesso' ou 'falha')|  Exemplo:  proxy→servidor:  ``` {.javascript} {   "request": "configuração de proxy",   "host": "Proxy nº 12",   "versão":"5.4.0" } ```  servidor→proxy:  ``` {.javascript} {     "macro global":{         "Campos":[             "globalmacróide",             "macro",             "valor"         ],         "dados":[             [                 2,                 "{$SNMP_COMMUNITY}",                 "público"             ]         ]     },     "hosts":{         "Campos":[             "host",             "hospedeiro",             "status",             "ipmi_authtype",             "ipmi_privilege",             "ipmi_username",             "ipmi_senha",             "nome",             "tls_connect",             "tls_aceitar",             "tls_issuer",             "tls_assunto",             "tls_psk_identity",             "tls_psk"         ],         "dados":[             [                 10001,                 "Linux",                 3,                 -1,                 2,                 "",                 "",                 "Linux",                 1,                 1,                 "",                 "",                 "",                 ""             ],             [                 10050,                 "Agente Zabbix",                 3,                 -1,                 2,                 "",                 "",                 "Agente Zabbix",                 1,                 1,                 "",                 "",                 "",                 ""             ],             [                 10105,                 "Registrador",                 0,                 -1,                 2,                 "",                 "",                 "Registrador",                 1,                 1,                 "",                 "",                 "",                 ""             ]         ]     },     "interface":{         "Campos":[             "interfaceid",             "host",             "a Principal",             "tipo",             "usei",             "ip",             "dns",             "porta",             "volume"         ],         "dados":[             [                 2,                 10105,                 1,                 1,                 1,                 "127.0.0.1",                 "",                 "10050",                 1             ]         ]     },     ... } ```  proxy→servidor:  ``` {.javascript} {   "resposta": "sucesso" } ```

en-us	##### Proxy config request  The `proxy config` request is sent by server to provide proxy configuration data. This request is sent every `ProxyConfigFrequency` (server configuration parameter) seconds.  |name|<|<|<|value type|description| |----|-|-|-|----------|-----------| |server→proxy:|<|<|<|<|<| |**request**|<|<|<|*string*|'proxy config'| |**<table>**|<|<|<|*object*|one or more objects with <table> data| |<|**fields**|<|<|*array*|array of field names| |<|<|\-|<|*string*|field name| |<|**data**|<|<|*array*|array of rows| |<|<|\-|<|*array*|array of columns| |<|<|<|\-|*string*,*number*|column value with type depending on column type in database schema| |proxy→server:|<|<|<|<|<| |**response**|<|<|<|*string*|the request success information ('success' or 'failed')| |**version**|<|<|<|*string*|the proxy version (<major>.<minor>.<build>)|  Example:  server→proxy:  ``` {.javascript} {     "request": "proxy config",     "globalmacro":{         "fields":[             "globalmacroid",             "macro",             "value"         ],         "data":[             [                 2,                 "{$SNMP_COMMUNITY}",                 "public"             ]         ]     },     "hosts":{         "fields":[             "hostid",             "host",             "status",             "ipmi_authtype",             "ipmi_privilege",             "ipmi_username",             "ipmi_password",             "name",             "tls_connect",             "tls_accept",             "tls_issuer",             "tls_subject",             "tls_psk_identity",             "tls_psk"         ],         "data":[             [                 10001,                 "Linux",                 3,                 -1,                 2,                 "",                 "",                 "Linux",                 1,                 1,                 "",                 "",                 "",                 ""             ],             [                 10050,                 "Zabbix Agent",                 3,                 -1,                 2,                 "",                 "",                 "Zabbix Agent",                 1,                 1,                 "",                 "",                 "",                 ""             ],             [                 10105,                 "Logger",                 0,                 -1,                 2,                 "",                 "",                 "Logger",                 1,                 1,                 "",                 "",                 "",                 ""             ]         ]     },     "interface":{         "fields":[             "interfaceid",             "hostid",             "main",             "type",             "useip",             "ip",             "dns",             "port",             "bulk"         ],         "data":[             [                 2,                 10105,                 1,                 1,                 1,                 "127.0.0.1",                 "",                 "10050",                 1             ]         ]     },     ... } ```  proxy→server:  ``` {.javascript} {   "response": "success",   "version": "5.4.0" } ```
pt-br	##### Solicitação de configuração de proxy  A solicitação `proxy config` é enviada pelo servidor para fornecer proxy dados de configuração. Esta solicitação é enviada a cada `ProxyConfigFrequency` (parâmetro de configuração do servidor) segundos.  |nome|<|<|<|tipo de valor|descrição| |----|-|-|-|----------|-----------| |servidor→proxy:|<|<|<|<|<| |**request**|<|<|<|*string*|'proxy config'| |**<tabela>**|<|<|<|*objeto*|um ou mais objetos com <tabela> dados| |<|**campos**|<|<|*array*|array de nomes de campo| |<|<|\-|<|*string*|nome do campo| |<|**dados**|<|<|*array*|array de linhas| |<|<|\-|<|*array*|array de colunas| |<|<|<|\-|*string*,*number*|valor da coluna com tipo dependendo do tipo de coluna no esquema do banco de dados| |proxy→servidor:|<|<|<|<|<| |**resposta**|<|<|<|*string*|as informações de sucesso da solicitação ('sucesso' ou 'falha')| |**versão**|<|<|<|*string*|a versão do proxy (<major>.<minor>.<build>)|  Exemplo:  servidor→proxy:  ``` {.javascript} {     "request": "configuração de proxy",     "macro global":{         "Campos":[             "globalmacróide",             "macro",             "valor"         ],         "dados":[             [                 2,                 "{$SNMP_COMMUNITY}",                 "público"             ]         ]     },     "hosts":{         "Campos":[             "host",             "hospedeiro",             "status",             "ipmi_authtype",             "ipmi_privilege",             "ipmi_username",             "ipmi_senha",             "nome",             "tls_connect",             "tls_aceitar",             "tls_issuer",             "tls_assunto",             "tls_psk_identity",             "tls_psk"         ],         "dados":[             [                 10001,                 "Linux",                 3,                 -1,                 2,                 "",                 "",                 "Linux",                 1,                 1,                 "",                 "",                 "",                 ""             ],             [                 10050,                 "Agente Zabbix",                 3,                 -1,                 2,                 "",                 "",                 "Agente Zabbix",                 1,                 1,                 "",                 "",                 "",                 ""             ],             [                 10105,                 "Registrador",                 0,                 -1,                 2,                 "",                 "",                 "Registrador",                 1,                 1,                 "",                 "",                 "",                 ""             ]         ]     },     "interface":{         "Campos":[             "interfaceid",             "host",             "a Principal",             "tipo",             "usei",             "ip",             "dns",             "porta",             "volume"         ],         "dados":[             [                 2,                 10105,                 1,                 1,                 1,                 "127.0.0.1",                 "",                 "10050",                 1             ]         ]     },     ... } ```  proxy→servidor:  ``` {.javascript} {   "resposta": "sucesso",   "versão": "5.4.0" } ```

en-us	# proxy.create
pt-br	# proxy.create

en-us	##### Proxy data request  The `proxy data` request is sent by proxy to provide host interface availability, history, discovery and autoregistration data. This request is sent every `DataSenderFrequency` (proxy configuration parameter) seconds. Note that active proxy will still poll Zabbix server every second for remote command tasks (with an empty `proxy data` request).  |name|<|value type|description| |-|----------|----------|----------------------------------------| |proxy→server:|<|<|<| |**request**|<|*string*|'proxy data'| |**host**|<|*string*|Proxy name.| |**session**|<|*string*|Data session token.| |**interface availability**|<|*array*|*(optional)* Array of interface availability data objects.| | |**interfaceid**|*number*|Interface identifier.| |^|**available**|*number*|Interface availability:<br><br>**0**, *INTERFACE\_AVAILABLE\_UNKNOWN* - unknown<br>**1**, *INTERFACE\_AVAILABLE\_TRUE* - available<br>**2**, *INTERFACE\_AVAILABLE\_FALSE* - unavailable| |^|**error**|*string*|Interface error message or empty string.| |**history data**|<|*array*|*(optional)* Array of history data objects.| | |**itemid**|*number*|Item identifier.| |^|**clock**|*number*|Item value timestamp (seconds).| |^|**ns**|*number*|Item value timestamp (nanoseconds).| |^|**value**|*string*|*(optional)* Item value.| |^|**id**|*number*|Value identifier (ascending counter, unique within one data session).| |^|**timestamp**|*number*|*(optional)* Timestamp of log type items.| |^|**source**|*string*|*(optional)* Eventlog item source value.| |^|**severity**|*number*|*(optional)* Eventlog item severity value.| |^|**eventid**|*number*|*(optional)* Eventlog item eventid value.| |^|**state**|*string*|*(optional)* Item state:<br>**0**, *ITEM\_STATE\_NORMAL*<br>**1**, *ITEM\_STATE\_NOTSUPPORTED*| |^|**lastlogsize**|*number*|*(optional)* Last log size of log type items.| |^|**mtime**|*number*|*(optional)* Modification time of log type items.| |**discovery data**|<|*array*|*(optional)* Array of discovery data objects.| | |**clock**|*number*|Discovery data timestamp.| |^|**druleid**|*number*|Discovery rule identifier.| |^|**dcheckid**|*number*|Discovery check identifier or null for discovery rule data.| |^|**type**|*number*|Discovery check type:<br><br>**-1** discovery rule data<br>**0**, *SVC\_SSH* - SSH service check<br>**1**, *SVC\_LDAP* - LDAP service check<br>**2**, *SVC\_SMTP* - SMTP service check<br>**3**, *SVC\_FTP* - FTP service check<br>**4**, *SVC\_HTTP* - HTTP service check<br>**5**, *SVC\_POP* - POP service check<br>**6**, *SVC\_NNTP* - NNTP service check<br>**7**, *SVC\_IMAP* - IMAP service check<br>**8**, *SVC\_TCP* - TCP port availability check<br>**9**, *SVC\_AGENT* - Zabbix agent<br>**10**, *SVC\_SNMPv1* - SNMPv1 agent<br>**11**, *SVC\_SNMPv2* - SNMPv2 agent<br>**12**, *SVC\_ICMPPING* - ICMP ping<br>**13**, *SVC\_SNMPv3* - SNMPv3 agent<br>**14**, *SVC\_HTTPS* - HTTPS service check<br>**15**, *SVC\_TELNET* - Telnet availability check| |^|**ip**|*string*|Host IP address.| |^|**dns**|*string*|Host DNS name.| |^|**port**|*number*|*(optional)* Service port number.| |^|**key\_**|*string*|*(optional)* Item key for discovery check of type **9** *SVC\_AGENT*| |^|**value**|*string*|*(optional)* Value received from the service, can be empty for most services.| |^|**status**|*number*|*(optional)* Service status:<br><br>**0**, *DOBJECT\_STATUS\_UP* - Service UP<br>**1**, *DOBJECT\_STATUS\_DOWN* - Service DOWN| |**autoregistration**|<|*array*|*(optional)* Array of autoregistration data objects.| | |**clock**|*number*|Autoregistration data timestamp.| |^|**host**|*string*|Host name.| |^|**ip**|*string*|*(optional)* Host IP address.| |^|**dns**|*string*|*(optional)* Resolved DNS name from IP address.| |^|**port**|*string*|*(optional)* Host port.| |^|**host\_metadata**|*string*|*(optional)* Host metadata sent by the agent (based on HostMetadata or HostMetadataItem agent configuration parameter).| |**tasks**|<|*array*|*(optional)* Array of tasks.| | |**type**|*number*|Task type:<br><br>**0**, *ZBX\_TM\_TASK\_PROCESS\_REMOTE\_COMMAND\_RESULT* - remote command result| |^|**status**|*number*|Remote-command execution status:<br><br>**0**, *ZBX\_TM\_REMOTE\_COMMAND\_COMPLETED* - remote command completed successfully<br>**1**, *ZBX\_TM\_REMOTE\_COMMAND\_FAILED* - remote command failed| |^|**error**|*string*|*(optional)* Error message.| |^|**parent\_taskid**|*number*|Parent task ID.| |**more**|<|*number*|*(optional)* 1 - there are more history data to send.| |**clock**|<|*number*|*(optional)* Data transfer timestamp (seconds).| |**ns**|<|*number*|*(optional)* Data transfer timestamp (nanoseconds).| |**version**|<|*string*|Proxy version (<major>.<minor>.<build>).| |server→proxy:|<|<|<| |**response**|<|*string*|Request success information ('success' or 'failed').| |**upload**|<|*string*|Upload control for historical data (history, autoregistration, host availability, network discovery).<br><br>Possible values:<br>**enabled** - normal operation<br>**disabled** - server is not accepting data (possibly due to internal cache over limit)| |**tasks**|<|*array*|*(optional)* Array of tasks.| | |**type**|*number*|Task type:<br><br>**1**, *ZBX\_TM\_TASK\_PROCESS\_REMOTE\_COMMAND* - remote command| |^|**clock**|*number*|Task creation time.| |^|**ttl**|*number*|Time in seconds after which the task expires.| |^|**commandtype**|*number*|Remote-command type:<br><br>**0**, *ZBX\_SCRIPT\_TYPE\_CUSTOM\_SCRIPT* - use custom script<br>**1**, *ZBX\_SCRIPT\_TYPE\_IPMI* - use IPMI<br>**2**, *ZBX\_SCRIPT\_TYPE\_SSH* - use SSH<br>**3**, *ZBX\_SCRIPT\_TYPE\_TELNET* - use Telnet<br>**4**, *ZBX\_SCRIPT\_TYPE\_GLOBAL\_SCRIPT* - use global script (currently functionally equivalent to custom script)| |^|**command**|*string*|Remote command to execute.| |^|**execute\_on**|*number*|Execution target for custom scripts:<br><br>**0**, *ZBX\_SCRIPT\_EXECUTE\_ON\_AGENT* - execute script on agent<br>**1**, *ZBX\_SCRIPT\_EXECUTE\_ON\_SERVER* - execute script on server<br>**2**, *ZBX\_SCRIPT\_EXECUTE\_ON\_PROXY* - execute script on proxy| |^|**port**|*number*|*(optional)* Port for Telnet and SSH commands.| |^|**authtype**|*number*|*(optional)* Authentication type for SSH commands.| |^|**username**|*string*|*(optional)* User name for Telnet and SSH commands.| |^|**password**|*string*|*(optional)* Password for Telnet and SSH commands.| |^|**publickey**|*string*|*(optional)* Public key for SSH commands.| |^|**privatekey**|*string*|*(optional)* Private key for SSH commands.| |^|**parent\_taskid**|*number*|Parent task ID.| |^|**hostid**|*number*|Target host ID.|  Example:  proxy→server:  ``` {.javascript} {     "request": "proxy data",     "host": "Proxy #12",      "session": "12345678901234567890123456789012",     "interface availability": [         {             "interfaceid": 1,             "available": 1,             "error": ""     },         {             "interfaceid": 2,             "available": 2,             "error": "Get value from agent failed: cannot connect to [[127.0.0.1]:10049]: [111] Connection refused"     },         {             "interfaceid": 3,             "available": 1,             "error": ""     },         {             "interfaceid": 4,             "available": 1,             "error": ""     }     ],     "history data":[         {             "itemid":"12345",             "clock":1478609647,             "ns":332510044,             "value":"52956612",             "id": 1         },         {             "itemid":"12346",             "clock":1478609647,             "ns":330690279,             "state":1,             "value":"Cannot find information for this network interface in /proc/net/dev.",             "id": 2         }     ],     "discovery data":[         {             "clock":1478608764,             "drule":2,             "dcheck":3,             "type":12,             "ip":"10.3.0.10",             "dns":"vdebian",             "status":1         },         {             "clock":1478608764,             "drule":2,             "dcheck":null,             "type":-1,             "ip":"10.3.0.10",             "dns":"vdebian",             "status":1         }     ],     "auto registration":[         {             "clock":1478608371,             "host":"Logger1",             "ip":"10.3.0.1",             "dns":"localhost",             "port":"10050"         },         {             "clock":1478608381,             "host":"Logger2",             "ip":"10.3.0.2",             "dns":"localhost",             "port":"10050"         }     ],     "tasks":[         {             "type": 2,             "clock":1478608371,             "ttl": 600,             "commandtype": 2,             "command": "restart_service1.sh",             "execute_on": 2,             "port": 80,             "authtype": 0,             "username": "userA",             "password": "password1",             "publickey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe",             "privatekey": "lsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5QCqGKukO1De7zhd",             "parent_taskid": 10,             "hostid": 10070         },         {             "type": 2,             "clock":1478608381,             "ttl": 600,             "commandtype": 1,             "command": "restart_service2.sh",             "execute_on": 0,             "authtype": 0,             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "parent_taskid": 20,             "hostid": 10084         }     ],     "tasks":[         {             "type": 0,             "status": 0,             "parent_taskid": 10         },         {             "type": 0,             "status": 1,             "error": "No permissions to execute task.",             "parent_taskid": 20         }     ],      "version":"5.4.0" } ```  server→proxy:  ``` {.javascript} {   "response": "success",   "upload": "enabled",   "tasks":[       {          "type": 1,          "clock": 1478608371,          "ttl": 600,          "commandtype": 2,          "command": "restart_service1.sh",          "execute_on": 2,          "port": 80,          "authtype": 0,          "username": "userA",          "password": "password1",          "publickey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe",          "privatekey": "lsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5QCqGKukO1De7zhd",          "parent_taskid": 10,          "hostid": 10070       },       {          "type": 1,          "clock": 1478608381,          "ttl": 600,          "commandtype": 1,          "command": "restart_service2.sh",          "execute_on": 0,          "authtype": 0,          "username": "",          "password": "",          "publickey": "",          "privatekey": "",          "parent_taskid": 20,          "hostid": 10084       }   ] } ```
pt-br	##### Solicitação de dados de proxy  A solicitação `proxy data` é enviada pelo proxy para fornecer a interface do host dados de disponibilidade, histórico, descoberta e registro automático. Esse pedido é enviado a cada `DataSenderFrequency` (parâmetro de configuração de proxy) segundos.  |nome|<|tipo de valor|descrição| |----|-|----------|-----------| |proxy→servidor:|<|<|<| |**solicitação**|<|*string*|'dados de proxy'| |**host**|<|*string*|o nome do proxy| |**sessão**|<|*string*|token de sessão de dados| |**disponibilidade de interface**|<|*array*|*(opcional)* array de objetos de dados de disponibilidade de interface| |<|**interfaceid**|*número*|identificador de interface| |<|**disponível**|*número*|Disponibilidade da interface<br><br>**0**, *INTERFACE\_AVAILABLE\_UNKNOWN* - desconhecido<br>**1**, *INTERFACE\_AVAILABLE\ _TRUE* - disponível<br>**2**, *INTERFACE\_AVAILABLE\_FALSE* - indisponível| |<|**error**|*string*|Mensagem de erro de interface ou string vazia| |**dados históricos**|<|*array*|*(opcional)* array de objetos de dados históricos| |<|**itemid**|*número*|identificador do item| |<|**relógio**|*número*|valor do item timestamp (segundos)| |<|**ns**|*número*|valor do item timestamp (nanossegundos)| |<|**valor**|*string*|*(opcional)* valor do item| |<|**id**|*number*|identificador de valor (contador crescente, único dentro de uma sessão de dados)| |<|**timestamp**|*number*|*(opcional)* timestamp de itens do tipo de log| |<|**fonte**|*string*|*(opcional)* valor da fonte do item do log de eventos| |<|**severidade**|*número*|*(opcional)* valor de gravidade do item do log de eventos| |<|**eventid**|*number*|*(opcional)* eventlog item eventid value| |<|**state**|*string*|*(opcional)* estado do item<br>**0**, *ITEM\_STATE\_NORMAL*<br>**1**, *ITEM\_STATE\ _NÃO SUPORTADO*| |<|**lastlogsize**|*number*|*(opcional)* último tamanho de log dos itens do tipo de log| |<|**mtime**|*number*|*(opcional)* modificar a hora dos itens do tipo de log| |**dados de descoberta**|<|*array*|*(opcional)* array de objetos de dados de descoberta| |<|**relógio**|*número*|o carimbo de data/hora dos dados de descoberta| |<|**druleid**|*number*|o identificador da regra de descoberta| |<|**dcheckid**|*number*|o identificador de verificação de descoberta ou nulo para dados da regra de descoberta| |<|**tipo**|*número*|tipo de verificação de descoberta:<br><br>**-1** dados da regra de descoberta<br>**0**, *SVC\_SSH* - serviço SSH check<br>**1**, *SVC\_LDAP* - verificação do serviço LDAP<br>**2**, *SVC\_SMTP* - verificação do serviço SMTP<br>**3**, *SVC\_FTP * - Verificação do serviço FTP<br>**4**, *SVC\_HTTP* - Verificação do serviço HTTP<br>**5**, *SVC\_POP* - Verificação do serviço POP<br>**6**, *SVC\_NNTP* - Verificação do serviço NNTP<br>**7**, *SVC\_IMAP* - Verificação do serviço IMAP<br>**8**, *SVC\_TCP* - Verificação da disponibilidade da porta TCP<br>* *9**, *SVC\_AGENT* - agente Zabbix<br>**10**, *SVC\_SNMPv1* - agente SNMPv1<br>**11**, *SVC\_SNMPv2* - agente SNMPv2<br> **12**, *SVC\_ICMPPING* - ping ICMP<br>**13**, *SVC\_SNMPv3* - agente SNMPv3<br>**14**, *SVC\_HTTPS* - verificação de serviço HTTPS< br>**15**, *SVC\_TELNET* - Verificação de disponibilidade do Telnet| |<|**ip**|*string*|o endereço IP do host| |<|**dns**|*string*|o nome DNS do host| |<|**porta**|*número*|*(opcional)* número da porta de serviço| |<|**key\_**|*string*|*(opcional)* a chave do item para verificação de descoberta do tipo **9** *SVC\_AGENT*| |<|**valor**|*string*|*(opcional)* valor recebido do serviço, pode estar vazio para a maioria dos serviços| |<|**status**|*number*|*(opcional)* status do serviço:<br><br>**0**, *DOBJECT\_STATUS\_UP* - Service UP<br>**1* *, *DOBJECT\_STATUS\_DOWN* - Serviço DOWN| |**registro automático**|<|*array*|*(opcional)* array de objetos de dados de registro automático| |<|**relógio**|*número*|o carimbo de data/hora dos dados de registro automático| |<|**host**|*string*|o nome do host| |<|**ip**|*string*|*(opcional)* o endereço IP do host| |<|**dns**|*string*|*(opcional)* o nome DNS resolvido do endereço IP| |<|**port**|*string*|*(opcional)* a porta do host| |<|**host\_metadata**|*string*|*(opcional)* os metadados do host enviados pelo agente (com base no parâmetro de configuração do agente HostMetadata ou HostMetadataItem)| |**tarefas**|<|*array*|*(opcional)* array de tarefas| |<|**type**|*number*|o tipo de tarefa:<br><br>**0**, *ZBX\_TM\_TASK\_PROCESS\_REMOTE\_COMMAND\_RESULT* - remote command result| |<|**status**|*number*|o status de execução do comando remoto:<br><br>**0**, *ZBX\_TM\_REMOTE\_COMMAND\_COMPLETED* - o comando remoto foi concluído com sucesso<br >**1**, *ZBX\_TM\_REMOTE\_COMMAND\_FAILED* - o comando remoto falhou| |<|**error**|*string*|*(opcional)* a mensagem de erro| |<|**parent\_taskid**|*number*|o ID da tarefa pai| |**mais**|<|*número*|*(opcional)* 1 - há mais dados do histórico para enviar| |**relógio**|<|*número*|*(opcional)* data de transferência de dados (segundos)| |**ns**|<|*number*|*(opcional)* data de transferência de dados (nanossegundos)| |**versão**|<|*string*|a versão do proxy (<major>.<minor>.<build>)| |servidor→proxy:|<|<|<| |**resposta**|<|*string*|as informações de sucesso da solicitação ('sucesso' ou 'falha')| |**tarefas**|<|*array*|*(opcional)* array de tarefas| |<|**tipo**|*número*|tipo de tarefa:<br><br>**1**, *ZBX\_TM\_TASK\_PROCESS\_REMOTE\_COMMAND* - comando remoto| |<|**relógio**|*número*|hora de criação da tarefa| |<|**ttl**|*number*|o tempo em segundos após o qual a tarefa expira| |<|**tipo de comando**|*número*|o comando remoto type:<br><br>**0**, *ZBX\_SCRIPT\_TYPE\_CUSTOM\_SCRIPT* - usar script personalizado<br>**1**, *ZBX\_SCRIPT\_TYPE\_IPMI* - usar IPMI <br>**2**, *ZBX\_SCRIPT\_TYPE\_SSH* - usar SSH<br>**3**, *ZBX\_SCRIPT\_TYPE\_TELNET* - usar Telnet<br>**4** , *ZBX\_SCRIPT\_TYPE\_GLOBAL\_SCRIPT* - usa script global (atualmente funcionalmente equivalente ao script personalizado)| |<|**comando**|*string*|o comando remoto a ser executado| |<|**execute\_on**|*number*|o destino de execução para scripts personalizados:<br><br>**0**, *ZBX\_SCRIPT\_EXECUTE\_ON\_AGENT* - executa script no agente <br>**1**, *ZBX\_SCRIPT\_EXECUTE\_ON\_SERVER* - executa script no servidor<br>**2**, *ZBX\_SCRIPT\_EXECUTE\_ON\_PROXY* - executa script no proxy | |<|**port**|*number*|*(opcional)* a porta para comandos telnet e ssh| |<|**authtype**|*number*|*(opcional)* o tipo de autenticação para comandos ssh| |<|**username**|*string*|*(opcional)* o nome de usuário para comandos telnet e ssh| |<|**senha**|*string*|*(opcional)* a senha para comandos telnet e ssh| |<|**chave pública**|*string*|*(opcional)* a chave pública para comandos ssh| |<|**privatekey**|*string*|*(opcional)* a chave privada para comandos ssh| |<|**parent\_taskid**|*number*|o ID da tarefa pai| |<|**hostid**|*number*|hostid de destino|  Exemplo:  proxy→servidor:  ``` {.javascript} {     "request": "proxy data",     "host": "Proxy #12",      "session": "12345678901234567890123456789012",     "interface availability": [         {             "interfaceid": 1,             "available": 1,             "error": ""     },         {             "interfaceid": 2,             "available": 2,             "error": "Get value from agent failed: cannot connect to [[127.0.0.1]:10049]: [111] Connection refused"     },         {             "interfaceid": 3,             "available": 1,             "error": ""     },         {             "interfaceid": 4,             "available": 1,             "error": ""     }     ],     "history data":[         {             "itemid":"12345",             "clock":1478609647,             "ns":332510044,             "value":"52956612",             "id": 1         },         {             "itemid":"12346",             "clock":1478609647,             "ns":330690279,             "state":1,             "value":"Cannot find information for this network interface in /proc/net/dev.",             "id": 2         }     ],     "discovery data":[         {             "clock":1478608764,             "drule":2,             "dcheck":3,             "type":12,             "ip":"10.3.0.10",             "dns":"vdebian",             "status":1         },         {             "clock":1478608764,             "drule":2,             "dcheck":null,             "type":-1,             "ip":"10.3.0.10",             "dns":"vdebian",             "status":1         }     ],     "auto registration":[         {             "clock":1478608371,             "host":"Logger1",             "ip":"10.3.0.1",             "dns":"localhost",             "port":"10050"         },         {             "clock":1478608381,             "host":"Logger2",             "ip":"10.3.0.2",             "dns":"localhost",             "port":"10050"         }     ],     "tasks":[         {             "type": 2,             "clock":1478608371,             "ttl": 600,             "commandtype": 2,             "command": "restart_service1.sh",             "execute_on": 2,             "port": 80,             "authtype": 0,             "username": "userA",             "password": "password1",             "publickey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe",             "privatekey": "lsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5QCqGKukO1De7zhd",             "parent_taskid": 10,             "hostid": 10070         },         {             "type": 2,             "clock":1478608381,             "ttl": 600,             "commandtype": 1,             "command": "restart_service2.sh",             "execute_on": 0,             "authtype": 0,             "username": "",             "password": "",             "publickey": "",             "privatekey": "",             "parent_taskid": 20,             "hostid": 10084         }     ],     "tasks":[         {             "type": 0,             "status": 0,             "parent_taskid": 10         },         {             "type": 0,             "status": 1,             "error": "No permissions to execute task.",             "parent_taskid": 20         }     ],      "version":"5.4.0" } ```  servidor→proxy:  ``` {.javascript} {   "response": "success",   "upload": "enabled",   "tasks":[       {          "type": 1,          "clock": 1478608371,          "ttl": 600,          "commandtype": 2,          "command": "restart_service1.sh",          "execute_on": 2,          "port": 80,          "authtype": 0,          "username": "userA",          "password": "password1",          "publickey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe",          "privatekey": "lsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5QCqGKukO1De7zhd",          "parent_taskid": 10,          "hostid": 10070       },       {          "type": 1,          "clock": 1478608381,          "ttl": 600,          "commandtype": 1,          "command": "restart_service2.sh",          "execute_on": 0,          "authtype": 0,          "username": "",          "password": "",          "publickey": "",          "privatekey": "",          "parent_taskid": 20,          "hostid": 10084       }   ] } ```

en-us	# proxy.delete
pt-br	# proxy.delete

en-us	# proxy.get
pt-br	# proxy.get

en-us	##### Proxy heartbeat request  The `proxy heartbeat` request is sent by proxy to report that proxy is running. This request is sent every `HeartbeatFrequency` (proxy configuration parameter) seconds.  |name|<|value type|description| |----|-|----------|-----------| |proxy→server:|<|<|<| |**request**|<|*string*|'proxy heartbeat'| |**host**|<|*string*|the proxy name| |**version**|<|*string*|the proxy version (<major>.<minor>.<build>)| |server→proxy:|<|<|<| |**response**|<|*string*|the request success information ('success' or 'failed')|  proxy→server:  ``` {.javascript} {    "request": "proxy heartbeat",    "host": "Proxy #12",    "version": "5.4.0" } ```  server→proxy:  ``` {.javascript} {   "response": "success" } ```
pt-br	##### Solicitação de request de proxy  A solicitação `proxy heartbeat` é enviada pelo proxy para informar que o proxy está executando. Este pedido é enviado a cada `HeartbeatFrequency` (proxy parâmetro de configuração) segundos.  |nome|<|tipo de valor|descrição| |----|-|----------|-----------| |proxy→servidor:|<|<|<| |**request**|<|*string*|'proxy heartbeat'| |**host**|<|*string*|o nome do proxy| |**versão**|<|*string*|a versão do proxy (<major>.<minor>.<build>)| |servidor→proxy:|<|<|<| |**resposta**|<|*string*|as informações de sucesso da solicitação ('sucesso' ou 'falha')|  proxy→servidor:  ``` {.javascript} {    "request": "proxy heartbeat",    "host": "Proxy nº 12",    "versão": "5.4.0" } ```  servidor→proxy:  ``` {.javascript} {   "resposta": "sucesso" } ```

en-us	### Proxy history housekeeping  The limitation on the amount of outdated information deleted from the proxy database per proxy history housekeeping cycle has been removed.  Previously the [housekeeper](/manual/web_interface/frontend_sections/administration/general#housekeeper) deleted only no more than 4 times the [`HousekeepingFrequency`](/manual/appendix/config/zabbix_proxy) hours of outdated information. For example, if `HousekeepingFrequency` was set to "1", no more than 4 hours of outdated information (starting from the oldest entry) was deleted. In cases when a proxy would constantly receive data older than set in [`ProxyOfflineBuffer`](/manual/appendix/config/zabbix_proxy), this could result in excessive data accumulation.  Now this limitation has been removed, providing a more effective proxy history housekeeping solution.
pt-br	### Manutenção de histórico de proxy  A limitação na quantidade de informações desatualizadas excluídas do banco de dados do proxy por ciclo de manutenção do histórico de proxy foi removida. Anteriormente, o [housekeeper](/manual/web_interface/frontend_sections/administration/general#housekeeper) excluía não mais que 4 vezes as horas [`HousekeepingFrequency`](/manual/appendix/config/zabbix_proxy)  de informações desatualizadas. Por exemplo, se  `HousekeepingFrequency` estivesse configurado como "1", não era excluído mais do que 4 horas de infomarções desatualizadas (iniciando a partir da entrada mais antiga). Nos casos em que um proxy constantemente recebesse dados mais antigos do que definido em [`ProxyOfflineBuffer`](/manual/appendix/config/zabbix_proxy), isso poderia resultar em um acúmulo excessivo de dados. Agora essa limitação foi removida, proporcionando uma solução de gerenciamento de proxy mais eficaz.

en-us	### Proxy history housekeeping  The limitation on the amount of outdated information deleted from the proxy database per proxy history housekeeping cycle has been removed.  Previously the [housekeeper](/manual/web_interface/frontend_sections/administration/general#housekeeper) deleted only no more than 4 times the [`HousekeepingFrequency`](/manual/appendix/config/zabbix_proxy) hours of outdated information. For example, if `HousekeepingFrequency` was set to "1", no more than 4 hours of outdated information (starting from the oldest entry) was deleted. In cases when a proxy would constantly receive data older than set in [`ProxyOfflineBuffer`](/manual/appendix/config/zabbix_proxy), this could result in excessive data accumulation.  Now this limitation has been removed, providing a more effective proxy history housekeeping solution.
pt-br	### Manutenção de histórico de proxy  A limitação na quantidade de informações desatualizadas excluídas do banco de dados do proxy por ciclo de manutenção do histórico de proxy foi removida. Anteriormente, o [housekeeper](/manual/web_interface/frontend_sections/administration/general#housekeeper) excluía não mais que 4 vezes as horas [`HousekeepingFrequency`](/manual/appendix/config/zabbix_proxy)  de informações desatualizadas. Por exemplo, se  `HousekeepingFrequency` estivesse configurado como "1", não era excluído mais do que 4 horas de infomarções desatualizadas (iniciando a partir da entrada mais antiga). Nos casos em que um proxy constantemente recebesse dados mais antigos do que definido em [`ProxyOfflineBuffer`](/manual/appendix/config/zabbix_proxy), isso poderia resultar em um acúmulo excessivo de dados. Agora essa limitação foi removida, proporcionando uma solução de gerenciamento de proxy mais eficaz.

en-us	### Proxy installation  Once the required repository is added, you can install Zabbix proxy by running:      # apt install zabbix-proxy-mysql  Substitute 'mysql' in the command with 'pgsql' to use PostgreSQL, or with 'sqlite3' to use SQLite3.  
pt-br	### Instalação Proxy  Assim que o repositório necessário for adicionado, você pode instalar o proxy Zabbix por Executando:      # apt install zabbix-proxy-mysql  Substitua 'mysql' no comando por 'pgsql' para usar PostgreSQL, ou com 'sqlite3' para usar SQLite3.

en-us	### Proxy installation  Once the required repository is added, you can install Zabbix proxy by running:      dnf install zabbix-proxy-mysql zabbix-sql-scripts  Substitute 'mysql' in the commands with 'pgsql' to use PostgreSQL, or with 'sqlite3' to use SQLite3 (proxy only).  The package 'zabbix-sql-scripts' contains database schemas for all supported database management systems for both Zabbix server and Zabbix proxy and will be used for data import.
pt-br	### Instalação do proxy  Uma vez que o repositório requisitado é adicionado, você pode instalar o proxy do Zabbix executando:       dnf install zabbix-proxy-mysql zabbix-sql-scripts  Substitua 'mysql' nos comandos com 'pgsql' para usar PostgreSQL, ou com  'sqlite3' para utilizar SQLite3 (somente proxy).  O pacote 'zabbix-sql-scripts' contém esquemas de banco de dados para todos os sistemas de gerenciamento de bancos de dados suportados, tanto para o servidor Zabbix quanto para o proxy Zabbix, e será utilizado para importação de dados.

en-us	### Proxy interface  The proxy interface object defines the interface used to connect to a passive proxy. It has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |**dns**<br>(required)|string|DNS name to connect to.<br><br>Can be empty if connections are made via IP address.| |**ip**<br>(required)|string|IP address to connect to.<br><br>Can be empty if connections are made via DNS names.| |**port**<br>(required)|string|Port number to connect to.| |**useip**<br>(required)|integer|Whether the connection should be made via IP address.<br><br>Possible values are:<br>0 - connect using DNS name;<br>1 - connect using IP address.|
pt-br	### Interface proxy      O objeto de interface proxy define a interface usada para se conectar a um proxy passivo. Tem as seguintes propriedades.  |Propriedade|[Tipo](/manual/api/reference_commentary#data_types)|Descrição| |--|--|------| |**dns**<br>(requerido)|string|Nome DNS ao qual se conectar.<br><br>Pode estar vazio se as conexões forem feitas via endereço IP.| |**ip**<br>(requerido)|string|Endereço IP ao qual se conectar.<br><br>Pode estar vazio se as conexões forem feitas por meio de nomes DNS.| |**port**<br>(requerido)|string|Número da porta para se conectar.| |**useip**<br>(requerido)|integer|Se a conexão deve ser feita via endereço IP.<br><br>Os valores possíveis são:<br>0 - conectar usando o nome DNS;<br>1 - conectar usando o endereço IP.|

en-us	# > Proxy object  The following objects are directly related to the `proxy` API.
pt-br	# > Objeto proxy  Os objetos a seguir estão diretamente relacionados à API `proxy`.

en-us	##### Proxy request  The `proxy data` request is used to obtain host interface availability, historical, discovery and autoregistration data from proxy. This request is sent every `ProxyDataFrequency` (server configuration parameter) seconds.  |name|<|value type|description| |----|-|----------|-----------| |server→proxy:|<|<|<| |**request**|<|*string*|'proxy data'| |proxy→server:|<|<|<| |**session**|<|*string*|data session token| |**interface availability**|<|*array*|*(optional)* array of interface availability data objects| |<|**interfaceid**|*number*|interface identifier| |<|**available**|*number*|Interface availability<br><br>**0**, *INTERFACE\_AVAILABLE\_UNKNOWN* - unknown<br>**1**, *INTERFACE\_AVAILABLE\_TRUE* - available<br>**2**, *INTERFACE\_AVAILABLE\_FALSE* - unavailable| |<|**error**|*string*|Interface error message or empty string| |**history data**|<|*array*|*(optional)* array of history data objects| |<|**itemid**|*number*|item identifier| |<|**clock**|*number*|item value timestamp (seconds)| |<|**ns**|*number*|item value timestamp (nanoseconds)| |<|**value**|*string*|*(optional)* item value| |<|**id**|*number*|value identifier (ascending counter, unique within one data session)| |<|**timestamp**|*number*|*(optional)* timestamp of log type items| |<|**source**|*string*|*(optional)* eventlog item source value| |<|**severity**|*number*|*(optional)* eventlog item severity value| |<|**eventid**|*number*|*(optional)* eventlog item eventid value| |<|**state**|*string*|*(optional)* item state<br>**0**, *ITEM\_STATE\_NORMAL*<br>**1**, *ITEM\_STATE\_NOTSUPPORTED*| |<|**lastlogsize**|*number*|*(optional)* last log size of log type items| |<|**mtime**|*number*|*(optional)* modify time of log type items| |**discovery data**|<|*array*|*(optional)* array of discovery data objects| |<|**clock**|*number*|the discovery data timestamp| |<|**druleid**|*number*|the discovery rule identifier| |<|**dcheckid**|*number*|the discovery check identifier or null for discovery rule data| |<|**type**|*number*|the discovery check type:<br><br>**-1** discovery rule data<br>**0**, *SVC\_SSH* - SSH service check<br>**1**, *SVC\_LDAP* - LDAP service check<br>**2**, *SVC\_SMTP* - SMTP service check<br>**3**, *SVC\_FTP* - FTP service check<br>**4**, *SVC\_HTTP* - HTTP service check<br>**5**, *SVC\_POP* - POP service check<br>**6**, *SVC\_NNTP* - NNTP service check<br>**7**, *SVC\_IMAP* - IMAP service check<br>**8**, *SVC\_TCP* - TCP port availability check<br>**9**, *SVC\_AGENT* - Zabbix agent<br>**10**, *SVC\_SNMPv1* - SNMPv1 agent<br>**11**, *SVC\_SNMPv2* - SNMPv2 agent<br>**12**, *SVC\_ICMPPING* - ICMP ping<br>**13**, *SVC\_SNMPv3* - SNMPv3 agent<br>**14**, *SVC\_HTTPS* - HTTPS service check<br>**15**, *SVC\_TELNET* - Telnet availability check| |<|**ip**|*string*|the host IP address| |<|**dns**|*string*|the host DNS name| |<|**port**|*number*|*(optional)* service port number| |<|**key\_**|*string*|*(optional)* the item key for discovery check of type **9** *SVC\_AGENT*| |<|**value**|*string*|*(optional)* value received from the service, can be empty for most of services| |<|**status**|*number*|*(optional)* service status:<br><br>**0**, *DOBJECT\_STATUS\_UP* - Service UP<br>**1**, *DOBJECT\_STATUS\_DOWN* - Service DOWN| |**auto registration**|<|*array*|*(optional)* array of autoregistration data objects| |<|**clock**|*number*|the autoregistration data timestamp| |<|**host**|*string*|the host name| |<|**ip**|*string*|*(optional)* the host IP address| |<|**dns**|*string*|*(optional)* the resolved DNS name from IP address| |<|**port**|*string*|*(optional)* the host port| |<|**host\_metadata**|*string*|*(optional)* the host metadata sent by agent (based on HostMetadata or HostMetadataItem agent configuration parameter)| |**tasks**|<|*array*|*(optional)* array of tasks| |<|**type**|*number*|the task type:<br><br>**0**, *ZBX\_TM\_TASK\_PROCESS\_REMOTE\_COMMAND\_RESULT* - remote command result| |<|**status**|*number*|the remote command execution status:<br><br>**0**, *ZBX\_TM\_REMOTE\_COMMAND\_COMPLETED* - the remote command completed successfully<br>**1**, *ZBX\_TM\_REMOTE\_COMMAND\_FAILED* - the remote command failed| |<|**error**|*string*|*(optional)* the error message| |<|**parent\_taskid**|*number*|the parent task id| |**more**|<|*number*|*(optional)* 1 - there are more history data to send| |**clock**|<|*number*|*(optional)* data transfer timestamp (seconds)| |**ns**|<|*number*|*(optional)* data transfer timestamp (nanoseconds)| |**version**|<|*string*|the proxy version (<major>.<minor>.<build>)| |server→proxy:|<|<|<| |**response**|<|*string*|the request success information ('success' or 'failed')| |**tasks**|<|*array*|*(optional)* array of tasks| |<|**type**|*number*|the task type:<br><br>**1**, *ZBX\_TM\_TASK\_PROCESS\_REMOTE\_COMMAND* - remote command| |<|**clock**|*number*|the task creation time| |<|**ttl**|*number*|the time in seconds after which task expires| |<|**commandtype**|*number*|the remote command type:<br><br>**0**, *ZBX\_SCRIPT\_TYPE\_CUSTOM\_SCRIPT* - use custom script<br>**1**, *ZBX\_SCRIPT\_TYPE\_IPMI* - use IPMI<br>**2**, *ZBX\_SCRIPT\_TYPE\_SSH* - use SSH<br>**3**, *ZBX\_SCRIPT\_TYPE\_TELNET* - use Telnet<br>**4**, *ZBX\_SCRIPT\_TYPE\_GLOBAL\_SCRIPT* - use global script (currently functionally equivalent to custom script)| |<|**command**|*string*|the remote command to execute| |<|**execute\_on**|*number*|the execution target for custom scripts:<br><br>**0**, *ZBX\_SCRIPT\_EXECUTE\_ON\_AGENT* - execute script on agent<br>**1**, *ZBX\_SCRIPT\_EXECUTE\_ON\_SERVER* - execute script on server<br>**2**, *ZBX\_SCRIPT\_EXECUTE\_ON\_PROXY* - execute script on proxy| |<|**port**|*number*|*(optional)* the port for telnet and ssh commands| |<|**authtype**|*number*|*(optional)* the authentication type for ssh commands| |<|**username**|*string*|*(optional)* the user name for telnet and ssh commands| |<|**password**|*string*|*(optional)* the password for telnet and ssh commands| |<|**publickey**|*string*|*(optional)* the public key for ssh commands| |<|**privatekey**|*string*|*(optional)* the private key for ssh commands| |<|**parent\_taskid**|*number*|the parent task id| |<|**hostid**|*number*|target hostid|  Example:  server→proxy:  ``` {.javascript} {   "request": "proxy data" } ```  proxy→server:  ``` {.javascript} {     "session": "12345678901234567890123456789012"     "interface availability": [         {             "interfaceid": 1,             "available": 1,             "error": ""     },         {             "interfaceid": 2,             "available": 2,             "error": "Get value from agent failed: cannot connect to [[127.0.0.1]:10049]: [111] Connection refused"     },         {             "interfaceid": 3,             "available": 1,             "error": ""     },         {             "interfaceid": 4,             "available": 1,             "error": ""     }     ],     "history data":[         {             "itemid":"12345",             "clock":1478609647,             "ns":332510044,             "value":"52956612",             "id": 1         },         {             "itemid":"12346",             "clock":1478609647,             "ns":330690279,             "state":1,             "value":"Cannot find information for this network interface in /proc/net/dev.",             "id": 2         }     ],     "discovery data":[         {             "clock":1478608764,             "drule":2,             "dcheck":3,             "type":12,             "ip":"10.3.0.10",             "dns":"vdebian",             "status":1         },         {             "clock":1478608764,             "drule":2,             "dcheck":null,             "type":-1,             "ip":"10.3.0.10",             "dns":"vdebian",             "status":1         }     ],     "auto registration":[         {             "clock":1478608371,             "host":"Logger1",             "ip":"10.3.0.1",             "dns":"localhost",             "port":"10050"         },         {             "clock":1478608381,             "host":"Logger2",             "ip":"10.3.0.2",             "dns":"localhost",             "port":"10050"         }     ],     "tasks":[         {             "type": 0,             "status": 0,             "parent_taskid": 10         },         {             "type": 0,             "status": 1,             "error": "No permissions to execute task.",             "parent_taskid": 20         }     ],         "version":"5.4.0" } ```  server→proxy:  ``` {.javascript} {   "response": "success",   "tasks":[       {          "type": 1,          "clock": 1478608371,          "ttl": 600,          "commandtype": 2,          "command": "restart_service1.sh",          "execute_on": 2,          "port": 80,          "authtype": 0,          "username": "userA",          "password": "password1",          "publickey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe",          "privatekey": "lsuusFncCzWBQ7RKNUSesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5QCqGKukO1De7zhd",          "parent_taskid": 10,          "hostid": 10070       },       {          "type": 1,          "clock": 1478608381,          "ttl": 600,          "commandtype": 1,          "command": "restart_service2.sh",          "execute_on": 0,          "authtype": 0,          "username": "",          "password": "",          "publickey": "",          "privatekey": "",          "parent_taskid": 20,          "hostid": 10084       }   ] } ```
pt-br	##### Solicitação de proxy  A solicitação `proxy data` é usada para obter a disponibilidade da interface do host, dados históricos, de descoberta e registro automático do proxy. Esse pedido é enviado a cada `ProxyDataFrequency` (parâmetro de configuração do servidor) segundos.  |nome|<|tipo de valor|descrição| |----|-|----------|-----------| |servidor→proxy:|<|<|<| |**solicitação**|<|*string*|'dados de proxy'| |proxy→servidor:|<|<|<| |**sessão**|<|*string*|token de sessão de dados| |**disponibilidade de interface**|<|*array*|*(opcional)* array de objetos de dados de disponibilidade de interface| |<|**interfaceid**|*número*|identificador de interface| |<|**disponível**|*número*|Disponibilidade da interface<br><br>**0**, *INTERFACE\_AVAILABLE\_UNKNOWN* - desconhecido<br>**1**, *INTERFACE\_AVAILABLE\ _TRUE* - disponível<br>**2**, *INTERFACE\_AVAILABLE\_FALSE* - indisponível| |<|**error**|*string*|Mensagem de erro de interface ou string vazia| |**dados históricos**|<|*array*|*(opcional)* array de objetos de dados históricos| |<|**itemid**|*número*|identificador do item| |<|**relógio**|*número*|valor do item timestamp (segundos)| |<|**ns**|*número*|valor do item timestamp (nanossegundos)| |<|**valor**|*string*|*(opcional)* valor do item| |<|**id**|*number*|identificador de valor (contador crescente, único dentro de uma sessão de dados)| |<|**timestamp**|*number*|*(opcional)* timestamp de itens do tipo de log| |<|**fonte**|*string*|*(opcional)* valor da fonte do item do log de eventos| |<|**severidade**|*número*|*(opcional)* valor de gravidade do item do log de eventos| |<|**eventid**|*number*|*(opcional)* eventlog item eventid value| |<|**state**|*string*|*(opcional)* estado do item<br>**0**, *ITEM\_STATE\_NORMAL*<br>**1**, *ITEM\_STATE\ _NÃO SUPORTADO*| |<|**lastlogsize**|*number*|*(opcional)* último tamanho de log dos itens do tipo de log| |<|**mtime**|*number*|*(opcional)* modificar a hora dos itens do tipo de log| |**dados de descoberta**|<|*array*|*(opcional)* array de objetos de dados de descoberta| |<|**relógio**|*número*|o carimbo de data/hora dos dados de descoberta| |<|**druleid**|*number*|o identificador da regra de descoberta| |<|**dcheckid**|*number*|o identificador de verificação de descoberta ou nulo para dados da regra de descoberta| |<|**tipo**|*número*|tipo de verificação de descoberta:<br><br>**-1** dados da regra de descoberta<br>**0**, *SVC\_SSH* - serviço SSH check<br>**1**, *SVC\_LDAP* - verificação do serviço LDAP<br>**2**, *SVC\_SMTP* - verificação do serviço SMTP<br>**3**, *SVC\_FTP * - Verificação do serviço FTP<br>**4**, *SVC\_HTTP* - Verificação do serviço HTTP<br>**5**, *SVC\_POP* - Verificação do serviço POP<br>**6**, *SVC\_NNTP* - Verificação do serviço NNTP<br>**7**, *SVC\_IMAP* - Verificação do serviço IMAP<br>**8**, *SVC\_TCP* - Verificação da disponibilidade da porta TCP<br>* *9**, *SVC\_AGENT* - agente Zabbix<br>**10**, *SVC\_SNMPv1* - agente SNMPv1<br>**11**, *SVC\_SNMPv2* - agente SNMPv2<br> **12**, *SVC\_ICMPPING* - ping ICMP<br>**13**, *SVC\_SNMPv3* - agente SNMPv3<br>**14**, *SVC\_HTTPS* - verificação de serviço HTTPS< br>**15**, *SVC\_TELNET* - Verificação de disponibilidade do Telnet| |<|**ip**|*string*|o endereço IP do host| |<|**dns**|*string*|o nome DNS do host| |<|**porta**|*número*|*(opcional)* número da porta de serviço| |<|**key\_**|*string*|*(opcional)* a chave do item para verificação de descoberta do tipo **9** *SVC\_AGENT*| |<|**valor**|*string*|*(opcional)* valor recebido do serviço, pode estar vazio para a maioria dos serviços| |<|**status**|*number*|*(opcional)* status do serviço:<br><br>**0**, *DOBJECT\_STATUS\_UP* - Service UP<br>**1* *, *DOBJECT\_STATUS\_DOWN* - Serviço DOWN| |**registro automático**|<|*array*|*(opcional)* array de objetos de dados de registro automático| |<|**relógio**|*número*|o carimbo de data/hora dos dados de registro automático| |<|**host**|*string*|o nome do host| |<|**ip**|*string*|*(opcional)* o endereço IP do host| |<|**dns**|*string*|*(opcional)* o nome DNS resolvido do endereço IP| |<|**port**|*string*|*(opcional)* a porta do host| |<|**host\_metadata**|*string*|*(opcional)* os metadados do host enviados pelo agente (com base no parâmetro de configuração do agente HostMetadata ou HostMetadataItem)| |**tarefas**|<|*array*|*(opcional)* array de tarefas| |<|**type**|*number*|o tipo de tarefa:<br><br>**0**, *ZBX\_TM\_TASK\_PROCESS\_REMOTE\_COMMAND\_RESULT* - remote command result| |<|**status**|*number*|status de execução do comando remoto:<br><br>**0**, *ZBX\_TM\_REMOTE\_COMMAND\_COMPLETED* - o comando remoto foi concluído com sucesso<br >**1**, *ZBX\_TM\_REMOTE\_COMMAND\_FAILED* - o comando remoto falhou| |<|**error**|*string*|*(opcional)* a mensagem de erro| |<|**parent\_taskid**|*number*|o ID da tarefa pai| |**mais**|<|*número*|*(opcional)* 1 - há mais dados do histórico para enviar| |**relógio**|<|*número*|*(opcional)* data de transferência de dados (segundos)| |**ns**|<|*number*|*(opcional)* data de transferência de dados (nanossegundos)| |**versão**|<|*string*|a versão do proxy (<major>.<minor>.<build>)| |servidor→proxy:|<|<|<| |**resposta**|<|*string*|as informações de sucesso da solicitação ('sucesso' ou 'falha')| |**tarefas**|<|*array*|*(opcional)* array de tarefas| |<|**tipo**|*número*|tipo de tarefa:<br><br>**1**, *ZBX\_TM\_TASK\_PROCESS\_REMOTE\_COMMAND* - comando remoto| |<|**relógio**|*número*|hora de criação da tarefa| |<|**ttl**|*number*|o tempo em segundos após o qual a tarefa expira| |<|**commandtype**|*number*|o tipo de comando remoto:<br><br>**0** , *ZBX\_SCRIPT\_TYPE\_CUSTOM\_SCRIPT* - use script personalizado<br>**1**, *ZBX\_SCRIPT\_TYPE\_IPMI* - use IPMI<br>**2**, *ZBX\_SCRIPT \_TYPE\_SSH* - use SSH<br>**3**, *ZBX\_SCRIPT\_TYPE\_TELNET* - use Telnet<br>**4**, *ZBX\_SCRIPT\_TYPE\_GLOBAL\_SCRIPT* - use script global (atualmente funcionalmente equivalente ao script personalizado)| |<|**comando**|*string*|o comando remoto a ser executado| |<|**execute\_on**|*number*|o destino de execução para scripts personalizados:<br><br>**0**, *ZBX\_SCRIPT\_EXECUTE\_ON\_AGENT* - executa script no agente <br>**1**, *ZBX\_SCRIPT\_EXECUTE\_ON\_SERVER* - executa script no servidor<br>**2**, *ZBX\_SCRIPT\_EXECUTE\_ON\_PROXY* - executa script no proxy | |<|**port**|*number*|*(opcional)* a porta para comandos telnet e ssh| |<|**authtype**|*number*|*(opcional)* o tipo de autenticação para comandos ssh| |<|**username**|*string*|*(opcional)* o nome de usuário para comandos telnet e ssh| |<|**senha**|*string*|*(opcional)* a senha para comandos telnet e ssh| |<|**chave pública**|*string*|*(opcional)* a chave pública para comandos ssh| |<|**privatekey**|*string*|*(opcional)* a chave privada para comandos ssh| |<|**parent\_taskid**|*number*|o ID da tarefa pai| |<|**hostid**|*number*|hostid de destino|  Exemplo:  servidor→proxy:  ``` {.javascript} {   "request": "dados proxy" } ```  proxy→servidor:  ``` {.javascript} {     "sessão": "12345678901234567890123456789012"     "disponibilidade de interface": [         {             "interfaceid": 1,             "disponível": 1,             "erro": ""     },         {             "interfaceid": 2,             "disponível": 2,             "error": "Falha ao obter valor do agente: não é possível conectar a [[127.0.0.1]:10049]: [111] Conexão recusada"     },         {             "interfaceid": 3,             "disponível": 1,             "erro": ""     },         {             "interfaceid": 4,             "disponível": 1,             "erro": ""     }     ],     "dados do histórico":[         {             "itemid":"12345",             "relógio":1478609647,             "ns":332510044,             "valor":"52956612",             "id": 1         },         {             "itemid":"12346",             "relógio":1478609647,             "ns":330690279,             "estado":1,             "value":"Não foi possível encontrar informações para esta interface de rede em /proc/net/dev.",             "id": 2         }     ],     "dados de descoberta":[         {             "relógio": 1478608764,             "drule": 2,             "dcheck":3,             "tipo":12,             "ip":"10.3.0.10",             "dns":"vdebian",             "estado":1         },         {             "relógio": 1478608764,             "drule": 2,             "dcheck":null,             "tipo 1,             "ip":"10.3.0.10",             "dns":"vdebian",             "estado":1         }     ],     "registro automático":[         {             "relógio":1478608371,             "host":"Registrador1",             "ip":"10.3.0.1",             "dns":"localhost",             "porta":"10050"         },         {             "relógio":1478608381,             "host":"Logger2",             "ip":"10.3.0.2",             "dns":"localhost",             "porta":"10050"         }     ],     "tarefas":[         {             "tipo": 0,             "estado": 0,             "parent_taskid": 10         },         {             "tipo": 0,             "estado": 1,             "error": "Nenhuma permissão para executar a tarefa.",             "parent_taskid": 20         }     ],     "versão":"5.4.0" } ```  servidor→proxy:  ``` {.javascript} {   "resposta": "sucesso",   "tarefas":[       {          "tipo 1,          "relógio": 1478608371,          "ttl": 600,          "commandtype": 2,          "command": "restart_service1.sh",          "execute_on": 2,          "porta": 80,          "authtype": 0,          "username": "userA",          "senha": "senha1",          "publickey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCqGKukO1De7zhZj6+H0qtjTkVxwTCpvKe",          "privatekey": "lsuusFncCzWBQ7RKNUsesmQRMSGkVb1/3j+skZ6UtW+5u09lHNsj6tQ5QCqGKukO1De7zhd",          "parent_taskid": 10,          "hostid": 10070       },       {          "tipo 1,          "relógio": 1478608381,          "ttl": 600,          "commandtype": 1,          "command": "restart_service2.sh",          "execute_on": 0,          "authtype": 0,          "nome do usuário": "",          "senha": "",          "chave pública": "",          "chave privada": "",          "parent_taskid": 20,          "hostid": 10084       }   ] } ```

en-us	#### Proxy startup with MySQL 8.0.0-8.0.17  zabbix\_proxy on MySQL versions 8.0.0-8.0.17 fails with the following "access denied" error:      [Z3001] connection to database 'zabbix' failed: [1227] Access denied; you need (at least one of) the SUPER, SYSTEM_VARIABLES_ADMIN or SESSION_VARIABLES_ADMIN privilege(s) for this operation  That is due to MySQL 8.0.0 starting to enforce special permissions for setting session variables. However, in 8.0.18 this behavior was removed: [As of MySQL 8.0.18, setting the session value of this system variable is no longer a restricted operation.](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html)  The workaround is based on granting additional privileges to the `zabbix` user:  For MySQL versions 8.0.14 - 8.0.17:      grant SESSION_VARIABLES_ADMIN on *.* to 'zabbix'@'localhost';  For MySQL versions 8.0.0 - 8.0.13:      grant SYSTEM_VARIABLES_ADMIN on *.* to 'zabbix'@'localhost';
pt-br	#### Inicialização do Proxy com MySQL 8.0.0-8.0.17  O zabbix\_proxy em versões do MySQL 8.0.0-8.0.17 falha com o seguinte erro de "acesso negado":      [Z3001] connection to database 'zabbix' failed: [1227] Access denied; you need (at least one of) the SUPER, SYSTEM_VARIABLES_ADMIN or SESSION_VARIABLES_ADMIN privilege(s) for this operation  Isso ocorre devido ao MySQL 8.0.0 começar a aplicar permissões especiais para definir variáveis de sessão. No entanto, na versão 8.0.18 o comportamento foi removido: [A partir do MySQL 8.0.18, definir o valor desta variável do sistema não é mais uma operação restrita.](https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html)  A solução alternativa é baseada na concessão de privilégios adicionais ao usuário `zabbix` :  Para versões do MySQL 8.0.14 - 8.0.17:      grant SESSION_VARIABLES_ADMIN on *.* to 'zabbix'@'localhost';  Para versões do MySQL 8.0.0 - 8.0.13:      grant SYSTEM_VARIABLES_ADMIN on *.* to 'zabbix'@'localhost';

en-us	### Proxy  The proxy object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |proxyid|string|*(readonly)* ID of the proxy.| |**host**<br>(required)|string|Name of the proxy.| |**status**<br>(required)|integer|Type of proxy.<br><br>Possible values:<br>5 - active proxy;<br>6 - passive proxy.| |description|text|Description of the proxy.| |lastaccess|timestamp|*(readonly)* Time when the proxy last connected to the server.| |tls\_connect|integer|Connections to host.<br><br>Possible values are:<br>1 - *(default)* No encryption;<br>2 - PSK;<br>4 - certificate.| |tls\_accept|integer|Connections from host.<br><br>Possible bitmap values are:<br>1 - *(default)* No encryption;<br>2 - PSK;<br>4 - certificate.| |tls\_issuer|string|Certificate issuer.| |tls\_subject|string|Certificate subject.| |tls\_psk\_identity|string|*(write-only)* PSK identity. Required if either `tls_connect` or `tls_accept` has PSK enabled.<br>Do not put sensitive information in the PSK identity, it is transmitted unencrypted over the network to inform a receiver which PSK to use.| |tls\_psk|string|*(write-only)* The preshared key, at least 32 hex digits. Required if either `tls_connect` or `tls_accept` has PSK enabled.| |proxy\_address|string|Comma-delimited IP addresses or DNS names of active Zabbix proxy.| |auto\_compress|integer|*(readonly)* Indicates if communication between Zabbix server and proxy is compressed.<br><br>Possible values are:<br>0 - No compression;<br>1 - Compression enabled;|
pt-br	### Proxy  O objeto proxy tem as seguintes propriedades.  |Propriedade|[Tipo](/manual/api/reference_commentary#data_types)|Descrição| |--|--|------| |proxyid|string|*(somente leitura)* ID do proxy.| |**host**<br>(requerido)|string|Nome do proxy.| |**status**<br>(requerido)|integer|Tipo de proxy.<br><br>Valores possíveis:<br>5 - proxy ativo;<br>6 - proxy passivo.| |description|text|Descrição do proxy.| |lastaccess|timestamp|*(somente leitura)* Hora em que o proxy se conectou pela última vez ao servidor.| |tls\_connect|integer|Conexões ao host.<br><br>Os valores possíveis são:<br>1 - *(padrão)* Sem criptografia;<br>2 - PSK;<br>4 - certificado.| |tls\_accept|integer|Connections from host.<br><br>Os valores de bitmap possíveis são:<br>1 - *(padrão)* Sem criptografia;<br>2 - PSK;<br>4 - certificado.| |tls\_issuer|string|Emissor do certificado.| |tls\_subject|string|Assunto do certificado.| |tls\_psk\_identity|string|*(somente escrita)* identidade PSK. Obrigatório se `tls_connect` ou `tls_accept` tiver o PSK ativado.<br>Não coloque informações confidenciais na identidade do PSK, elas são transmitidas sem criptografia pela rede para informar ao receptor qual PSK usar.| |tls\_psk|string|*(somente escrita)* A chave pré-compartilhada, com pelo menos 32 dígitos hexadecimais. Obrigatório se `tls_connect` ou `tls_accept` tiver o PSK ativado.| |proxy\_address|string|Endereços IP delimitados por vírgulas ou nomes DNS do proxy Zabbix ativo.| |auto\_compress|integer|*(somente leitura)* Indica se a comunicação entre o Zabbix Server e o proxy está compactada.<br><br>Os valores possíveis são:<br>0 - Sem compactação;<br>1 - Compressão ativada;|

en-us	# Proxy  This class is designed to work with proxies.  Object references:\  -   [Proxy](/manual/api/reference/proxy/object#proxy) -   [Proxy     interface](/manual/api/reference/proxy/object#proxy_interface)  Available methods:\  -   [proxy.create](/manual/api/reference/proxy/create) - create new     proxies -   [proxy.delete](/manual/api/reference/proxy/delete) - delete proxies -   [proxy.get](/manual/api/reference/proxy/get) - retrieve proxies -   [proxy.update](/manual/api/reference/proxy/update) - update proxies
pt-br	# Proxy  Esta classe foi projetada para trabalhar com proxies.      Referências de objetos:\  -   [Proxy](/manual/api/reference/proxy/object#proxy) -   [Proxy interface](/manual/api/reference/proxy/object#proxy_interface)  Métodos disponíveis:\  -   [proxy.create](/manual/api/reference/proxy/create) - criar novos proxies -   [proxy.delete](/manual/api/reference/proxy/delete) - excluir proxies -   [proxy.get](/manual/api/reference/proxy/get) - recuperar proxies -   [proxy.update](/manual/api/reference/proxy/update) - atualizar proxies

en-us	# proxy.update
pt-br	# proxy.update

en-us	##### Proxy  [Zabbix proxy](/manual/concepts/proxy) can collect performance and availability data on behalf of Zabbix server. A proxy is an optional part of Zabbix deployment; however, it may be very beneficial to distribute the load of a single Zabbix server.
pt-br	##### Proxy  O [Zabbix proxy](/manual/concepts/proxy) pode coletar dados de performance e disponibilidade em nome do Zabbix Server. Um proxy é uma parte opcional da implementação do Zabbix; no entanto, ele pode ser de grande benefício para distribuir a carga de um único Zabbix Server.

en-us	#### Public and private maps  All users in Zabbix (including non-admin users) can create network maps. Maps have an owner - the user who created them. Maps can be made public or private.  -   *Public* maps are visible to all users, although to see it the user     must have read access to at least one map element. Public maps can     be edited in case a user/ user group has read-write permissions for     this map and at least read permissions to all elements of the     corresponding map including triggers in the links.  ```{=html} <!-- --> ``` -   *Private* maps are visible only to their owner and the users/user     groups the map is [shared](/manual/config/visualization/maps/map)     with by the owner. Regular (non-Super admin) users can only share     with the groups and users they are members of. Admin level users can     see private maps regardless of being the owner or belonging to the     shared user list. Private maps can be edited by the owner of the map     and in case a user/ user group has read-write permissions for this     map and at least read permissions to all elements of the     corresponding map including triggers in the links.  Map elements that the user does not have read permission to are displayed with a grayed-out icon and all textual information on the element is hidden. However, the trigger label is visible even if the user has no permission to the trigger.  To add an element to the map the user must also have at least read permission to it.
pt-br	#### Mapas públicos e privados  Todos os usuários do Zabbix (incluindo usuários não administradores) podem criar mapas de rede. Os mapas têm um proprietário - o usuário que os criou. Os mapas podem ser tornados públicos ou privado.  - Mapas *Públicos* são visíveis para todos os usuários, embora para vê-los o usuário     deve ter acesso de leitura a pelo menos um elemento do mapa. Os mapas públicos podem     ser editado caso um usuário/grupo de usuários tenha permissões de leitura/gravação para     este mapa e pelo menos permissões de leitura para todos os elementos do     mapa correspondente incluindo gatilhos nos links.  ```{=html} <!-- --> ``` - Mapas *Privados* são visíveis apenas para seus proprietários e usuários/usuários     agrupa o mapa é [compartilhado](/manual/config/visualization/maps/map)     com pelo proprietário. Usuários comuns (não superadministradores) só podem compartilhar     com os grupos e usuários dos quais são membros. Os usuários de nível de administrador podem     ver mapas privados independentemente de ser o proprietário ou pertencer ao     lista de usuários compartilhada. Mapas privados podem ser editados pelo proprietário do mapa     e caso um usuário/grupo de usuários tenha permissões de leitura/gravação para este     mapear e pelo menos ler permissões para todos os elementos do     mapa correspondente incluindo gatilhos nos links.  Os elementos do mapa para os quais o usuário não tem permissão de leitura são exibido com um ícone acinzentado e todas as informações textuais no elemento está oculto. No entanto, o rótulo do acionador é visível mesmo se o usuário não tem permissão para o gatilho.  Para adicionar um elemento ao mapa o usuário também deve ter pelo menos lido permissão para isso.

en-us	### Query separate tablespaces in Oracle databases with Zabbix agent 2  The following [Zabbix agent 2 items](/manual/config/items/itemtypes/zabbix_agent/zabbix_agent2), supported for the Oracle plugin, now have additional optional parameters:  -   oracle.diskgroups.stats\[<existingParameters>,**<diskgroup>**\] -   oracle.archive.info\[<existingParameters>,**<destination>**\] -   oracle.cdb.info\[<existingParameters>,**<database>**\] -   oracle.pdb.info\[<existingParameters>,**<database>**\] -   oracle.ts.stats\[<existingParameters>,**<tablespace>**,**<type>**\]  These parameters allow to query separate instances of data instead of all data, thus improving performance.
pt-br	### Consultar tablespaces separados em bancos de dados Oracle com agente Zabbix  2  O [Zabbix agent 2 items](/manual/config/items/itemtypes/zabbix_agent/zabbix_agent2) suportados pelo plugin Oracle, agora tem os parâmetros opcionais abaixo:  -   oracle.diskgroups.stats\[<existingParameters>,**<diskgroup>**\] -   oracle.archive.info\[<existingParameters>,**<destination>**\] -   oracle.cdb.info\[<existingParameters>,**<database>**\] -   oracle.pdb.info\[<existingParameters>,**<database>**\] -   oracle.ts.stats\[<existingParameters>,**<tablespace>**,**<type>**\]  Esses parâmetros permitem consultar instâncias separadas de dados em vez de todos os dados, assim melhorando o desempenho.

en-us	### Query separate tablespaces in Oracle databases with Zabbix agent 2  The following [Zabbix agent 2 items](/manual/config/items/itemtypes/zabbix_agent/zabbix_agent2), supported for the Oracle plugin, now have additional optional parameters:  -   oracle.diskgroups.stats\[<existingParameters>,**<diskgroup>**\] -   oracle.archive.info\[<existingParameters>,**<destination>**\] -   oracle.cdb.info\[<existingParameters>,**<database>**\] -   oracle.pdb.info\[<existingParameters>,**<database>**\] -   oracle.ts.stats\[<existingParameters>,**<tablespace>**,**<type>**\]  These parameters allow to query separate instances of data instead of all data, thus improving performance.
pt-br	### Consultar tablespaces separadas em bancos de dados Oracle com Zabbix agent 2  O seguinte [Zabbix agent 2 items](/manual/config/items/itemtypes/zabbix_agent/zabbix_agent2), suportados para o plugin do Oracle, agora possuem parâmetros opcionais adicionais:   -   oracle.diskgroups.stats\[<existingParameters>,**<diskgroup>**\] -   oracle.archive.info\[<existingParameters>,**<destination>**\] -   oracle.cdb.info\[<existingParameters>,**<database>**\] -   oracle.pdb.info\[<existingParameters>,**<database>**\] -   oracle.ts.stats\[<existingParameters>,**<tablespace>**,**<type>**\]  Esses parâmetros permitem consultar instanciadas separadas de dados específicos, ao invés de todos os dados, melhorando assim o desempenho.

en-us	#### Queue item  A special internal item **zabbix\[queue,<from>,<to>\]** can be used to monitor the health of the queue in Zabbix. It will return the number of items delayed by the set amount of time. For more information see [Internal items](/manual/config/items/itemtypes/internal).
pt-br	#### Item da fila  Existe um item especial de uso interno ao Zabbix que responde pela chave **zabbix\[queue,<from>,<to>\]** e pode ser utilizado para monitorar a saúde da fila do Zabbix. Ele irá retornar a quantidade de itens em atraso em um determinado tempo. Para maiores detalhes favor consultar o manual de [itens internos](/pt/manual/config/items/itemtypes/internal).

en-us	#### Reading host availability  Host availability icons reflect the current host interface status on Zabbix server. Therefore, in the frontend:  -   If you disable a host, availability icons will not immediately turn     gray (unknown status), because the server has to synchronize the     configuration changes first; -   If you enable a host, availability icons will not immediately turn     green (available), because the server has to synchronize the     configuration changes and start polling the host first.
pt-br	#### Lendo a disponibilidade do host  Os ícones de disponibilidade do host refletem o status atual da interface do host em Servidor Zabbix. Portanto, no frontend:  - Se você desabilitar um host, os ícones de disponibilidade não serão ativados imediatamente     cinza (status desconhecido), pois o servidor precisa sincronizar o     a configuração muda primeiro; - Se você habilitar um host, os ícones de disponibilidade não serão ativados imediatamente     verde (disponível), pois o servidor precisa sincronizar o     alterações de configuração e comece a sondar o host primeiro.

en-us	#### Ready-to-use templates  The default dataset in Zabbix offers several ready-to-use templates for monitoring VMware vCenter or directly ESX hypervisor. These templates contain pre-configured LLD rules as well as a number of built-in checks for monitoring virtual installations.  Templates for VMware vCenter and ESX hypervisor monitoring:  -   *VMware* - uses UUID data for corresponding macros; -   *VMware FQDN* - uses FQDN data for corresponding macros.  ::: noteclassic  In order for the *VMware FQDN* template to work correctly each monitored VM should have a unique OS name compliant with FQDN rules and VMware Tools must be installed on every machine. If these conditions are met, it is recommended to use *VMware FQDN* template. The creation of *VMware FQDN* template became possible after introducing the ability to create hosts with custom interfaces in Zabbix 5.2.\ \ A classic *VMware* template is still available and can be used if FQDN requirements cannot be met. Please keep in mind, that the *VMware* template has a known issue. Hosts for discovered virtual machines will be created with the names saved in the vCenter (for example, VM1, VM2, etc.). If Zabbix agent active is installed on these hosts later with autoregistration enabled, the autoregistration process will read host names as they have been registered upon launch (for example, vm1.example.com, vm2.example.com, etc.) and create new hosts since no name matches have been found. As a result there will be two duplicate hosts for each machine with different names.  :::  Templates used by discovery (normally, these templates should not be manually linked to a host):  -   *VMware Hypervisor*; -   *VMware Guest*.  ![](../../assets/en/manual/vm_monitoring/templates_vm.png)
pt-br	#### Modelos prontos para uso  O conjunto de dados padrão no Zabbix oferece vários modelos prontos para uso para monitorando o VMware vCenter ou diretamente o hipervisor ESX. Esses modelos contêm regras LLD pré-configuradas, bem como várias verificações integradas para monitorar instalações virtuais.  Modelos para monitoramento de hypervisor VMware vCenter e ESX:  - *VMware* - usa dados UUID para macros correspondentes; - *VMware FQDN* - usa dados FQDN para macros correspondentes.  ::: noteclassic  Para que o modelo *VMware FQDN* funcione corretamente cada VM monitorada deve ter um nome de SO exclusivo compatível com as regras de FQDN e o VMware Tools deve ser instalado em todas as máquinas. Se essas condições forem atendidos, é recomendável usar o modelo *VMware FQDN*. A criação do modelo *VMware FQDN* tornou-se possível após a introdução da capacidade para criar hosts com interfaces personalizadas no Zabbix 5.2.\ \ Um modelo clássico *VMware* ainda está disponível e pode ser usado se o FQDN requisitos não podem ser atendidos. Lembre-se de que o *VMware* modelo tem um problema conhecido. Os hosts para máquinas virtuais descobertas ser criado com os nomes salvos no vCenter (por exemplo, VM1, VM2, etc.). Se o Zabbix agent active for instalado posteriormente nesses hosts com registro automático habilitado, o processo de registro automático lerá host nomes como eles foram registrados no lançamento (por exemplo, vm1.example.com, vm2.example.com, etc.) e crie novos hosts desde que não correspondências de nome foram encontradas. Como resultado, haverá duas duplicatas hosts para cada máquina com nomes diferentes. :::  Modelos usados ​​pela descoberta (normalmente, esses modelos não devem ser vinculado manualmente a um host):  - *VMware Hypervisor*; - *VMware Convidado*.  ![](../../assets/en/manual/vm_monitoring/templates_vm.png)

en-us	#### Recent data vs longer periods  For very recent data a **single** line is drawn connecting each received value. The single line is drawn as long as there is at least one horizontal pixel available for one value.  For data that show a longer period **three lines** are drawn - a dark green one shows the average, while a light pink and a light green line shows the maximum and minimum values at that point in time. The space between the highs and the lows is filled with yellow background.  Working time (working days) is displayed in graphs as a white background, while non-working time is displayed in gray (with the *Original blue* default frontend theme).  ![](../../../../../assets/en/manual/config/graph_working_time.png){width="550"}  Working time is always displayed in simple graphs, whereas displaying it in [custom graphs](custom#configuring_custom_graphs) is a user preference.  Working time is not displayed if the graph shows more than 3 months.
pt-br	#### Dados recentes vs períodos mais longos  Para dados muito recentes, uma linha **única** é desenhada conectando cada valor. A linha única é desenhada enquanto houver pelo menos uma pixel horizontal disponível para um valor.  Para dados que mostram um período mais longo, **três linhas** são desenhadas - um escuro verde mostra a média, enquanto uma linha rosa claro e uma linha verde clara mostra os valores máximo e mínimo naquele momento. O espaço entre os altos e os baixos é preenchido com fundo amarelo.  O tempo de trabalho (dias úteis) é exibido em gráficos como um branco fundo, enquanto o tempo de folga é exibido em cinza (com o *Azul original* tema frontend padrão).  ![](../../../../../assets/en/manual/config/graph_working_time.png){width="550"}  O tempo de trabalho é sempre exibido em gráficos simples, enquanto exibi-lo em [gráficos personalizados](custom#configuring_custom_graphs) é um usuário preferência.  O tempo de trabalho não é exibido se o gráfico mostrar mais de 3 meses.

en-us	**Record filter**  A functionality for filtering records by the frontend operation that caused these entries has been added. If several log records have been created as a result of a single operation, for example, linking/unlinking a template, such records will have the same *Recordset ID*.
pt-br	**Filtro de registro  Foi adicionada uma funcionalidade para filtrar registros pela operação de front-end que causou essas entradas. Se vários registros de log tiverem sido criados como resultado de uma única operação, por exemplo, vincular/desvincular um modelo, esses registros terão o mesmo *Recordset ID*.

en-us	**Records**  The audit log now contains records about all configuration changes for all Zabbix objects, including changes that occurred as a result of executing an LLD rule, a network discovery action, an autoregistration action, or a script execution. Previously, configuration changes initiated from Zabbix server, for example, as a result of executing a discovery rule, were not recorded. Now such object modifications will be stored as audit records attributed to the user System.
pt-br	**Registros  O log de auditoria agora contém registros sobre todas as alterações de configuração para todos os objetos do Zabbix, incluindo alterações que ocorreram como resultado da execução de uma regra LLD, uma ação de descoberta de rede, uma ação de autorregistro ou uma execução de script. Anteriormente, as alterações de configuração iniciadas a partir do Zabbix Server, por exemplo, como resultado da execução de uma regra de descoberta, não eram registradas. Agora, essas modificações de objeto serão armazenadas como registros de auditoria atribuídos ao usuário System.

en-us	#### Recovery operation details  ![](../../../../../assets/en/manual/config/recovery_operation_details.png)  |Parameter|<|<|<|Description| |---------|-|-|-|-----------| |*Operation*|<|<|<|Three operation types are available for recovery events:<br>**Send message** - send recovery message to specified user<br>**Notify all involved** - send recovery message to all users who were notified on the problem event<br>**<remote command name>** - execute a remote command. Commands are available for execution if previously defined in [global scripts](/manual/web_interface/frontend_sections/administration/scripts#configuring_a_global_script) with *Action operation* selected as its scope.<br>Note that if the same recipient is defined in several operation types without specified *Custom message*, duplicate notifications are not sent.| |<|Operation type: [send message](/manual/config/notifications/action/operation/message)|<|<|<| |^|*Send to user groups*|<|<|Click on *Add* to select user groups to send the recovery message to.<br>The user group must have at least "read" [permissions](/manual/config/users_and_usergroups/permissions) to the host in order to be notified.| |^|*Send to users*|<|<|Click on *Add* to select users to send the recovery message to.<br>The user must have at least "read" [permissions](/manual/config/users_and_usergroups/permissions) to the host in order to be notified.| |^|*Send only to*|<|<|Send default recovery message to all defined media types or a selected one only.| |^|*Custom message*|<|<|If selected, a custom message can be defined.| |^|*Subject*|<|<|Subject of the custom message. The subject may contain macros.| |^|*Message*|<|<|The custom message. The message may contain macros.| |^|Operation type: [remote command](/manual/config/notifications/action/operation/remote_command)|<|<|<| |^|*Target list*|<|<|Select targets to execute the command on:<br>**Current host** - command is executed on the host of the trigger that caused the problem event. This option will not work if there are multiple hosts in the trigger.<br>**Host** - select host(s) to execute the command on.<br>**Host group** - select host group(s) to execute the command on. Specifying a parent host group implicitly selects all nested host groups. Thus the remote command will also be executed on hosts from nested groups.<br>A command on a host is executed only once, even if the host matches more than once (e.g. from several host groups; individually and from a host group).<br>The target list is meaningless if the command is executed on Zabbix server. Selecting more targets in this case only results in the command being executed on the server more times.<br>Note that for global scripts, the target selection also depends on the *Host group* setting in global script [configuration](/manual/web_interface/frontend_sections/administration/scripts#configuring_a_global_script).| |<|Operation type: notify all involved|<|<|<| |^|*Custom message*|<|<|If selected, a custom message can be defined.| |^|*Subject*|<|<|Subject of the custom message. The subject may contain macros.| |^|*Message*|<|<|The custom message. The message may contain macros.|  All mandatory input fields are marked with a red asterisk. When done, click on *Add* to add operation to the list of *Recovery operations*.
pt-br	#### Detalhes da operação de recuperação  ![](../../../../../assets/en/manual/config/recovery_operation_details.png)  |Parâmetro|<|<|<|Descrição| |---------|-|-|-|-----------| |*Operação*|<|<|<|Três tipos de operação estão disponíveis para eventos de recuperação:<br>**Enviar mensagem** - enviar mensagem de recuperação ao usuário especificado<br>**Notificar todos os envolvidos** - enviar mensagem de recuperação para todos os usuários que foram notificados sobre o evento de problema<br>**<nome do comando remoto>** - execute um comando remoto. Os comandos estão disponíveis para execução se previamente definidos em [scripts globais](/manual/web_interface/frontend_sections/administration/scripts#configuring_a_global_script) com *Operação de ação* selecionada como seu escopo.<br>Observe que se o mesmo destinatário for definido em vários tipos de operação sem *Mensagem personalizada* especificada, notificações duplicadas não são enviadas.| |<|Tipo de operação: [enviar mensagem](/manual/config/notifications/action/operation/message)|<|<|<| |^|*Enviar para grupos de usuários*|<|<|Clique em *Adicionar* para selecionar grupos de usuários para os quais enviar a mensagem de recuperação.<br>O grupo de usuários deve ter pelo menos [permissões de leitura](/manual/ config/users_and_usergroups/permissions) ao host para ser notificado.| |^|*Enviar aos usuários*|<|<|Clique em *Adicionar* para selecionar os usuários para os quais enviar a mensagem de recuperação.<br>O usuário deve ter pelo menos [permissões de leitura](/manual/config/users_and_usergroups /permissions) ao host para ser notificado.| |^|*Enviar apenas para*|<|<|Enviar mensagem de recuperação padrão para todos os tipos de mídia definidos ou apenas para um selecionado.| |^|*Mensagem personalizada*|<|<|Se selecionado, uma mensagem personalizada pode ser definida.| |^|*Assunto*|<|<|Assunto da mensagem personalizada. O assunto pode conter macros.| |^|*Mensagem*|<|<|A mensagem personalizada. A mensagem pode conter macros.| |^|Tipo de operação: [comando remoto](/manual/config/notifications/action/operation/comando_remote)|<|<|<| |^|*Lista de alvos*|<|<|Selecione os alvos para executar o comando em:<br>**Host atual** - o comando é executado no host do gatilho que causou o evento de problema. Esta opção não funcionará se houver vários hosts no gatilho.<br>**Host** - selecione host(s) para executar o comando.<br>**Host group** - selecione host group(s) para executar o comando. Especificar um grupo de hosts pai seleciona implicitamente todos os grupos de hosts aninhados. Assim, o comando remoto também será executado em hosts de grupos aninhados.<br>Um comando em um host é executado apenas uma vez, mesmo se o host corresponder mais de uma vez (por exemplo, de vários grupos de hosts; individualmente e de um grupo de hosts). <br>A lista de alvos não tem sentido se o comando for executado no servidor Zabbix. A seleção de mais destinos neste caso resulta apenas na execução do comando no servidor mais vezes.<br>Observe que, para scripts globais, a seleção de destino também depende da configuração *Host group* no script global [configuration](/manual/ web_interface/frontend_sections/administration/scripts#configuring_a_global_script).| |<|Tipo de operação: notificar todos os envolvidos|<|<|<| |^|*Mensagem personalizada*|<|<|Se selecionado, uma mensagem personalizada pode ser definida.| |^|*Assunto*|<|<|Assunto da mensagem personalizada. O assunto pode conter macros.| |^|*Mensagem*|<|<|A mensagem personalizada. A mensagem pode conter macros.|  Todos os campos de entrada obrigatórios estão marcados com um asterisco vermelho. Quando feito, clique em *Adicionar* para adicionar a operação à lista de *Operações de recuperação*.

en-us	 ### Redis  |Key|<|<|<|<| |---|-|-|-|-| |<|**Description**|**Return value**|**Parameters**|**Comments**| |redis.config\[connString,<password>,<pattern>\]|<|<|<|<| |<|Gets the configuration parameters of a Redis instance that match the pattern.|JSON - if a glob-style pattern was used<br><br>single value - if a pattern did not contain any wildcard character|**connString** - URI or session name.<br>**password** - Redis password.<br>**pattern** - glob-style pattern (*\** by default).| | |redis.info\[connString,<password>,<section>\]|<|<|<|<| |<|Gets the output of the INFO command.|JSON - output is serialized as JSON|**connString** - URI or session name.<br>**password** - Redis password.<br>**section** - [section](https://redis.io/commands/info) of information (*default* by default).| | |redis.ping\[connString,<password>\]|<|<|<|<| |<|Test if a connection is alive or not.|1 - connection is alive<br><br>0 - connection is broken (if there is any error presented including AUTH and configuration issues)|**connString** - URI or session name.<br>**password** - Redis password.| | |redis.slowlog.count\[connString,<password>\]|<|<|<|<| |<|The number of slow log entries since Redis was started.|Integer|**connString** - URI or session name.<br>**password** - Redis password.| |
pt-br	 ### Redis  |Chave|<|<|<|<| |---|-|-|-|-| |<|**Descrição**|**Valor de retorno**|**Parâmetros**|**Comentários**| |redis.config\[connString,<password>,<pattern>\]|<|<|<|<| |<|Obtém os parâmetros de configuração de uma instância de Redis que corresponde ao padrão.|JSON - se um padrão glob-style for usado<br><br>valor único - se o padrão não contém qualquer caracter coringa|**connString** - URI ou nome de sessão.<br>**password** - senha Redis.<br>**pattern** - padrão glob-style (*\** por padrão).| | |redis.info\[connString,<password>,<section>\]|<|<|<|<| |<|Obtém a saída do comando INFO.|JSON - saída é serializada como JSON|**connString** - URI ou nome de sessão.<br>**password** - senha Redis.<br>**section** - [seção](https://redis.io/commands/info) de informação (por padrão configurado como *padrão*).| | |redis.ping\[connString,<password>\]|<|<|<|<| |<|Testa se uma conexão está ativa ou não.|1 - conexão está ativa<br><br>0 - conexão está quebrada (se houver qualquer erro apresentado, incluindo problemas de AUTH e configuração)|**connString** - URI ou nome de sessão.<br>**password** - senha Redis.| | |redis.slowlog.count\[connString,<password>\]|<|<|<|<| |<|O número de entradas de log lentas desde que o Redis foi iniciado.|Inteiro|**connString** - URI ou nome de sessão.<br>**password** - senha Redis.| |

en-us	#### Reference  This section contains basic versions of different module elements introduced in the previous sections.  **manifest.json**  ``` {.java} {     "manifest_version": 1.0,     "id": "example_module",     "name": "Example module",     "version": "1.0",     "namespace": "Example",     "author": "John Smith",     "url": "http://module.example.com",     "description": "Short description of the module.",     "actions": {         "example.something.view": {             "class": "SomethingView",             "view": "module.example.something.view"         },         "example.something.create": {             "class": "SomethingCreate",             "layout": null         },         "example.something.delete": {             "class": "SomethingDelete",             "layout": null         },         "example.something.export.xml": {             "class": "data_export/ExportAsXml",             "layout": null         },         "example.something.export.excel": {             "class": "data_export/ExportAsExcel",             "layout": null         }     },     "config": {         "username": "john_smith"     } } ```  **Module.php**  ``` {.php} <?php declare(strict_types = 1);  namespace Modules\Example;  use APP; use CController as CAction;  /**  * Please see Core\CModule class for additional reference.  */ class Module extends \Core\CModule {      /**      * Initialize module.      */     public function init(): void {         // Initialize main menu (CMenu class instance).         APP::Component()->get('menu.main')             ->findOrAdd(_('Reports'))                 ->getSubmenu()                     ->add((new \CMenuItem(_('Example wide report')))                         ->setAction('example.report.wide.php')                     )                     ->add((new \CMenuItem(_('Example narrow report')))                         ->setAction('example.report.narrow.php')                     );     }      /**      * Event handler, triggered before executing the action.      *      * @param CAction $action  Action instance responsible for current request.      */     public function onBeforeAction(CAction $action): void {     }      /**      * Event handler, triggered on application exit.      *      * @param CAction $action  Action instance responsible for current request.      */     public function onTerminate(CAction $action): void {     } } ```  **Action controller**  ``` {.php} <?php declare(strict_types = 1);  namespace Modules\Example\Actions;  use CControllerResponseData; use CControllerResponseFatal; use CController as CAction;  /**  * Example module action.  */ class SomethingView extends CAction {      /**      * Initialize action. Method called by Zabbix core.      *      * @return void      */     public function init(): void {         /**          * Disable SID (Session ID) validation. Session ID validation should only be used for actions which involve data          * modification, such as update or delete actions. In such case Session ID must be presented in the URL, so that          * the URL would expire as soon as the session expired.          */         $this->disableSIDvalidation();     }      /**      * Check and sanitize user input parameters. Method called by Zabbix core. Execution stops if false is returned.      *      * @return bool true on success, false on error.      */     protected function checkInput(): bool {         $fields = [             'name'  => 'required|string',             'email' => 'required|string',             'phone' => 'string'         ];          // Only validated data will further be available using $this->hasInput() and $this->getInput().         $ret = $this->validateInput($fields);          if (!$ret) {             $this->setResponse(new CControllerResponseFatal());         }          return $ret;     }      /**      * Check if the user has permission to execute this action. Method called by Zabbix core.      * Execution stops if false is returned.      *      * @return bool      */     protected function checkPermissions(): bool {         $permit_user_types = [USER_TYPE_ZABBIX_ADMIN, USER_TYPE_SUPER_ADMIN];          return in_array($this->getUserType(), $permit_user_types);     }      /**      * Prepare the response object for the view. Method called by Zabbix core.      *      * @return void      */     protected function doAction(): void {         $contacts = $this->getInput('email');          if ($this->hasInput('phone')) {             $contacts .= ', '.$this->getInput('phone');         }          $data = [             'name' => $this->getInput('name'),             'contacts' => $contacts         ];          $response = new CControllerResponseData($data);          $this->setResponse($response);     } } ```  **Action view**  ``` {.php} <?php declare(strict_types = 1);  /**  * @var CView $this  */  $this->includeJsFile('example.something.view.js.php');  (new CWidget())     ->setTitle(_('Something view'))     ->addItem(new CDiv($data['name']))     ->addItem(new CPartial('module.example.something.reusable', [         'contacts' => $data['contacts']     ])     ->show(); ```
pt-br	#### Referência  Esta seção contém versões básicas de diferentes elementos do módulo introduzido nas seções anteriores.  **manifest.json**  ``` {.java} {     "manifest_version": 1.0,     "id": "example_module",     "name": "Example module",     "version": "1.0",     "namespace": "Example",     "author": "John Smith",     "url": "http://module.example.com",     "description": "Short description of the module.",     "actions": {         "example.something.view": {             "class": "SomethingView",             "view": "module.example.something.view"         },         "example.something.create": {             "class": "SomethingCreate",             "layout": null         },         "example.something.delete": {             "class": "SomethingDelete",             "layout": null         },         "example.something.export.xml": {             "class": "data_export/ExportAsXml",             "layout": null         },         "example.something.export.excel": {             "class": "data_export/ExportAsExcel",             "layout": null         }     },     "config": {         "username": "john_smith"     } } ```  **Módulo.php**  ``` {.php} <?php declare(strict_types = 1);  namespace Modules\Example;  use APP; use CController as CAction;  /**  * Please see Core\CModule class for additional reference.  */ class Module extends \Core\CModule {      /**      * Initialize module.      */     public function init(): void {         // Initialize main menu (CMenu class instance).         APP::Component()->get('menu.main')             ->findOrAdd(_('Reports'))                 ->getSubmenu()                     ->add((new \CMenuItem(_('Example wide report')))                         ->setAction('example.report.wide.php')                     )                     ->add((new \CMenuItem(_('Example narrow report')))                         ->setAction('example.report.narrow.php')                     );     }      /**      * Event handler, triggered before executing the action.      *      * @param CAction $action  Action instance responsible for current request.      */     public function onBeforeAction(CAction $action): void {     }      /**      * Event handler, triggered on application exit.      *      * @param CAction $action  Action instance responsible for current request.      */     public function onTerminate(CAction $action): void {     } } ```  **Controlador de ação**  ``` {.php} <?php declare(strict_types = 1);  namespace Modules\Example\Actions;  use CControllerResponseData; use CControllerResponseFatal; use CController as CAction;  /**  * Example module action.  */ class SomethingView extends CAction {      /**      * Initialize action. Method called by Zabbix core.      *      * @return void      */     public function init(): void {         /**          * Disable SID (Session ID) validation. Session ID validation should only be used for actions which involve data          * modification, such as update or delete actions. In such case Session ID must be presented in the URL, so that          * the URL would expire as soon as the session expired.          */         $this->disableSIDvalidation();     }      /**      * Check and sanitize user input parameters. Method called by Zabbix core. Execution stops if false is returned.      *      * @return bool true on success, false on error.      */     protected function checkInput(): bool {         $fields = [             'name'  => 'required|string',             'email' => 'required|string',             'phone' => 'string'         ];          // Only validated data will further be available using $this->hasInput() and $this->getInput().         $ret = $this->validateInput($fields);          if (!$ret) {             $this->setResponse(new CControllerResponseFatal());         }          return $ret;     }      /**      * Check if the user has permission to execute this action. Method called by Zabbix core.      * Execution stops if false is returned.      *      * @return bool      */     protected function checkPermissions(): bool {         $permit_user_types = [USER_TYPE_ZABBIX_ADMIN, USER_TYPE_SUPER_ADMIN];          return in_array($this->getUserType(), $permit_user_types);     }      /**      * Prepare the response object for the view. Method called by Zabbix core.      *      * @return void      */     protected function doAction(): void {         $contacts = $this->getInput('email');          if ($this->hasInput('phone')) {             $contacts .= ', '.$this->getInput('phone');         }          $data = [             'name' => $this->getInput('name'),             'contacts' => $contacts         ];          $response = new CControllerResponseData($data);          $this->setResponse($response);     } } ```  **Visualização de ação**  ``` {.php} <?php declare(strict_types = 1);  /**  * @var CView $this  */  $this->includeJsFile('example.something.view.js.php');  (new CWidget())     ->setTitle(_('Something view'))     ->addItem(new CDiv($data['name']))     ->addItem(new CPartial('module.example.something.reusable', [         'contacts' => $data['contacts']     ])     ->show(); ```

en-us	#### regexp  Changes:\ [ZBXNEXT-6717](https://support.zabbix.com/browse/ZBXNEXT-6717) added `regexp.get`, `regexp.create`, `regexp.update` and `regexp.delete` API.\
pt-br	#### regexp  Mudanças:\ [ZBXNEXT-6717](https://support.zabbix.com/browse/ZBXNEXT-6717) adicionado API `regexp.get`, `regexp.create`, `regexp.update` e `regexp.delete`.\

en-us	# regexp.create
pt-br	# regexp.create

en-us	# regexp.delete
pt-br	# regexp.delete

en-us	# regexp.get
pt-br	# regexp.get

en-us	# regexp.update
pt-br	# regexp.update

en-us	 ###### Register request  A request sent by the agent during the agent startup phase to obtain provided metrics to register a plugin.  |   |   | |---|---| |direction|agent → plugin| |response|yes|  Parameters specific to register requests:  |Name|Type|Comments| |---------|--------|----------| |version|string|The protocol version <major>.<minor>|  *Example:*      {"id":1,"type":2,"version":"1.0"}
pt-br	###### Request registro  Um request enviada pelo agente durante a fase de inicialização do agente para obter métricas fornecidas para registrar um plugin.    |   |   | |---|---| |direction|agent → plugin| |response|yes|  Parâmetros específicos para solicitação de registro:  |Nome|Tipo|Comentários| |---------|--------|----------| |version|string|Versão do protocolo <major>.<minor>|  *Exemplo:*      {"id":1,"type":2,"version":"1.0"}

en-us	 ###### Register response  Plugin's response to the register request.  |   |   | |---|---| |direction|plugin → agent| |response|n/a|  Parameters specific to register responses:  |Name|Type|Comments| |---------|--------|----------| |name|string|The plugin name.| |metrics|array of strings (optional)|The metrics with descriptions as used in the plugin. Returns RegisterMetrics(). Absent if error is returned.| |interfaces|uint32 (optional)|The bit mask of plugin's supported interfaces. Absent if error is returned.| |error|string (optional)|An error message returned if a plugin cannot be started. Absent, if metrics are returned.|  *Examples:*      {"id":2,"type":3,"metrics":["external.test", "External exporter Test."], "interfaces": 4}  or      {"id":2,"type":3,"error":"error message"}
pt-br	###### Resposta de registro  A resposta do plugin à solicitação de registro.   |   |   | |---|---| |direction|plugin → agent| |response|n/a|  Parâmetros específicos para respostas de registro:  |Nome|Tipo|Comentários| |---------|--------|----------| |name|string|Nome do plugin.| |metrics|array of strings (optional)|As métricas com descrições são usadas no plugin. Retorna RegisterMetrics(). Ausente se retornar erro.| |interfaces|uint32 (optional)|A máscara de bits das interfaces suportadas pelo plugin. Ausente se retornar erro.| |error|string (optional)|Uma mensagem de erro retorna caso o plugin não possa ser iniciado. Ausente se as métricas retornarem.|  *Exemplos:*      {"id":2,"type":3,"metrics":["external.test", "External exporter Test."], "interfaces": 4}  or      {"id":2,"type":3,"error":"error message"}

en-us	#### Regular expression limitations in Zabbix agent 2  Zabbix agent 2 does not support lookaheads and lookbehinds in regular expressions due to the standard Go regexp library limitations.
pt-br	#### Limitações de expressão regular no Zabbix Agent 2  O Zabbix agent 2 não suporta lookaheads e lookbehinds em expressões regulares devido às limitações da biblioteca padrão Go regexp.

en-us	# > Regular expression object  The following objects are directly related to the `regexp` API.
pt-br	# > Objeto de expressão regular  Os objetos a seguir estão diretamente relacionados à API `regexp`.

en-us	#### Regular expressions  Manage global regular expressions.  [Regular expression API](/manual/api/reference/regexp)
pt-br	#### Expressões regulares    Gerenciar expressões regulares globais.   [Expressão regular API](/manual/api/reference/regexp)

en-us	#### Regular expression support by location  |Location|<|Regular expression|Global regular expression|Comments| |--------|-|------------------|-------------------------|--------| |**[Agent items](/manual/config/items/itemtypes/zabbix_agent)**|<|<|<|<| |<|eventlog\[\]|Yes|Yes|`regexp`, `severity`, `source`, `eventid` parameters| |^|log\[\]|^|^|`regexp` parameter| |^|log.count\[\]|^|^|^| |^|logrt\[\]|^|Yes/No|`regexp` parameter supports both, `file_regexp` parameter supports non-global expressions only| |^|logrt.count\[\]|^|^|^| |^|proc.cpu.util\[\]|^|No|`cmdline` parameter| |^|proc.mem\[\]|^|^|^| |^|proc.num\[\]|^|^|^| |^|sensor\[\]|^|^|`device` and `sensor` parameters on Linux 2.4| |^|system.hw.macaddr\[\]|^|^|`interface` parameter| |^|system.sw.packages\[\]|^|^|`package` parameter| |^|vfs.dir.count\[\]|^|^|`regex_incl`, `regex_excl`, `regex_excl_dir` parameters| |^|vfs.dir.size\[\]|^|^|`regex_incl`, `regex_excl`, `regex_excl_dir` parameters| |^|vfs.file.regexp\[\]|^|^|`regexp` parameter| |^|vfs.file.regmatch\[\]|^|^|^| |^|web.page.regexp\[\]|^|^|^| |**[SNMP traps](/manual/config/items/itemtypes/snmptrap)**|<|<|<|<| |<|snmptrap\[\]|Yes|Yes|`regexp` parameter| |**[Item value preprocessing](/manual/config/items/item#item_value_preprocessing)**|<|Yes|No|`pattern` parameter| |**[Functions for triggers/calculated items](/manual/appendix/functions)**|<|<|<|<| |<|count()|Yes|Yes|`pattern` parameter if `operator` parameter is *regexp* or *iregexp*| |<|countunique()|Yes|Yes|^| |<|find()|Yes|Yes|^| |^|logeventid()|Yes|Yes|`pattern` parameter| |^|logsource()|^|^|^| |**[Low-level discovery](/manual/discovery/low_level_discovery#discovery_rule_filter)**|<|<|<|<| |<|Filters|Yes|Yes|*Regular expression* field| |^|Overrides|Yes|No|In *matches*, *does not match* options for *Operation* conditions| |**[Action conditions](/manual/config/notifications/action/conditions)**|<|Yes|No|In *matches*, *does not match* options for *Host name* and *Host metadata* autoregistration conditions| |**[Web monitoring](/manual/web_monitoring#configuring_a_web_scenario)**|<|Yes|No|*Variables* with a **regex:** prefix<br>*Required string* field| |**[User macro context](/manual/config/macros/user_macros#user_macro_context)**|<|Yes|No|In macro context with a **regex:** prefix| |**[Macro functions](/manual/config/macros/macro_functions)**|<|<|<|<| |<|regsub()|Yes|No|`pattern` parameter| |^|iregsub()|^|^|^| |**[Icon mapping](/manual/web_interface/frontend_sections/administration/general#icon_mapping)**|<|Yes|Yes|*Expression* field| |**[Value mapping](/manual/config/items/mapping#configuration)**|<|Yes|No|*Value* field if mapping type is `regexp`|
pt-br	#### Suporte a expressão regular por localização  |Localização|<|Expressão regular|Expressão regular global|Comentários| |--------|-|------------------|-------------------------|--------| |**[Itens do Agent](/manual/config/items/itemtypes/zabbix_agent)**|<|<|<|<| |<|eventlog\[\]|Sim|Sim|parâmetros `regexp`, `severity`, `source`, `eventid`| |^|log\[\]|^|^|parâmetro `regexp`| |^|log.count\[\]|^|^|^| |^|logrt\[\]|^|Sim/Não|parâmetro `regexp` suporta ambos, parâmetro `file_regexp` suporta apenas expressões não-globais| |^|logrt.count\[\]|^|^|^| |^|proc.cpu.util\[\]|^|Não|parâmetro `cmdline`| |^|proc.mem\[\]|^|^|^| |^|proc.num\[\]|^|^|^| |^|sensor\[\]|^|^|parâmetros `device` e `sensor` no Linux 2.4| |^|system.hw.macaddr\[\]|^|^|parâmetro `interface`| |^|system.sw.packages\[\]|^|^|parâmetro `package`| |^|vfs.dir.count\[\]|^|^|parâmetros `regex_incl`, `regex_excl`, `regex_excl_dir`| |^|vfs.dir.size\[\]|^|^|parâmetros `regex_incl`, `regex_excl`, `regex_excl_dir`| |^|vfs.file.regexp\[\]|^|^|parâmetro `regexp`| |^|vfs.file.regmatch\[\]|^|^|^| |^|web.page.regexp\[\]|^|^|^| |**[SNMP traps](/manual/config/items/itemtypes/snmptrap)**|<|<|<|<| |<|snmptrap\[\]|Sim|Sim|parâmetro `regexp`| |**[Pré-processamento de valor de item](/manual/config/items/item#item_value_preprocessing)**|<|Sim|Não|parâmetro `pattern`| |**[Funções para itens de gatilho/calculados](/manual/appendix/functions)**|<|<|<|<| |<|count()|Sim|Sim|parâmetro `pattern` se parâmetro `operator` é *regexp* ou *iregexp*| |<|countunique()|Sim|Sim|^| |<|find()|Sim|Sim|^| |^|logeventid()|Sim|Sim|parâmetro `pattern`| |^|logsource()|^|^|^| |**[Descoberta de baixo-nível](/manual/discovery/low_level_discovery#discovery_rule_filter)**|<|<|<|<| |<|Filters (filtra)|Sim|Sim|Campo *Expressão regular*| |^|Overrides (sobrescreve)|Sim|Não|Nas opções *corresponde (matches)*, *não corresponde (does not match)* para condições *Operação*| |**[Condições de ação](/manual/config/notifications/action/conditions)**|<|Sim|Não|Nas opções *corresponde (matches)*, *não corresponde (does not match)* para condições de autoregistro  *Nome do host (Host name)* e *Metadados do host (Host metadata)*| |**[Monitoramento web](/manual/web_monitoring#configuring_a_web_scenario)**|<|Sim|Não|*Variáveis* com um prefixo **regex:**<br>Campo *String requerida*| |**[Contexto de macro de usuário](/manual/config/macros/user_macros#user_macro_context)**|<|Sim|Não|Em contexto de macro com um prefixo **regex:**| |**[Funções de macro](/manual/config/macros/macro_functions)**|<|<|<|<| |<|regsub()|Sim|Não|parâmetro `pattern`| |^|iregsub()|^|^|^| |**[Mapeamento de ícone](/manual/web_interface/frontend_sections/administration/general#icon_mapping)**|<|Sim|Sim|Campo *Expressão*| |**[Mapeamento de valor](/manual/config/items/mapping#configuration)**|<|Sim|Não|Campo *Valor* se o tipo de mapeamento é `regexp`|

en-us	#### Regular expressions  You may manually enter a regular expression in supported places. Note that the expression may not start with @ because that symbol is used in Zabbix for referencing global regular expressions.  ::: notewarning It's possible to run out of stack when using regular expressions. See the [pcrestack man page](http://pcre.org/original/doc/html/pcrestack.html) for more information. :::  Note that in multi-line matching, the `^` and `$` anchors match at the beginning/end of each line respectively, instead of the beginning/end of the entire string.
pt-br	#### Expressões regulares  Você pode informar manualmente uma expressão regular nos locais suportados. Note  que a expressão pode não começar com @ porque esse símbolo é usado no Zabbix para  referenciar expressões regulares globais.  ::: notewarning É possível ficar sem stack quando usando expressões regulares. Consulte a [página de manual pcrestack](http://pcre.org/original/doc/html/pcrestack.html) para mais informações. :::  Note que em correspondência multilinear, as âncoras `^` e `$` correspondem ao  início/fim de cada linha respectivamente, em vez do início/fim da string completa.

en-us	### Regular expression  The global regular expression object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |regexpid|string|*(readonly)* ID of the regular expression.| |**name**<br>(required)|string|Name of the regular expression.| |test\_string|string|Test string.|
pt-br	### Expressão regular  O objeto de expressão regular global tem as seguintes propriedades.  |Propriedade|[Tipo](/manual/api/reference_commentary#data_types)|Descrição |--|--|------| |regexpid|string|*(somente leitura)* ID da expressão regular.| |**name**<br>(requerido)|string|Nome da expressão regular.| |test\_string|string|Sequência de teste.|

en-us	# Regular expression  This class is designed to work with global regular expressions.  Object references:\  -   [Regular expression](/manual/api/reference/regexp/object)  Available methods:\  -   [regexp.create](/manual/api/reference/regexp/create) - creating new     regular expressions -   [regexp.delete](/manual/api/reference/regexp/delete) - deleting     regular expressions -   [regexp.get](/manual/api/reference/regexp/get) - retrieving regular     expressions -   [regexp.update](/manual/api/reference/regexp/update) - updating     regular expressions
pt-br	# Expressão regular      Esta classe foi projetada para trabalhar com expressões regulares globais.      Referências de objetos:\      - [Expressão regular](/manual/api/reference/regexp/object)      Métodos disponíveis:\      - [regexp.create](/manual/api/reference/regexp/create) - criando novas expressões regulares   - [regexp.delete](/manual/api/reference/regexp/delete) - excluindo expressões regulares   - [regexp.get](/manual/api/reference/regexp/get) - recuperando expressões regulares   - [regexp.update](/manual/api/reference/regexp/update) - atualizando expressões regulares

en-us	#### Remote commands with multiple interfaces  If the target system has multiple interfaces of the selected type (Zabbix agent or IPMI), remote commands will be executed on the default interface.  It is possible to execute remote commands via SSH and Telnet using another interface than the Zabbix agent one. The available interface to use is selected in the following order:        * Zabbix agent default interface       * SNMP default interface       * JMX default interface       * IPMI default interface
pt-br	#### Comandos remotos com múltiplas interfaces  Se o sistema de destino tiver várias interfaces do tipo selecionado (agente Zabbix ou IPMI), os comandos remotos serão executados no padrão interface.  É possível executar comandos remotos via SSH e Telnet usando outra interface que não a do agente Zabbix. A interface disponível para o uso é selecionado na seguinte ordem:        * Interface padrão do agente Zabbix       * Interface padrão SNMP       * Interface padrão JMX       * Interface padrão IPMI

en-us	#### Remove token expiry  Remove expiry date from token.  Request:  ```json {     "jsonrpc": "2.0",     "method": "token.update",     "params": {         "tokenid": "2",         "expires_at": "0"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "tokenids": [             "2"         ]     },     "id": 1 } ```
pt-br	#### Remover expiração do token      Remover data de expiração do token.  Request:  ```json {     "jsonrpc": "2.0",     "method": "token.update",     "params": {         "tokenid": "2",         "expires_at": "0"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "tokenids": [             "2"         ]     },     "id": 1 } ```

en-us	#### Removing hosts from host groups  Remove two hosts from the given host groups.  Request:  ``` {.java} {     "jsonrpc": "2.0",     "method": "hostgroup.massremove",     "params": {         "groupids": [             "5",             "6"         ],         "hostids": [             "30050",             "30001"         ]     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ``` {.java} {     "jsonrpc": "2.0",     "result": {         "groupids": [             "5",             "6"         ]     },     "id": 1 } ```
pt-br	#### Removendo hosts de grupos de hosts  Remova dois hosts dos grupos de hosts fornecidos.  Solicitação:  ``` {.java} {     "jsonrpc": "2.0",     "method": "hostgroup.massremove",     "parâmetros": {         "groupids": [             "5",             "6"         ],         "hostids": [             "30050",             "30001"         ]     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ``` {.java} {     "jsonrpc": "2.0",     "resultado": {         "groupids": [             "5",             "6"         ]     },     "id": 1 } ```

en-us	#### Removing interfaces  Remove the "127.0.0.1" SNMP interface from two hosts.  Request:  ``` {.java} {     "jsonrpc": "2.0",     "method": "hostinterface.massremove",     "params": {         "hostids": [             "30050",             "30052"         ],         "interfaces": {             "dns": "",             "ip": "127.0.0.1",             "port": "161"         }     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ``` {.java} {     "jsonrpc": "2.0",     "result": {         "interfaceids": [             "30069",             "30070"         ]     },     "id": 1 } ```
pt-br	#### Removendo interfaces  Remova a interface SNMP "127.0.0.1" de dois hosts.  Solicitação:  ``` {.java} {     "jsonrpc": "2.0",     "method": "hostinterface.massremove",     "parâmetros": {         "hostids": [             "30050",             "30052"         ],         "interfaces": {             "dns": "",             "ip": "127.0.0.1",             "porta": "161"         }     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ``` {.java} {     "jsonrpc": "2.0",     "resultado": {         "interfaceids": [             "30069",             "30070"         ]     },     "id": 1 } ```

en-us	#### Removing templates from a group  Remove two templates from group "2".  Request:  ```json {     "jsonrpc": "2.0",     "method": "template.massremove",     "params": {         "templateids": [             "10085",             "10086"         ],         "groupids": "2"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "templateids": [             "10085",             "10086"         ]     },     "id": 1 } ```
pt-br	#### Removendo templates de um grupo  Remover 2 templates do grupo "2".  Requisição:  ```json {     "jsonrpc": "2.0",     "method": "template.massremove",     "params": {         "templateids": [             "10085",             "10086"         ],         "groupids": "2"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ```json {     "jsonrpc": "2.0",     "result": {         "templateids": [             "10085",             "10086"         ]     },     "id": 1 } ```

en-us	#### Rename icon map  Rename an icon map to "OS icons".  Request:  ``` {.java} {     "jsonrpc": "2.0",     "method": "iconmap.update",     "params": {         "iconmapid": "1",         "name": "OS icons"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ``` {.java} {     "jsonrpc": "2.0",     "result": {         "iconmapids": [             "1"         ]     },     "id": 1 } ```
pt-br	#### Renomear mapa de ícones  Renomeie um mapa de ícones para "Ícones do SO".  Solicitação:  ``` {.java} {     "jsonrpc": "2.0",     "método": "iconmap.update",     "parâmetros": {         "iconmapid": "1",         "name": "Ícones do SO"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ``` {.java} {     "jsonrpc": "2.0",     "resultado": {         "iconmapids": [             "1"         ]     },     "id": 1 } ```

en-us	#### Rename image  Rename image to "Cloud icon".  Request:  ``` {.java} {     "jsonrpc": "2.0",     "method": "image.update",     "params": {         "imageid": "2",         "name": "Cloud icon"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ``` {.java} {     "jsonrpc": "2.0",     "result": {         "imageids": [             "2"         ]     },     "id": 1 } ```
pt-br	#### Renomear imagem  Renomeie a imagem para "Ícone de nuvem".  Solicitação:  ``` {.java} {     "jsonrpc": "2.0",     "método": "imagem.atualização",     "parâmetros": {         "imagemid": "2",         "name": "Ícone de nuvem"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ``` {.java} {     "jsonrpc": "2.0",     "resultado": {         "imageids": [             "2"         ]     },     "id": 1 } ```

en-us	#### Renaming a dashboard  Rename a dashboard to "SQL server status".  Request:  ``` {.java} {     "jsonrpc": "2.0",     "method": "dashboard.update",     "params": {         "dashboardid": "2",         "name": "SQL server status"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ``` {.java} {     "jsonrpc": "2.0",     "result": {         "dashboardids": [             "2"         ]     },     "id": 1 } ```
pt-br	#### Renomeando um painel  Renomeie um painel para "status do servidor SQL".  Solicitação:  ``` {.java} {     "jsonrpc": "2.0",     "método": "dashboard.update",     "parâmetros": {         "dashboardid": "2",         "name": "status do servidor SQL"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ``` {.java} {     "jsonrpc": "2.0",     "resultado": {         "dashboardids": [             "2"         ]     },     "id": 1 } ```

en-us	#### Renaming a host group  Rename a host group to "Linux hosts."  Request:  ``` {.java} {     "jsonrpc": "2.0",     "method": "hostgroup.update",     "params": {         "groupid": "7",         "name": "Linux hosts"     },     "auth": "700ca65537074ec963db7efabda78259",     "id": 1 } ```  Response:  ``` {.java} {     "jsonrpc": "2.0",     "result": {         "groupids": [             "7"         ]     },     "id": 1 } ```
pt-br	#### Renomeando um grupo de hosts  Renomeie um grupo de hosts para "hosts Linux".  Solicitação:  ``` {.java} {     "jsonrpc": "2.0",     "método": "hostgroup.update",     "parâmetros": {         "groupid": "7",         "name": "Hospedeiros Linux"     },     "auth": "700ca65537074ec963db7efabda78259",     "id": 1 } ```  Resposta:  ``` {.java} {     "jsonrpc": "2.0",     "resultado": {         "groupids": [             "7"         ]     },     "id": 1 } ```

en-us	#### Renaming a template dashboard  Rename a template dashboard to "Performance graphs".  Request:  ```json {     "jsonrpc": "2.0",     "method": "templatedashboard.update",     "params": {         "dashboardid": "23",         "name": "Performance graphs"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "dashboardids": [             "23"         ]     },     "id": 1 } ```
pt-br	#### Renomeando um template de dashboard  Renomeia um template de dashboard para "Performance graphs".  Requisição:  ```json {     "jsonrpc": "2.0",     "method": "templatedashboard.update",     "params": {         "dashboardid": "23",         "name": "Performance graphs"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ```json {     "jsonrpc": "2.0",     "result": {         "dashboardids": [             "23"         ]     },     "id": 1 } ```

en-us	#### Renaming a user  Rename a user to John Doe.  Request:  ```json {     "jsonrpc": "2.0",     "method": "user.update",     "params": {         "userid": "1",         "name": "John",         "surname": "Doe"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "userids": [             "1"         ]     },     "id": 1 } ```
pt-br	#### Renomeando um usuário  Renomeie um usuário para John Doe.  Request:  ```json {     "jsonrpc": "2.0",     "method": "user.update",     "params": {         "userid": "1",         "name": "John",         "surname": "Doe"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ```json {     "jsonrpc": "2.0",     "result": {         "userids": [             "1"         ]     },     "id": 1 } ```

en-us	#### Replace conditions, but keep the evaluation method  Request:  ``` {.java} {     "jsonrpc": "2.0",     "method": "correlation.update",     "params": {         "correlationid": "1",         "filter": {             "conditions": [                 {                     "type": 3,                     "oldtag": "error",                     "newtag": "ok"                 }             ]         }     },     "auth": "343baad4f88b4106b9b5961e77437688",     "id": 1 } ```  Response:  ``` {.java} {     "jsonrpc": "2.0",     "result": {         "correlationids": [             "1"         ]     },     "id": 1 } ```
pt-br	#### Substitua as condições, mas mantenha o método de avaliação  Solicitação:  ``` {.java} {     "jsonrpc": "2.0",     "método": "correlação.atualização",     "parâmetros": {         "correlationid": "1",         "filtro": {             "condições": [                 {                     "tipo": 3,                     "oldtag": "erro",                     "newtag": "ok"                 }             ]         }     },     "auth": "343baad4f88b4106b9b5961e77437688",     "id": 1 } ```  Resposta:  ``` {.java} {     "jsonrpc": "2.0",     "resultado": {         "correlationids": [             "1"         ]     },     "id": 1 } ```

en-us	#### Replacing host groups  Unlink and clear template "10091" from the given templates.  Request:  ```json {     "jsonrpc": "2.0",     "method": "template.massupdate",     "params": {         "templates": [             {                 "templateid": "10085"             },             {                 "templateid": "10086"             }         ],         "templates_clear": [             {                 "templateid": "10091"             }         ]     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "templateids": [             "10085",             "10086"         ]     },     "id": 1 } ```
pt-br	#### Substituindo grupos de hosts  Desvincule e limpe o modelo "10091" dos templates fornecidos.  Requisição:  ```json {     "jsonrpc": "2.0",     "method": "template.massupdate",     "params": {         "templates": [             {                 "templateid": "10085"             },             {                 "templateid": "10086"             }         ],         "templates_clear": [             {                 "templateid": "10091"             }         ]     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ```json {     "jsonrpc": "2.0",     "result": {         "templateids": [             "10085",             "10086"         ]     },     "id": 1 } ```

en-us	#### Replacing host interfaces  Replace all host interfaces with a single agent interface.  Request:  ``` {.java} {     "jsonrpc": "2.0",     "method": "hostinterface.replacehostinterfaces",     "params": {         "hostid": "30052",         "interfaces": {             "dns": "",             "ip": "127.0.0.1",             "main": 1,             "port": "10050",             "type": 1,             "useip": 1         }     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ``` {.java} {     "jsonrpc": "2.0",     "result": {         "interfaceids": [             "30081"         ]     },     "id": 1 } ```
pt-br	#### Substituindo interfaces de host  Substitua todas as interfaces de host por uma única interface de agente.  Solicitação:  ``` {.java} {     "jsonrpc": "2.0",     "method": "hostinterface.replacehostinterfaces",     "parâmetros": {         "hostid": "30052",         "interfaces": {             "dns": "",             "ip": "127.0.0.1",             "principal": 1,             "porta": "10050",             "tipo 1,             "usei": 1         }     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ``` {.java} {     "jsonrpc": "2.0",     "resultado": {         "interfaceids": [             "30081"         ]     },     "id": 1 } ```

en-us	#### Replacing hosts and templates in a host group  Replace all hosts in a host group to ones mentioned host and unlink all templates from host group.  Request:  ``` {.java} {     "jsonrpc": "2.0",     "method": "hostgroup.massupdate",     "params": {         "groups": [             {                 "groupid": "6"             }         ],         "hosts": [             {                 "hostid": "30050"             }         ],         "templates": []     },     "auth": "f223adf833b2bf2ff38574a67bba6372",     "id": 1 } ```  Response:  ``` {.java} {     "jsonrpc": "2.0",     "result": {         "groupids": [             "6",         ]     },     "id": 1 } ```
pt-br	#### Substituindo hosts e modelos em um grupo de hosts  Substitua todos os hosts em um grupo de hosts pelos hosts mencionados e desvincule todos modelos do grupo de hosts.  Solicitação:  ``` {.java} {     "jsonrpc": "2.0",     "method": "hostgroup.massupdate",     "parâmetros": {         "grupos": [             {                 "groupid": "6"             }         ],         "anfitriões": [             {                 "hostid": "30050"             }         ],         "modelos": []     },     "auth": "f223adf833b2bf2ff38574a67bba6372",     "id": 1 } ```  Resposta:  ``` {.java} {     "jsonrpc": "2.0",     "resultado": {         "groupids": [             "6",         ]     },     "id": 1 } ```

en-us	#### Replacing trigger prototype tags  Replace tags for one trigger prototype.  Request:  ```json {     "jsonrpc": "2.0",     "method": "triggerprototype.update",     "params": {         "triggerid": "17373",         "tags": [             {                 "tag": "volume",                 "value": "{#FSNAME}"             },             {                 "tag": "type",                 "value": "{#FSTYPE}"             }         ]     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "triggerids": [             "17373"         ]     },     "id": 1 } ```
pt-br	#### Substituindo etiquetas de protótipo de trigger    Substituir etiquetas para um protótipo de trigger.  Request:  ```json {     "jsonrpc": "2.0",     "method": "triggerprototype.update",     "params": {         "triggerid": "17373",         "tags": [             {                 "tag": "volume",                 "value": "{#FSNAME}"             },             {                 "tag": "type",                 "value": "{#FSTYPE}"             }         ]     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "triggerids": [             "17373"         ]     },     "id": 1 } ```

en-us	#### Replacing triggers tags  Replace tags for trigger.  Request:  ```json {     "jsonrpc": "2.0",     "method": "trigger.update",     "params": {         "triggerid": "13938",         "tags": [             {                 "tag": "service",                 "value": "{{ITEM.VALUE}.regsub(\"Service (.*) has stopped\", \"\\1\")}"             },             {                 "tag": "error",                 "value": ""             }         ]     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "triggerids": [             "13938"         ]     },     "id": 1 } ```
pt-br	#### Substituindo etiquetas de triggers      Substituir etiqueta para trigger.  Request:  ```json {     "jsonrpc": "2.0",     "method": "trigger.update",     "params": {         "triggerid": "13938",         "tags": [             {                 "tag": "service",                 "value": "{{ITEM.VALUE}.regsub(\"Service (.*) has stopped\", \"\\1\")}"             },             {                 "tag": "error",                 "value": ""             }         ]     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "triggerids": [             "13938"         ]     },     "id": 1 } ```

en-us	# report.create
pt-br	# report.create

en-us	# report.delete
pt-br	# report.delete

en-us	# report.get
pt-br	# report.get

en-us	 ### Reporting file systems with zero inodes  `vfs.fs.get` agent items are now capable of reporting file systems with the inode count equal to zero, which can be the case for file systems with dynamic inodes (e.g. btrfs).  Additionally `vfs.fs.inode` items now will not become unsupported in such cases with mode set to 'pfree' or 'pused'. Instead the pfree/pused values for such file systems will be reported as "100" and "0" respectively.
pt-br	### Reportando sistemas de arquivo com inodes igual a zero  Os itens do agente `vfs.fs.get` agora são capazes de reportar sistemas de arquivo com contagem de inodes igual a zero, o que pode ser o caso para sistemas de arquivo com inodes dinâmicos.  (por exemplo: btrfs).  Ainda, agora os itens `vfs.fs.inode`  não se tornarão não suportados em casos como, modo configurado 'pfree' ou 'pused'. Em vez disso, os valores de pfree/pused para tais arquivos serão reportados como e "100" e "0", respectivamente.

en-us	# > Report object  The following objects are directly related to the `report` API.
pt-br	# > objeto de relatório  Os objetos a seguir estão diretamente relacionados à API `report`.

en-us	 ### Report  The filter allows to select the report based on the SLA name as well as the  service name. It is also possible to limit the displayed period.  ![](../../../../../assets/en/manual/web_interface/sla_report.png){width="600"}  Each column (period) displays the SLI for that period. SLIs that are in breach of the set  SLO are highlighted in red.  20 periods are displayed in the report. A maximum of 100 periods can be displayed, if  both the *From* date and *To* date are specified. 
pt-br	### Relatório  O filtro permite selecionar o relatório com base no nome do SLA, bem como no  Nome do Serviço. Também é possível limitar o período exibido.  ![](../../../../../assets/en/manual/web_interface/sla_report.png){width="600"}  Cada coluna (período) exibe o SLI para esse período. SLIs que estão em violação do conjunto  SLO são destacados em vermelho.  20 períodos são exibidos no relatório. Um máximo de 100 períodos podem ser exibidos, se  tanto as opções de data *De* e *Até* forem especificadas.

en-us	### Report  The report object has the following properties:  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |reportid|string|*(readonly)* ID of the report.| |**userid**<br>(required)|string|ID of the user who created the report.| |**name**<br>(required)|string|Unique name of the report.| |**dashboardid**<br>(required)|string|ID of the dashboard that the report is based on.| |period|integer|Period for which the report will be prepared.<br><br>Possible values:<br>0 - *(default)* previous day;<br>1 - previous week;<br>2 - previous month;<br>3 - previous year.| |cycle|integer|Period repeating schedule.<br><br>Possible values:<br>0 - *(default)* daily;<br>1 - weekly;<br>2 - monthly;<br>3 - yearly.| |start\_time|integer|Time of the day, in seconds, when the report will be prepared for sending.<br><br>Default: 0.| |weekdays|integer|Days of the week for sending the report.<br><br>Required for weekly reports only.<br><br>Days of the week are stored in binary form with each bit representing the corresponding week day. For example, 12 equals 1100 in binary and means that reports will be sent every Wednesday and Thursday.<br><br>Default: 0.| |active\_since|string|On which date to start.<br><br>Possible values:<br>empty string - *(default)* not specified (stored as 0);<br>specific date in YYYY-MM-DD format (stored as a timestamp of the beginning of a day (00:00:00)).| |active\_till|string|On which date to end.<br><br>Possible values:<br>empty string - *(default)* not specified (stored as 0);<br>specific date in YYYY-MM-DD format (stored as a timestamp of the end of a day (23:59:59)).| |subject|string|Report message subject.| |message|string|Report message text.| |status|integer|Whether the report is enabled or disabled.<br><br>Possible values:<br>0 - Disabled;<br>1 - *(default)* Enabled.| |description|text|Description of the report.| |state|integer|*(readonly)* State of the report.<br><br>Possible values:<br>0 - *(default)* report was not yet processed;<br>1 - report was generated and successfully sent to all recipients;<br>2 - report generating failed; "info" contains error information;<br>3 - report was generated, but sending to some (or all) recipients failed; "info" contains error information.| |lastsent|timestamp|*(readonly)* Unix timestamp of the last successfully sent report.| |info|string|*(readonly)* Error description or additional information.|
pt-br	### Relatório      O objeto de relatório tem as seguintes propriedades:      |Propriedade|[Tipo](/manual/api/reference_commentary#data_types)|Descrição| |--|--|------| |reportid|string|*(somente leitura)* ID do relatório.| |**userid**<br>(requerido)|string|ID do usuário que criou o relatório.| |**name**<br>(requerido)|string|Nome exclusivo do relatório.| |**dashboardid**<br>(requerido)|string|ID do painel no qual o relatório se baseia.| |period|integer|Período para o qual o relatório será elaborado.<br><br>Valores possíveis:<br>0 - *(padrão)* dia anterior;<br>1 - semana anterior;<br>2 - mês anterior;<br> 3 - ano anterior.| |start\_time|integer|Hora do dia, em segundos, em que o relatório será preparado para envio.<br><br>Padrão: 0.| |weekdays|integer|Dias da semana para envio do relatório.<br><br>Requerido apenas para relatórios semanais.<br><br>Os dias da semana são armazenados em formato binário com cada bit representando o dia da semana correspondente. Por exemplo, 12 é igual a 1100 em binário e significa que os relatórios serão enviados todas as quartas e quintas-feiras.<br><br>Padrão: 0.| |active\_since|string|Em qual data começar.<br><br>Valores possíveis:<br>string vazia - *(padrão)* não especificada (armazenada como 0);<br>data específica no formato AAAA-MM-DD (armazenada como timestamp do início de um dia (00:00:00)).| |active\_till|string|Em qual data terminar.<br><br>Valores possíveis:<br>string vazia - *(padrão)* não especificada (armazenada como 0);<br>data específica no formato AAAA-MM-DD (armazenada como carimbo de hora do fim de um dia (23:59:59)).| |subject|string|Reportar assunto da mensagem.| |message|string|Texto da mensagem de relatório.| |status|integer|Se o relatório está ativado ou desativado.<br><br>Valores possíveis:<br>0 - Desativado;<br>1 - *(padrão)* Ativado.| |description|text|Descrição do relatório.| |state|integer|*(somente leitura)* Estado do relatório.<br><br>Valores possíveis:<br>0 - *(padrão)* o relatório ainda não foi processado;<br>1 - o relatório foi gerado e enviado com sucesso para todos os destinatários;<br>2 - falha na geração do relatório; "info" contém informações de erro;<br>3 - o relatório foi gerado, mas o envio para alguns (ou todos) destinatários falhou; "info" contém informações de erro.| |lastsent|timestamp|*(somente leitura)* Timestamp Unix do último relatório enviado com sucesso.| |info|string|*(somente leitura)* Descrição do erro ou informações adicionais.|

en-us	# Report  This class is designed to work with scheduled reports.  Object references:\  -   [Report](/manual/api/reference/report/object#report) -   [Users](/manual/api/reference/report/object#users) -   [User groups](/manual/api/reference/report/object#user_groups)  Available methods:\  -   [report.create](/manual/api/reference/report/create) - create new     scheduled reports -   [report.delete](/manual/api/reference/report/delete) - delete     scheduled reports -   [report.get](/manual/api/reference/report/get) - retrieve scheduled     reports -   [report.update](/manual/api/reference/report/update) - update     scheduled reports
pt-br	# Relatório      Esta classe foi projetada para trabalhar com relatórios agendados.  Referências de objetos:\      - [Relatório](/manual/api/reference/report/object#report)   - [Usuários](/manual/api/reference/report/object#users)   - [Grupos de usuários](/manual/api/reference/report/object#user_groups)      Métodos disponíveis:\      - [report.create](/manual/api/reference/report/create) - cria novos relatórios programados   - [report.delete](/manual/api/reference/report/delete) - exclui relatórios programados   - [report.get](/manual/api/reference/report/get) - recupera relatórios programados   - [report.update](/manual/api/reference/report/update) - atualiza relatórios programados

en-us	# report.update
pt-br	# report.update

en-us	##### - Repositories  Official Zabbix [repository](/manual/installation/install_from_packages/rhel_centos) has been added to */etc/yum.repos.d*:      [zabbix]     name=Zabbix Official Repository - $basearch     baseurl=http://repo.zabbix.com/zabbix/5.2/rhel/8/$basearch/     enabled=1     gpgcheck=1     gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
pt-br	##### - Repositórios  O [repositório](/manual/installation/install_from_packages/rhel_centos) oficial do Zabbix foi adicionado ao */etc/yum.repos.d*:      [zabbix]     name=Zabbix Official Repository - $basearch     baseurl=http://repo.zabbix.com/zabbix/5.2/rhel/8/$basearch/     enabled=1     gpgcheck=1     gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591

en-us	Request:  ```json {     "jsonrpc": "2.0",     "method": "sla.create",     "params": [         {             "name": "Database Uptime",             "slo": "99.9995",             "period": "1",             "timezone": "America/Toronto",             "description": "Provide excellent uptime for main database engines.",             "effective_date": 1672444800,             "status": 1,             "schedule": [                 {                     "period_from": 0,                     "period_to": 601200                 }             ],             "service_tags": [                 {                     "tag": "Database",                     "operator": "0",                     "value": "MySQL"                 },                 {                     "tag": "Database",                     "operator": "0",                     "value": "PostgreSQL"                 }             ],             "excluded_downtimes": [                 {                     "name": "Software version upgrade rollout",                     "period_from": "1648760400",                     "period_to": "1648764900"                 }             ]         }     ],     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "slaids": [             "5"         ]     },     "id": 1 } ```
pt-br	Request:  ```json {     "jsonrpc": "2.0",     "method": "sla.create",     "params": [         {             "name": "Database Uptime",             "slo": "99.9995",             "period": "1",             "timezone": "America/Toronto",             "description": "Provide excellent uptime for main database engines.",             "effective_date": 1672444800,             "status": 1,             "schedule": [                 {                     "period_from": 0,                     "period_to": 601200                 }             ],             "service_tags": [                 {                     "tag": "Database",                     "operator": "0",                     "value": "MySQL"                 },                 {                     "tag": "Database",                     "operator": "0",                     "value": "PostgreSQL"                 }             ],             "excluded_downtimes": [                 {                     "name": "Software version upgrade rollout",                     "period_from": "1648760400",                     "period_to": "1648764900"                 }             ]         }     ],     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "slaids": [             "5"         ]     },     "id": 1 } ```

en-us	#### Required software  Zabbix is built around modern web servers, leading database engines, and PHP scripting language.  
pt-br	#### Software necessário  O Zabbix é construído em torno de servidores web modernos, principais mecanismos de banco de dados e linguagem de programação PHP.

en-us	### Reserved ID value "0"  Reserved ID value "0" can be used to filter elements and to remove referenced objects. For example, to remove a referenced proxy from a host, proxy\_hostid should be set to 0 ("proxy\_hostid": "0") or to filter hosts monitored by server option proxyids should be set to 0 ("proxyids": "0").
pt-br	### Valor de ID reservado "0"  O valor de ID reservado "0" pode ser usado para filtrar elementos e  remover objetos referenciados. Por exemplo, para remover um proxy  referenciado de um host, proxy\_hostid deve ser definido como 0  ("proxy\_hostid": "0") ou para filtrar hosts monitorados pela opção  do servidor proxyids deve ser definido como 0 ("proxyids": "0").

en-us	#### Resize a map  Change the size of the map to 1200x1200 pixels.  Request:  ```json {     "jsonrpc": "2.0",     "method": "map.update",     "params": {         "sysmapid": "8",         "width": 1200,         "height": 1200     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "sysmapids": [             "8"         ]     },     "id": 1 } ```
pt-br	#### Redimensionar um mapa      Altere o tamanho do mapa para 1200x1200 pixels..  Request:  ```json {     "jsonrpc": "2.0",     "method": "map.update",     "params": {         "sysmapid": "8",         "width": 1200,         "height": 1200     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "sysmapids": [             "8"         ]     },     "id": 1 } ```

en-us	 #### Result processing for Prometheus pattern  A Prometheus pattern step in the preprocessing can produce a result where multiple  lines are matched. To handle this situation, a new result processing [parameter](/manual/config/items/itemtypes/prometheus) has been added to the Prometheus pattern preprocessing step that allows to aggregate the data of potentially multiple matching lines by introducing functions such as sum, min, max, avg, and count.
pt-br	 #### Processamento de resultados para o padrão Prometheus  Uma etapa de padrão do Prometheus no pré-processamento pode produzir um resultado em que várias linhas são correspondidas. Para lidar com essa situação, um novo [parâmetro](/manual/config/items/itemtypes/prometheus) no processamento de resultados foi adicionado à etapa de pré-processamento do padrão Prometheus que permite agregar os dados de várias linhas correspondentes, introduzindo funções como soma, mínimo, máximo, média e contagem.

en-us	#### Retrieve alerts by action ID  Retrieve all alerts generated by action "3".  Request:  ```json {     "jsonrpc": "2.0",     "method": "alert.get",     "params": {         "output": "extend",         "actionids": "3"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": [         {             "alertid": "1",             "actionid": "3",             "eventid": "21243",             "userid": "1",             "clock": "1362128008",             "mediatypeid": "1",             "sendto": "support@company.com",             "subject": "PROBLEM: Zabbix agent on Linux server is unreachable for 5 minutes: ",             "message": "Trigger: Zabbix agent on Linux server is unreachable for 5 minutes: \nTrigger status: PROBLEM\nTrigger severity: Not classified",             "status": "0",             "retries": "3",             "error": "",             "esc_step": "1",             "alerttype": "0",             "p_eventid": "0",             "acknowledgeid": "0"         }     ],     "id": 1 } ```
pt-br	#### Recuperar alertas por ID de ação  Recupera todos os alertas gerados pela ação "3".  Requisição:  ```json {     "jsonrpc": "2.0",     "method": "alert.get",     "params": {         "output": "extend",         "actionids": "3"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ```json {     "jsonrpc": "2.0",     "result": [         {             "alertid": "1",             "actionid": "3",             "eventid": "21243",             "userid": "1",             "clock": "1362128008",             "mediatypeid": "1",             "sendto": "support@company.com",             "subject": "PROBLEM: Zabbix agent on Linux server is unreachable for 5 minutes: ",             "message": "Trigger: Zabbix agent on Linux server is unreachable for 5 minutes: \nTrigger status: PROBLEM\nTrigger severity: Not classified",             "status": "0",             "retries": "3",             "error": "",             "esc_step": "1",             "alerttype": "0",             "p_eventid": "0",             "acknowledgeid": "0"         }     ],     "id": 1 } ```

en-us	#### Retrieve all discovery rules  Retrieve all configured discovery rules and the discovery checks they use.  Request:  ``` {.java} {     "jsonrpc": "2.0",     "method": "drule.get",     "params": {         "output": "extend",         "selectDChecks": "extend"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ``` {.java} {     "jsonrpc": "2.0",     "result": [         {             "druleid": "2",             "proxy_hostid": "0",             "name": "Local network",             "iprange": "192.168.3.1-255",             "delay": "5s",             "nextcheck": "1348754327",             "status": "0",             "dchecks": [                 {                     "dcheckid": "7",                     "druleid": "2",                     "type": "3",                     "key_": "",                     "snmp_community": "",                     "ports": "21",                     "snmpv3_securityname": "",                     "snmpv3_securitylevel": "0",                     "snmpv3_authpassphrase": "",                     "snmpv3_privpassphrase": "",                     "uniq": "0",                     "snmpv3_authprotocol": "0",                     "snmpv3_privprotocol": "0",                     "host_source": "1",                     "name_source": "0"                                      },                 {                     "dcheckid": "8",                     "druleid": "2",                     "type": "4",                     "key_": "",                     "snmp_community": "",                     "ports": "80",                     "snmpv3_securityname": "",                     "snmpv3_securitylevel": "0",                     "snmpv3_authpassphrase": "",                     "snmpv3_privpassphrase": "",                     "uniq": "0",                     "snmpv3_authprotocol": "0",                     "snmpv3_privprotocol": "0",                     "host_source": "1",                     "name_source": "0"                                     }             ]         },         {             "druleid": "6",             "proxy_hostid": "0",             "name": "Zabbix agent discovery",             "iprange": "192.168.1.1-255",             "delay": "1h",             "nextcheck": "0",             "status": "0",             "dchecks": [                 {                     "dcheckid": "10",                     "druleid": "6",                     "type": "9",                     "key_": "system.uname",                     "snmp_community": "",                     "ports": "10050",                     "snmpv3_securityname": "",                     "snmpv3_securitylevel": "0",                     "snmpv3_authpassphrase": "",                     "snmpv3_privpassphrase": "",                     "uniq": "0",                     "snmpv3_authprotocol": "0",                     "snmpv3_privprotocol": "0",                     "host_source": "2",                     "name_source": "3"                                     }             ]         }     ],     "id": 1 } ```
pt-br	#### Recupere todas as regras de descoberta  Recupere todas as regras de descoberta configuradas e a descoberta as verifica usar.  Solicitação:  ``` {.java} {     "jsonrpc": "2.0",     "método": "drule.get",     "parâmetros": {         "saída": "estender",         "selectDChecks": "estender"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Resposta:  ``` {.java} {     "jsonrpc": "2.0",     "resultado": [         {             "druleid": "2",             "proxy_hostid": "0",             "nome": "Rede local",             "iprange": "192.168.3.1-255",             "atraso": "5s",             "nextcheck": "1348754327",             "estado": "0",             "dchecks": [                 {                     "dcheckid": "7",                     "druleid": "2",                     "tipo": "3",                     "chave_": "",                     "snmp_community": "",                     "portas": "21",                     "snmpv3_securityname": "",                     "snmpv3_securitylevel": "0",                     "snmpv3_authpassphrase": "",                     "snmpv3_privpassphrase": "",                     "único": "0",                     "snmpv3_authprotocol": "0",                     "snmpv3_privprotocol": "0",                     "host_source": "1",                     "name_source": "0"                 },                 {                     "dcheckid": "8",                     "druleid": "2",                     "tipo": "4",                     "chave_": "",                     "snmp_community": "",                     "portas": "80",                     "snmpv3_securityname": "",                     "snmpv3_securitylevel": "0",                     "snmpv3_authpassphrase": "",                     "snmpv3_privpassphrase": "",                     "único": "0",                     "snmpv3_authprotocol": "0",                     "snmpv3_privprotocol": "0",                     "host_source": "1",                     "name_source": "0"                 }             ]         },         {             "druleid": "6",             "proxy_hostid": "0",             "name": "Descoberta do agente Zabbix",             "iprange": "192.168.1.1-255",             "atraso": "1h",             "nextcheck": "0",             "estado": "0",             "dchecks": [                 {                     "dcheckid": "10",                     "druleid": "6",                     "tipo": "9",                     "key_": "system.uname",                     "snmp_community": "",                     "portas": "10050",                     "snmpv3_securityname": "",                     "snmpv3_securitylevel": "0",                     "snmpv3_authpassphrase": "",                     "snmpv3_privpassphrase": "",                     "único": "0",                     "snmpv3_authprotocol": "0",                     "snmpv3_privprotocol": "0",                     "host_source": "2",                     "name_source": "3"                 }             ]         }     ],     "id": 1 } ```

en-us	#### Retrieve all proxies  Retrieve all configured proxies and their interfaces.  Request:  ```json {     "jsonrpc": "2.0",     "method": "proxy.get",     "params": {         "output": "extend",         "selectInterface": "extend"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": [         {             "host": "Active proxy",             "status": "5",             "lastaccess": "0",             "description": "",             "tls_connect": "1",             "tls_accept": "1",             "tls_issuer": "",             "tls_subject": "",             "proxy_address": "",             "auto_compress": "0",             "proxyid": "30091",             "interface": []         },         {             "host": "Passive proxy",             "status": "6",             "lastaccess": "0",             "description": "",             "tls_connect": "1",             "tls_accept": "1",             "tls_issuer": "",             "tls_subject": "",             "proxy_address": "",             "auto_compress": "0",             "proxyid": "30092",             "interface": {                 "interfaceid": "30109",                 "hostid": "30092",                 "useip": "1",                 "ip": "127.0.0.1",                 "dns": "",                 "port": "10051"             ]         }     ],     "id": 1 } ```
pt-br	#### Recupere todos os proxies      Recupere todos os proxies configurados e suas interfaces.  Request:  ```json {     "jsonrpc": "2.0",     "method": "proxy.get",     "params": {         "output": "extend",         "selectInterface": "extend"     },     "auth": "038e1d7b1735c6a5436ee9eae095879e",     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": [         {             "host": "Active proxy",             "status": "5",             "lastaccess": "0",             "description": "",             "tls_connect": "1",             "tls_accept": "1",             "tls_issuer": "",             "tls_subject": "",             "proxy_address": "",             "auto_compress": "0",             "proxyid": "30091",             "interface": []         },         {             "host": "Passive proxy",             "status": "6",             "lastaccess": "0",             "description": "",             "tls_connect": "1",             "tls_accept": "1",             "tls_issuer": "",             "tls_subject": "",             "proxy_address": "",             "auto_compress": "0",             "proxyid": "30092",             "interface": {                 "interfaceid": "30109",                 "hostid": "30092",                 "useip": "1",                 "ip": "127.0.0.1",                 "dns": "",                 "port": "10051"             ]         }     ],     "id": 1 } ```