en-us	 ### Tags There are two different types of tags in services:   - Service tags  - Problem tags  #### Service tags  Service tags are used to match services with [service actions](/manual/config/notifications/action) and [SLAs](/manual/it_services/sla). These tags are specified at the *Tags* service configuration tab.  For mapping SLAs, *OR* logic is used: a service will be mapped to an SLA if it has at least one matching tag. In service actions, mapping rules are configurable and can use either *AND*, *OR*, or *AND/OR* logic.   ![](../../../assets/en/manual/config/service_tags.png){width=600}
es	 ### Etiquetas Hay dos tipos diferentes de etiquetas en los servicios:   - Etiquetas de servicio  - Etiquetas de problemas  #### Etiquetas de servicio  Las etiquetas de servicio se utilizan para hacer coincidir servicios con [acciones de servicio](/manual/config/notifications/action) y [SLA](/manual/it_services/sla). Estas etiquetas se especifican en la pestaña de configuración del servicio *Etiquetas*. Para asignar SLA, se utiliza la lógica *OR*: un servicio se asignará a un SLA si tiene al menos una etiqueta coincidente. En las acciones de servicio, las reglas de mapeo son configurables y pueden usar lógica *Y*, *O* o *Y/O*.  ![](../../../assets/en/manual/config/service_tags.png){width=600}

en-us	 ##### tan(value) {#tan}  The tangent of a value.  Parameter:   -   **value** - the value to check  For example, the tangent of a value '1' will be '1.55740772465'.  Example:      tan(last(/host/key))
es	 ##### tan(valor) {#tan}  La tangente de un valor.  Parámetro:  - **valor** - el valor a comprobar  Por ejemplo, la tangente de un valor '1' será '1,55740772465'.  Ejemplo:      tan(last(/host/key))

en-us	# task.create
es	# task.create

en-us	# task.get
es	# task.get

en-us	##### Task manager  If the 'Allow manual close' setting is enabled for trigger, then it's possible to manually close problem events generated by the trigger. This is done in the frontend when [updating a problem](/manual/acknowledgment#updating_problems). The event is not closed directly – instead a 'close event' task is created, which is handled by the task manager shortly. The task manager will generate a corresponding OK event and the problem event will be closed.
es	##### Administrador de tareas  Si la configuración 'Permitir cierre manual' está habilitada para el iniciador, entonces es posible cerrar manualmente los eventos de problemas generados por el iniciador. Esto se realiza en la interfaz al [actualizar un problema](/manual/acknowledgement#updating_problems). El evento no es cerrado directamente; en su lugar, se crea una tarea de 'cerrar evento', que es manejada por el administrador de tareas a la mayor brevedad. El administrador de tareas generará el evento OK correspondiente y el evento de problema se cerrará.

en-us	# > Task object  The following objects are directly related to the `task` API.  The task object has the following properties:  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |taskid|string|ID of the task.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *read-only*| |type|integer|Type of the task.<br><br>Possible values:<br>1 - Diagnostic information;<br>2 - Refresh proxy configuration;<br>6 - Execute now.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *required*| |status|integer|Status of the task.<br><br>Possible values:<br>1 - new task;<br>2 - task in progress;<br>3 - task is completed;<br>4 - task is expired.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *read-only*| |clock|timestamp|Time when the task was created.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *read-only*| |ttl|integer|The time in seconds after which task expires.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *read-only*| |proxy\_hostid|string|ID of the proxy about which diagnostic information statistic is collected.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *supported* if `type` is set to "Diagnostic information" or "Refresh proxy configuration"| |request|object|Task request object according to the task type:<br>Object of 'Execute now' task is [described in detail below](/manual/api/reference/task/object#check_now_request_object);<br>Object of 'Refresh proxy configuration' task is [described in detail below](/manual/api/reference/task/object#refresh_proxy_configuration);<br>Object of 'Diagnostic information' task is [described in detail below](/manual/api/reference/task/object#diagnostic_information_request_object).<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *required*| |result|object|Result object of the diagnostic information task.<br>May contain NULL if result is not yet ready.<br>Result object is [described in detail below](/manual/api/reference/task/object#statistic_result_object).<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *read-only*|
es	# > Objeto de tarea  Los siguientes objetos están directamente relacionados con la API `task`.  El objeto de tarea tiene las siguientes propiedades:  |Propiedad|[Tipo](/manual/api/reference_commentary#data_types)|Descripción| |--|--|------| |taskid|cadena|ID de la tarea.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *solo lectura*| |type|entero|Tipo de tarea.<br><br>Valores posibles:<br>1 - Información de diagnóstico;<br>2 - Actualizar la configuración del proxy;<br>6 - Ejecutar ahora.<br><br> [Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *obligatorio*| |status|entero|Estado de la tarea.<br><br>Valores posibles:<br>1 - nueva tarea;<br>2 - tarea en progreso;<br>3 - tarea completada;<br>4 - la tarea ha caducado.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *solo lectura*| |clock|marca de tiempo|Hora en que se creó la tarea.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *solo lectura*| |ttl|integer|El tiempo en segundos después del cual caduca la tarea.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *solo lectura*| |proxy\_hostid|cadena|ID del proxy sobre el cual se recopila la estadística de información de diagnóstico.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *compatible* si `type` está configurado en "Información de diagnóstico" o "Actualizar configuración de proxy"| |request|objeto|Objeto de solicitud de tarea según el tipo de tarea:<br>El objeto de la tarea 'Ejecutar ahora' se [describe en detalle a continuación](/manual/api/reference/task/object#check_now_request_object);<br>Objeto de la tarea 'Actualizar configuración de proxy' se [describe en detalle a continuación](/manual/api/reference/task/object#refresh_proxy_configuration);<br>El objeto de la tarea 'Información de diagnóstico' se [describe en detalle a continuación](/manual/ api/reference/task/object#diagnostic_information_request_object).<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *obligatorio*| |result|objeto|Objeto de resultado de la tarea de información de diagnóstico.<br>Puede contener NULL si el resultado aún no está listo.<br>El objeto de resultado se [describe en detalle a continuación](/manual/api/reference/task/object# statistic_result_object).<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *solo lectura*|

en-us	#### Tasks  Interact with Zabbix server task manager, creating tasks and retrieving response.  [Task API](/manual/api/reference/task)
es	#### Tareas  Interactúe con el administrador de tareas del servidor Zabbix, creando tareas y obteniendo su respuesta.  [API de Tareas](/manual/api/reference/task)

en-us	# Task  This class is designed to work with tasks (such as checking items or low-level discovery rules without config reload).  Object references:\  -   [Task](/manual/api/reference/task/object) -   ['Execute now' request     object](/manual/api/reference/task/object#check_now_request_object) -   ['Diagnostic information' request     object](/manual/api/reference/task/object#diagnostic_information_request_object) -   [Statistic request     object](/manual/api/reference/task/object#statistic_request_object) -   [Statistic result     object](/manual/api/reference/task/object#statistic_result_object)  Available methods:\  -   [task.create](/manual/api/reference/task/create) - creating new     tasks -   [task.get](/manual/api/reference/task/get) - retrieving tasks
es	# Tarea  Esta clase está diseñada para trabajar con tareas (como comprobar métricas o reglas de descubrimiento de bajo nivel sin recargar la configuración).  Referencias de objetos:\  - [Tarea](/manual/api/reference/task/object) - [Objeto de solicitud 'Ejecutar ahora'](/manual/api/reference/task/object#check_now_request_object) - [Objeto de solicitud de 'información de diagnóstico'](/manual/api/reference/task/object#diagnostic_information_request_object) - [Objeto de solicitud de estadística](/manual/api/reference/task/object#statistic_request_object) - [Objeto de resultado de estadística](/manual/api/reference/task/object#statistic_result_object)  Métodos disponibles:\  - [task.create](/manual/api/reference/task/create) - creando nuevas     tareas - [task.get](/manual/api/reference/task/get) - recuperando tareas

en-us	# template.create
es	# template.create

en-us	# templatedashboard.create
es	# templatedashboard.create

en-us	# templatedashboard.delete
es	# templatedashboard.delete

en-us	# templatedashboard.get
es	# templatedashboard.get

en-us	# > Template dashboard object  The following objects are directly related to the `templatedashboard` API.
es	# > Objeto de plantilla de tablero  Los siguientes objetos están directamente relacionados con el API `templatedashboard`.

en-us	### Template dashboard page  The template dashboard page object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |dashboard\_pageid|string|ID of the dashboard page.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *read-only*| |name|string|Dashboard page name.<br><br>Default: empty string.| |display\_period|integer|Dashboard page display period (in seconds).<br><br>Possible values: 0, 10, 30, 60, 120, 600, 1800, 3600.<br><br>Default: 0 (will use the default page display period).| |widgets|array|Array of the [template dashboard widget](object#template_dashboard_widget) objects.|
es	### Página de la plantilla de tablero  El objeto de página de la plantilla de tablero tiene las siguientes propiedades.  |Propiedad|[Tipo](/manual/api/reference_commentary#data_types)|Descripción| |--|--|------| |dashboard\_pageid|cadena|ID de la página del tablero.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *solo lectura*| |name|cadena|Nombre de la página del tablero.<br><br>Predeterminado: cadena vacía.| |display\_period|entero|Período de visualización de la página del tablero (en segundos).<br><br>Valores posibles: 0, 10, 30, 60, 120, 600, 1800, 3600.<br><br>Predeterminado: 0 (Utilizará el período de visualización de página predeterminado).| |widgets|matriz|Matriz de objetos [widget de la plantilla de tablero](object#template_dashboard_widget).|

en-us	##### Template dashboard tags  |Element|Element property|Required|Type|Range^**[1](#footnotes)**^|Description| |--|--|-|--|----|--------| |dashboards| |\-| | |Root element for template dashboards.| | |uuid|x|`string`| |Unique identifier for this dashboard.| | |name|x|`string`| |Template dashboard name.| | |display period|\-|`integer`| |Display period of dashboard pages.| | |auto\_start|\-|`string`|0 - no<br>1 - yes|Slideshow auto start.| |pages| |\-| | |Root element for template dashboard pages.| | |name|\-|`string`| |Page name.| | |display period|\-|`integer`| |Page display period.| | |sortorder|\-|`integer`| |Page sorting order.| |widgets| |\-| | |Root element for template dashboard widgets.| | |type|x|`string`| |Widget type.| | |name|\-|`string`| |Widget name.| | |x|\-|`integer`|0-23|Horizontal position from the left side of the template dashboard.| | |y|\-|`integer`|0-62|Vertical position from the top of the template dashboard.| | |width|\-|`integer`|1-24|Widget width.| | |height|\-|`integer`|2-32|Widget height.| | |hide\_header|\-|`string`|0 - no<br>1 - yes|Hide widget header.| |fields| |\-| | |Root element for the template dashboard widget fields.| | |type|x|`string`|0 - INTEGER<br>1 - STRING<br>3 - HOST<br>4 - ITEM<br>5 - ITEM\_PROTOTYPE<br>6 - GRAPH<br>7 - GRAPH\_PROTOTYPE|Widget field type.| | |name|x|`string`| |Widget field name.| | |value|x|mixed| |Widget field value, depending on the field type.|
es	##### Etiquetas de plantilla del tablero  |Elemento|Propiedad del elemento|Obligatorio|Tipo|Rango^**[1](#footnotes)**^|Descripción| |--|--|-|--|----|--------| |dashboards| |\-| | |Elemento raíz para plantillas de tableros.| | |uuid|x|`cadena`| |Identificador único para este tablero.| | |name|x|`cadena`| |Nombre de la plantilla del tablero.| | |display period|\-|`entero`| |Período de visualización de las páginas del tablero.| | |auto\_start|\-|`string`|0 - no<br>1 - sí|Inicio automático de presentación de diapositivas.| |pages| |\-| | |Elemento raíz para las páginas de la plantilla del tablero.| | |name|\-|`cadena`| |Nombre de la página.| | |display period|\-|`entero`| |Período de visualización de la página.| | |sortorder|\-|`entero`| |Orden de clasificación de páginas.| |widgets| |\-| | |Elemento raíz para los widgets de la plantilla del tablero.| | |type|x|`cadena`| |Tipo de widget.| | |name|\-|`cadena`| |Nombre del widget.| | |x|\-|`integer`|0-23|Posición horizontal desde el lado izquierdo del panel de la plantilla.| | |y|\-|`integer`|0-62|Posición vertical desde la parte superior del panel de la plantilla.| | |width|\-|`integer`|1-24|Ancho del widget.| | |height|\-|`integer`|2-32|Altura del widget.| | |hide\_header|\-|`string`|0 - no<br>1 - sí|Ocultar encabezado del widget.| |fields| |\-| | |Elemento raíz para los campos del widget de la plantilla del tablero.| | |type|x|`cadena`|0 - ENTERO<br>1 - CADENA<br>3 - EQUIPO<br>4 - MÉTRICA<br>5 - MÉTRICA\_PROTOTIPO<br>6 - GRÁFICO<br>7 - GRÁFICO \_PROTOTIPO|Tipo de campo de widget.| | |name|x|`cadena`| |Nombre del campo del widget.| | |value|x|mixto| |Valor del campo del widget, según el tipo de campo.|

en-us	### Template dashboard  The template dashboard object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |dashboardid|string|ID of the template dashboard.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *read-only*<br>- *required* for update operations| |name|string|Name of the template dashboard.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *required* for create operations| |templateid|string|ID of the template the dashboard belongs to.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *constant*<br>- *required* for create operations| |display\_period|integer|Default page display period (in seconds).<br><br>Possible values: 10, 30, 60, 120, 600, 1800, 3600.<br><br>Default: 30.| |auto\_start|integer|Auto start slideshow.<br><br>Possible values:<br>0 - do not auto start slideshow;<br>1 - *(default)* auto start slideshow.| |uuid|string|Universal unique identifier, used for linking imported template dashboards to already existing ones. Auto-generated, if not given.|
es	### Plantilla de tablero  El objeto de la plantilla de tablero tiene las siguientes propiedades.  |Propiedad|[Tipo](/manual/api/reference_commentary#data_types)|Descripción| |--|--|------| |dashboardid|cadena|ID de la plantilla de tablero.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *solo lectura*<br>- *obligatorio* para operaciones de actualización| |name|cadena|Nombre de la plantilla de tablero.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *obligatorio* para operaciones de creación| |templateid|cadena|ID de la plantilla a la que pertenece el tablero.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *constante*<br>- *obligatorio * para crear operaciones| |display\_period|entero|Período de visualización de página predeterminado (en segundos).<br><br>Valores posibles: 10, 30, 60, 120, 600, 1800, 3600.<br><br>Predeterminado: 30.| |auto\_start|entero|Iniciar presentación de diapositivas automáticamente.<br><br>Valores posibles:<br>0 - no iniciar presentación de diapositivas automáticamente;<br>1 - *(predeterminado)* iniciar presentación de diapositivas automáticamente.| |uuid|cadena|Identificador único universal, utilizado para vincular plantillas de tablero importadas a las ya existentes. Generado automáticamente, si no se proporciona.|

en-us	# Template dashboard  This class is designed to work with template dashboards.  Object references:\  -   [Template dashboard](/manual/api/reference/templatedashboard/object) -   [Template dashboard     page](/manual/api/reference/templatedashboard/object#template_dashboard_page) -   [Template dashboard     widget](/manual/api/reference/templatedashboard/object#template_dashboard_widget) -   [Template dashboard widget     field](/manual/api/reference/templatedashboard/object#template_dashboard_widget_field)  Available methods:\  -   [templatedashboard.create](/manual/api/reference/templatedashboard/create) -     creating new template dashboards -   [templatedashboard.delete](/manual/api/reference/templatedashboard/delete) -     deleting template dashboards -   [templatedashboard.get](/manual/api/reference/templatedashboard/get) -     retrieving template dashboards -   [templatedashboard.update](/manual/api/reference/templatedashboard/update) -     updating template dashboards
es	# Plantilla de tablero  Esta clase está diseñada para trabajar con plantillas de tableros.  Referencias de objetos:\  -   [Plantilla de tablero](/manual/api/reference/tempdedashboard/object) -   [Página de plantilla de tablero](/manual/api/reference/tempdedashboard/object#template_dashboard_page) -   [Widget de plantilla de tablero](/manual/api/reference/tempdedashboard/object#template_dashboard_widget) -   [Campo de widget de plantilla     de tablero](/manual/api/reference/tempdedashboard/object#template_dashboard_widget_field)  Métodos disponibles:\  -   [templatedashboard.create](/manual/api/reference/tablerotemplado/create) -     crear nuevas plantillas de tablero -   [tempdedashboard.delete](/manual/api/reference/tempdedashboard/delete) -     eliminar plantillas de tablero -   [tempdedashboard.get](/manual/api/reference/tempdedashboard/get) -     recuperar plantillas de tablero -   [tempdedashboard.update](/manual/api/reference/tempdedashboard/update) -     actualizar plantillas de tablero

en-us	# templatedashboard.update
es	# templatedashboard.update

en-us	### Template dashboard widget field  The template dashboard widget field object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |type|integer|Type of the widget field.<br><br>Possible values:<br>0 - Integer;<br>1 - String;<br>4 - Item;<br>5 - Item prototype;<br>6 - Graph;<br>7 - Graph prototype.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *required*| |name|string|Widget field name.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *required*| |value|mixed|Widget field value depending on type.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *required*|
es	### Campo del widget de la plantilla de tablero  El objeto de campo del widget de la plantilla de tablero tiene las siguientes propiedades.  |Propiedad|[Tipo](/manual/api/reference_commentary#data_types)|Descripción| |--|--|------| |type|entero|Tipo del campo del widget.<br><br>Valores posibles:<br>0 - Entero;<br>1 - Cadena;<br>4 - Artículo;<br>5 - Prototipo de artículo;< br>6 - Gráfico;<br>7 - Prototipo de gráfico.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *obligatorio*| |name|cadena|Nombre del campo del widget.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *obligatorio*| |value|mixto|Valor del campo del widget según el tipo.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *obligatorio*|

en-us	### Template dashboard widget  The template dashboard widget object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |widgetid|string|ID of the dashboard widget.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *read-only*| |type|string|Type of the dashboard widget.<br><br>Possible values:<br>clock - Clock;<br>graph - Graph (classic);<br>graphprototype - Graph prototype;<br>item - Item value;<br>plaintext - Plain text;<br>url - URL.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *required*| |name|string|Custom widget name.| |x|integer|A horizontal position from the left side of the dashboard.<br><br>Valid values range from 0 to 23.| |y|integer|A vertical position from the top of the dashboard.<br><br>Valid values range from 0 to 62.| |width|integer|The widget width.<br><br>Valid values range from 1 to 24.| |height|integer|The widget height.<br><br>Valid values range from 2 to 32.| |view\_mode|integer|The widget view mode.<br><br>Possible values:<br>0 - (default) default widget view;<br>1 - with hidden header;| |fields|array|Array of the [template dashboard widget field](object#template_dashboard_widget_field) objects.|
es	### Widget de plantilla de tablero  El objeto del widget de la plantilla de tablero tiene las siguientes propiedades.  |Propiedad|[Tipo](/manual/api/reference_commentary#data_types)|Descripción| |--|--|------| |widgetid|cadena|ID del widget del tablero.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *solo lectura*| |type|cadena|Tipo del widget del tablero.<br><br>Valores posibles:<br>clock - Reloj;<br>graph - Gráfico (clásico);<br>graphprototype - Prototipo de gráfico;<br>item - Valor de la métrica;<br>plaintext - Texto sin formato;<br>url - URL.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *obligatorio*| |name|cadena|Nombre del widget personalizado.| |x|entero|Una posición horizontal desde el lado izquierdo del tablero.<br><br>Los valores válidos van de 0 a 23.| |y|entero|Una posición vertical desde la parte superior del tablero.<br><br>Los valores válidos van de 0 a 62.| |width|entero|El ancho del widget.<br><br>Los valores válidos oscilan entre 1 y 24.| |height|entero|La altura del widget.<br><br>Los valores válidos oscilan entre 2 y 32.| |view\_mode|entero|El modo de vista del widget.<br><br>Valores posibles:<br>0 - (predeterminado) vista predeterminada del widget;<br>1 - con encabezado oculto;| |fields|matriz|Matriz de los objetos [campo del widget de la plantilla de tablero](object#template_dashboard_widget_field).|

en-us	# template.delete
es	# template.delete

en-us	#### Template design  Templates were designed with the following in mind:  -   User macros are used as much as possible so triggers can be tuned by     the user; -   Low-level discovery is used as much as possible to minimize the     number of unsupported items; -   All templates depend on Template ICMP Ping so all devices are also     checked by ICMP; -   Items don't use any MIBs - SNMP OIDs are used in items and low-level     discoveries. So it's not necessary to load any MIBs into Zabbix for     templates to work; -   Loopback network interfaces are filtered when discovering as well as     interfaces with ifAdminStatus = down(2) -   64bit counters are used from IF-MIB::ifXTable where possible. If it     is not supported, default 32bit counters are used instead.   All discovered network interfaces have a trigger that monitors its operational status (link), for example:     ```     {$IFCONTROL:"{#IFNAME}"}=1 and last(/Alcatel Timetra TiMOS SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Alcatel Timetra TiMOS SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Alcatel Timetra TiMOS SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))    ```  -   If you do no want to monitor this condition for a specific     interface create a user macro with context with the value 0. For example:  ![](../../../../assets/en/manual/config/template_ifcontrol.png)  where Gi0/0 is {\#IFNAME}. That way the trigger is not used any more for this specific interface.  -   You can also change the default behavior for all triggers not to fire and activate this trigger only to limited number of interfaces like uplinks:  ![](../../../../assets/en/manual/config/template_ifcontrol2.png)
es	#### Diseño de plantilla  Las plantillas se diseñaron teniendo en cuenta lo siguiente:  - Las macros de usuario se utilizan tanto como sea posible para que los iniciadores puedan ajustarse por     el usuario; - El descubrimiento de bajo nivel se utiliza tanto como sea posible para minimizar el     número de métricas no soportadas; - Todas las plantillas dependen de la plantilla ICMP Ping, por lo que todos los dispositivos también son     comprobados por ICMP; - Las métricas no utilizan ningún MIB - Los OID SNMP se utilizan en métricas y en niveles bajos     descubrimientos. Por lo tanto, no es necesario cargar ningún MIB en Zabbix para que     las plantillas trabajen; - Las interfaces de red loopback se filtran al descubrir y también     interactúan con ifAdminStatus = down(2) - Se utilizan contadores de 64 bits de IF-MIB::ifXTable siempre que sea posible. Si      no es compatible, en su lugar se utilizan contadores predeterminados de 32 bits.   Todas las interfaces de red descubiertas tienen un iniciador que monitorea su estado operativo (enlace), por ejemplo:     ```     {$IFCONTROL:"{#IFNAME}"}=1 and last(/Alcatel Timetra TiMOS SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Alcatel Timetra TiMOS SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Alcatel Timetra TiMOS SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))    ```  - Si no desea monitorear esta condición para una interfaz específica     cree una macro de usuario con contexto con el valor 0. Por ejemplo:  ![](../../../../assets/en/manual/config/template_ifcontrol.png)  donde Gi0/0 es {\#IFNAME}. De esta manera el iniciador ya no se usa para esta interfaz específica.  - También puede cambiar el comportamiento predeterminado de todos los iniciadores para que no se activen y activar este iniciador solo en un número limitado de interfaces como enlaces ascendentes:  ![](../../../../assets/en/manual/config/template_ifcontrol2.png)

en-us	# template.get
es	# template.get

en-us	##### Template graph tags  |Element|Element property|Required|Type|Range^**[1](#footnotes)**^|Description| |--|--|-|--|----|--------| |graphs| |\-| | |Root element for graphs.| | |uuid|x|`string`| |Unique identifier for this graph.| | |name|x|`string`| |Graph name.| | |width|\-|`integer`|20-65535 (default: 900)|Graph width, in pixels. Used for preview and for pie/exploded graphs.| | |height|\-|`integer`|20-65535 (default: 200)|Graph height, in pixels. Used for preview and for pie/exploded graphs.| | |yaxismin|\-|`double`|Default: 0|Value of Y axis minimum.<br><br>Used if 'ymin\_type\_1' is FIXED.| | |yaxismax|\-|`double`|Default: 0|Value of Y axis maximum.<br><br>Used if 'ymax\_type\_1' is FIXED.| | |show\_work\_period|\-|`string`|0 - NO<br>1 - YES (default)|Highlight non-working hours.<br><br>Used by normal and stacked graphs.| | |show\_triggers|\-|`string`|0 - NO<br>1 - YES (default)|Display simple trigger values as a line.<br><br>Used by normal and stacked graphs.| | |type|\-|`string`|0 - NORMAL (default)<br>1 - STACKED<br>2 - PIE<br>3 - EXPLODED|Graph type.| | |show\_legend|\-|`string`|0 - NO<br>1 - YES (default)|Display graph legend.| | |show\_3d|\-|`string`|0 - NO (default)<br>1 - YES|Enable 3D style.<br><br>Used by pie and exploded pie graphs.| | |percent\_left|\-|`double`|Default:0|Show the percentile line for left axis.<br><br>Used only for normal graphs.| | |percent\_right|\-|`double`|Default:0|Show the percentile line for right axis.<br><br>Used only for normal graphs.| | |ymin\_type\_1|\-|`string`|0 - CALCULATED (default)<br>1 - FIXED<br>2 - ITEM|Minimum value of Y axis.<br><br>Used by normal and stacked graphs.| | |ymax\_type\_1|\-|`string`|0 - CALCULATED (default)<br>1 - FIXED<br>2 - ITEM|Maximum value of Y axis.<br><br>Used by normal and stacked graphs.| |ymin\_item\_1| |\-| | |Individual item details.<br><br>Required if 'ymin\_type\_1' is ITEM.| | |host|x|`string`| |Item host.| | |key|x|`string`| |Item key.| |ymax\_item\_1| |\-| | |Individual item details.<br><br>Required if 'ymax\_type\_1' is ITEM.| | |host|x|`string`| |Item host.| | |key|x|`string`| |Item key.| |graph\_items| |x| | |Root element for graph items.| | |sortorder|\-|`integer`| |Draw order. The smaller value is drawn first. Can be used to draw lines or regions behind (or in front of) another.| | |drawtype|\-|`string`|0 - SINGLE\_LINE (default)<br>1 - FILLED\_REGION<br>2 - BOLD\_LINE<br>3 - DOTTED\_LINE<br>4 - DASHED\_LINE<br>5 - GRADIENT\_LINE|Draw style of the graph item.<br><br>Used only by normal graphs.| | |color|\-|`string`| |Element color (6 symbols, hex).| | |yaxisside|\-|`string`|0 - LEFT (default)<br>1 - RIGHT|Side of the graph where the graph item's Y scale will be drawn.<br><br>Used by normal and stacked graphs.| | |calc\_fnc|\-|`string`|1 - MIN<br>2 - AVG (default)<br>4 - MAX<br>7 - ALL (minimum, average and maximum; used only by simple graphs)<br>9 - LAST (used only by pie and exploded pie graphs)|Data to draw if more than one value exists for an item.| | |type|\-|`string`|0 - SIMPLE (default)<br>2 - GRAPH\_SUM (value of the item represents the whole pie; used only by pie and exploded pie graphs)|Graph item type.| |item| |x| | |Individual item.| | |host|x|`string`| |Item host.| | |key|x|`string`| |Item key.|
es	##### Etiquetas de plantilla de gráfico   |Elemento|Propiedad del elemento|Obligatorio|Tipo|Rango^**[1](#footnotes)**^|Descripción| |--|--|-|--|----|--------| |graphs| |\-| | |Elemento raíz para gráficos.| | |uuid|x|`cadena`| |Identificador único para este gráfico.| | |name|x|`cadena`| |Nombre del gráfico.| | |width|\-|`integer`|20-65535 (predeterminado: 900)|Ancho del gráfico, en píxeles. Se utiliza para vista previa y para gráficos circulares/explotados.| | |height|\-|`integer`|20-65535 (predeterminado: 200)|Altura del gráfico, en píxeles. Se utiliza para vista previa y para gráficos circulares/explotados.| | |yaxismin|\-|`double`|Predeterminado: 0|Valor mínimo del eje Y.<br><br>Se utiliza si 'ymin\_type\_1' es FIJO.| | |yaxismax|\-|`double`|Predeterminado: 0|Valor del máximo del eje Y.<br><br>Se utiliza si 'ymax\_type\_1' es FIJO.| | |show\_work\_period|\-|`string`|0 - NO<br>1 - SÍ (predeterminado)|Resaltar horas no laborales.<br><br>Usado por gráficos normales y apilados.| | |show\_triggers|\-|`string`|0 - NO<br>1 - SÍ (predeterminado)|Muestra valores de activación simples como una línea.<br><br>Usado por gráficos normales y apilados.| | |type|\-|`cadena`|0 - NORMAL (predeterminado)<br>1 - APILADO<br>2 - PIE<br>3 - EXPLODADO|Tipo de gráfico.| | |show\_legend|\-|`string`|0 - NO<br>1 - SÍ (predeterminado)|Mostrar leyenda del gráfico.| | |show\_3d|\-|`string`|0 - NO (predeterminado)<br>1 - SÍ|Habilitar estilo 3D.<br><br>Usado por gráficos circulares y desglosados.| | |percent\_left|\-|`double`|Predeterminado:0|Muestra la línea percentil para el eje izquierdo.<br><br>Se usa solo para gráficos normales.| | |percent\_right|\-|`double`|Predeterminado:0|Muestra la línea percentil para el eje derecho.<br><br>Se usa solo para gráficos normales.| | |ymin\_type\_1|\-|`string`|0 - CALCULADO (predeterminado)<br>1 - FIJO<br>2 - ITEM|Valor mínimo del eje Y.<br><br>Usado por normal y apilado gráficos.| | |ymax\_type\_1|\-|`string`|0 - CALCULADO (predeterminado)<br>1 - FIJO<br>2 - ITEM|Valor máximo del eje Y.<br><br>Usado por normal y apilado gráficos.| |ymin\_item\_1| |\-| | |Detalles del artículo individual.<br><br>Obligatorio si 'ymin\_type\_1' es ITEM.| | |host|x|`cadena`| |Equipo de la métrica.| | |key|x|`cadena`| |Clave de la métrica.| |ymax\_item\_1| |\-| | |Detalles de la métrica individual.<br><br>Obligatorio si 'ymax\_type\_1' es ITEM.| | |host|x|`cadena`| |Equipo de la métrica.| | |key|x|`cadena`| |Clave de la métrica.| |graph\_items| |x| | |Elemento raíz para elementos del gráfico.| | |sortorder|\-|`entero`| |Orden de presentación. El valor más pequeño se extrae primero. Puede usarse para dibujar líneas o regiones detrás (o delante) de otra.| | |drawtype|\-|`string`|0 - SINGLE\_LINE (predeterminado)<br>1 - LLENADO\_REGION<br>2 - NEGRITA\_LINE<br>3 - PUNTOS\_LINE<br>4 - DISPONIBLE\_LINE <br>5 - GRADIENT\_LINE|Estilo de dibujo del elemento gráfico.<br><br>Usado solo por gráficos normales.| | |color|\-|`cadena`| |Color del elemento (6 símbolos, hexadecimal).| | |yaxisside|\-|`string`|0 - IZQUIERDA (predeterminada)<br>1 - DERECHA|Lado del gráfico donde se dibujará la escala Y del elemento del gráfico.<br><br>Usado por gráficos normales y apilados. | | |calc\_fnc|\-|`string`|1 - MIN<br>2 - AVG (predeterminado)<br>4 - MAX<br>7 - TODOS (mínimo, promedio y máximo; usado solo en gráficos simples)< br>9 - ÚLTIMO (usado solo en gráficos circulares y desglosados)|Datos para dibujar si existe más de un valor para una métrica.| | |type|\-|`string`|0 - SIMPLE (predeterminado)<br>2 - GRAPH\_SUM (el valor de la métrica representa el pastel completo; usado solo por gráficos circulares y desglosados)|Tipo de elemento gráfico.| |item| |x| | |Métrica individual.| | |host|x|`cadena`| |Equipo de la métrica.| | |key|x|`cadena`| |Clave de la métrica.|

en-us	# templategroup.create
es	# templategroup.create

en-us	# templategroup.delete
es	# templategroup.delete

en-us	# templategroup.get
es	# templategroup.get

en-us	# templategroup.massadd
es	# templategroup.massadd

en-us	# templategroup.massremove
es	# templategroup.massremove

en-us	# templategroup.massupdate
es	# templategroup.massupdate

en-us	# > Template group object  The following objects are directly related to the `templategroup` API.
es	# > Objeto de grupo de plantilla  Los siguientes objetos están directamente relacionados con la API `templategroup`.

en-us	# templategroup.propagate  
es	# templategroup.propagate  

en-us	### Template group  The template group object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |groupid|string|ID of the template group.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *read-only*<br>- *required* for update operations| |name|string|Name of the template group.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *required* for create operations| |uuid|string|Universal unique identifier, used for linking imported template groups to already existing ones. Auto-generated, if not given.|
es	### Grupo de plantillas  El objeto de grupo de plantilla tiene las siguientes propiedades.  |Propiedad|[Tipo](/manual/api/reference_commentary#data_types)|Descripción| |--|--|------| |groupid|cadena|ID del grupo de plantilla.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *solo lectura*<br>- *obligatorio* para operaciones de actualización| |name|cadena|Nombre del grupo de plantillas.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *obligatorio* para operaciones de creación| |uuid|cadena|Identificador único universal, utilizado para vincular grupos de plantillas importadas con las ya existentes. Generado automáticamente, si no se proporciona.|

en-us	# Template group  This class is designed to work with template groups.  Object references:\  -   [Template group](/manual/api/reference/templategroup/object#template_group)  Available methods:\  -   [templategroup.create](/manual/api/reference/templategroup/create) -     creating new template groups -   [templategroup.delete](/manual/api/reference/templategroup/delete) -     deleting template groups -   [templategroup.get](/manual/api/reference/templategroup/get) - retrieving     template groups -   [templategroup.massadd](/manual/api/reference/templategroup/massadd) -     adding related objects to template groups -   [templategroup.massremove](/manual/api/reference/templategroup/massremove) -     removing related objects from template groups -   [templategroup.massupdate](/manual/api/reference/templategroup/massupdate) -     replacing or removing related objects from template groups -   [templategroup.propagate](/manual/api/reference/templategroup/propagate) -     propagating permissions to template groups' subgroups -   [templategroup.update](/manual/api/reference/templategroup/update) -     updating template groups
es	# Grupo de plantillas  Esta clase está diseñada para trabajar con grupos de plantillas.  Referencias de objetos:\  - [Grupo de plantillas](/manual/api/reference/templategroup/object#template_group)  Métodos disponibles:\  - [templategroup.create](/manual/api/reference/templategroup/create) -     creando nuevos grupos de plantillas - [templategroup.delete](/manual/api/reference/templategroup/delete) -     eliminar grupos de plantillas - [templategroup.get](/manual/api/reference/templategroup/get) - recuperando     grupos de plantillas - [templategroup.massadd](/manual/api/reference/templategroup/massadd) -     agregar objetos relacionados a grupos de plantillas - [templategroup.massremove](/manual/api/reference/templategroup/massremove) -     eliminar objetos relacionados de grupos de plantillas - [templategroup.massupdate](/manual/api/reference/templategroup/massupdate) -     reemplazar o eliminar objetos relacionados de grupos de plantillas - [templategroup.propagate](/manual/api/reference/templategroup/propagate) -     propagar permisos a los subgrupos de grupos de plantillas - [templategroup.update](/manual/api/reference/templategroup/update) -     actualizando grupos de plantillas

en-us	# templategroup.update
es	# templategroup.update

en-us	##### Template item tags  |Element|Element property|Required|Type|Range^**[1](#footnotes)**^|Description| |--|--|-|--|----|--------| |items| |\-| | |Root element for items.| | |uuid|x|`string`| |Unique identifier for the item.| | |name|x|`string`| |Item name.| | |type|\-|`string`|0 - ZABBIX\_PASSIVE (default)<br>2 - TRAP<br>3 - SIMPLE<br>5 - INTERNAL<br>7 - ZABBIX\_ACTIVE<br>10 - EXTERNAL<br>11 - ODBC<br>12 - IPMI<br>13 - SSH<br>14 - TELNET<br>15 - CALCULATED<br>16 - JMX<br>17 - SNMP\_TRAP<br>18 - DEPENDENT<br>19 - HTTP\_AGENT<br>20 - SNMP\_AGENT<br>21 - ITEM\_TYPE\_SCRIPT|Item type.| | |snmp\_oid|\-|`string`| |SNMP object ID.<br><br>Required by SNMP items.| | |key|x|`string`| |Item key.| | |delay|\-|`string`|Default: 1m|Update interval of the item.<br><br>Accepts seconds or a time unit with suffix (30s, 1m, 2h, 1d).<br>Optionally one or more [custom intervals](/manual/config/items/item/custom_intervals) can be specified either as flexible intervals or scheduling.<br>Multiple intervals are separated by a semicolon.<br>User macros may be used. A single macro has to fill the whole field. Multiple macros in a field or macros mixed with text are not supported.<br>Flexible intervals may be written as two macros separated by a forward slash (e.g. `{$FLEX_INTERVAL}/{$FLEX_PERIOD}`).| | |history|\-|`string`|Default: 90d|Time period of how long the history data should be stored. A time period using the time suffix, a user macro or LLD macro.| | |trends|\-|`string`|Default: 365d|Time period of how long the trends data should be stored. A time period using the time suffix, a user macro or LLD macro.| | |status|\-|`string`|0 - ENABLED (default)<br>1 - DISABLED|Item status.| | |value\_type|\-|`string`|0 - FLOAT<br>1 - CHAR<br>2 - LOG<br>3 - UNSIGNED (default)<br>4 - TEXT|Received value type.| | |allowed\_hosts|\-|`string`| |List of IP addresses (comma delimited) of hosts allowed sending data for the item.<br><br>Used by trapper and HTTP agent items.| | |units|\-|`string`| |Units of returned values (bps, B, etc).| | |params|\-|`text`| |Additional parameters depending on the type of the item:<br>- executed script for Script, SSH and Telnet items;<br>- SQL query for database monitor items;<br>- formula for calculated items.| | |ipmi\_sensor|\-|`string`| |IPMI sensor.<br><br>Used only by IPMI items.| | |authtype|\-|`string`|Authentication type for SSH agent items:<br>0 - PASSWORD (default)<br>1 - PUBLIC\_KEY<br><br>Authentication type for HTTP agent items:<br>0 - NONE (default)<br>1 - BASIC<br>2 - NTLM|Authentication type.<br><br>Used only by SSH and HTTP agent items.| | |username|\-|`string`| |Username for authentication.<br>Used by simple check, SSH, Telnet, database monitor, JMX and HTTP agent items.<br><br>Required by SSH and Telnet items.<br>When used by JMX agent, password should also be specified together with the username or both properties should be left blank.| | |password|\-|`string`| |Password for authentication.<br>Used by simple check, SSH, Telnet, database monitor, JMX and HTTP agent items.<br><br>When used by JMX agent, username should also be specified together with the password or both properties should be left blank.| | |publickey|\-|`string`| |Name of the public key file.<br><br>Required for SSH agent items.| | |privatekey|\-|`string`| |Name of the private key file.<br><br>Required for SSH agent items.| | |port|\-|`string`| |Custom port monitored by the item.<br>Can contain user macros.<br><br>Used only by SNMP items.| | |description|\-|`text`| |Item description.| | |inventory\_link|\-|`string`|0 - NONE<br><br>Capitalized host inventory field name. For example:<br>4 - ALIAS<br>6 - OS\_FULL<br>14 - HARDWARE<br>etc.|Host inventory field that is populated by the item.<br><br>Refer to the [host inventory page](/manual/api/reference/host/object#host_inventory) for a list of supported host inventory fields and their IDs.| | |logtimefmt|\-|`string`| |Format of the time in log entries.<br>Used only by log items.| | |jmx\_endpoint|\-|`string`| |JMX endpoint.<br><br>Used only by JMX agent items.| | |url|\-|`string`| |URL string.<br><br>Required only for HTTP agent items.| | |allow\_traps|\-|`string`|0 - NO (default)<br>1 - YES|Allow to populate value as in a trapper item.<br><br>Used only by HTTP agent items.| | |follow\_redirects|\-|`string`|0 - NO<br>1 - YES (default)|Follow HTTP response redirects while polling data.<br><br>Used only by HTTP agent items.| |headers| |\-| | |Root element for HTTP(S) request headers, where header name is used as key and header value as value.<br>Used only by HTTP agent items.| | |name|x|`string`| |Header name.| | |value|x|`string`| |Header value.| | |http\_proxy|\-|`string`| |HTTP(S) proxy connection string.<br><br>Used only by HTTP agent items.| | |output\_format|\-|`string`|0 - RAW (default)<br>1 - JSON|How to process response.<br><br>Used only by HTTP agent items.| | |post\_type|\-|`string`|0 - RAW (default)<br>2 - JSON<br>3 - XML|Type of post data body.<br><br>Used only by HTTP agent items.| | |posts|\-|`string`| |HTTP(S) request body data.<br><br>Used only by HTTP agent items.| |query\_fields| |\-| | |Root element for query parameters.<br><br>Used only by HTTP agent items.| | |name|x|`string`| |Parameter name.| | |value|\-|`string`| |Parameter value.| | |request\_method|\-|`string`|0 - GET (default)<br>1 - POST<br>2 - PUT<br>3 - HEAD|Request method.<br><br>Used only by HTTP agent items.| | |retrieve\_mode|\-|`string`|0 - BODY (default)<br>1 - HEADERS<br>2 - BOTH|What part of response should be stored.<br><br>Used only by HTTP agent items.| | |ssl\_cert\_file|\-|`string`| |Public SSL Key file path.<br><br>Used only by HTTP agent items.| | |ssl\_key\_file|\-|`string`| |Private SSL Key file path.<br><br>Used only by HTTP agent items.| | |ssl\_key\_password|\-|`string`| |Password for SSL Key file.<br><br>Used only by HTTP agent items.| | |status\_codes|\-|`string`| |Ranges of required HTTP status codes separated by commas. Supports user macros.<br>Example: 200,200-{$M},{$M},200-400<br><br>Used only by HTTP agent items.| | |timeout|\-|`string`| |Item data polling request timeout. Supports user macros.<br><br>Used by HTTP agent and Script items.| | |verify\_host|\-|`string`|0 - NO (default)<br>1 - YES|Whether to validate that the host name for the connection matches the one in the host's certificate.<br><br>Used only by HTTP agent items.| | |verify\_peer|\-|`string`|0 - NO (default)<br>1 - YES|Whether to validate that the host's certificate is authentic.<br><br>Used only by HTTP agent items.| |parameters| |\-| | |Root element for user-defined parameters.<br><br>Used only by Script items.| | |name|x|`string`| |Parameter name.<br><br>Used only by Script items.| | |value|\-|`string`| |Parameter value.<br><br>Used only by Script items.| |value map| |\-| | |Value map.| | |name|x|`string`| |Name of the value map to use for the item.| |preprocessing| |\-| | |Root element for item value preprocessing.| |step| |\-| | |Individual item value preprocessing step.| | |type|x|`string`|1 - MULTIPLIER<br>2 - RTRIM<br>3 - LTRIM<br>4 - TRIM<br>5 - REGEX<br>6 - BOOL\_TO\_DECIMAL<br>7 - OCTAL\_TO\_DECIMAL<br>8 - HEX\_TO\_DECIMAL<br>9 - SIMPLE\_CHANGE (calculated as (received value-previous value))<br>10 - CHANGE\_PER\_SECOND (calculated as (received value-previous value)/(time now-time of last check))<br>11 - XMLPATH<br>12 - JSONPATH<br>13 - IN\_RANGE<br>14 - MATCHES\_REGEX<br>15 - NOT\_MATCHES\_REGEX<br>16 - CHECK\_JSON\_ERROR<br>17 - CHECK\_XML\_ERROR<br>18 - CHECK\_REGEX\_ERROR<br>19 - DISCARD\_UNCHANGED<br>20 - DISCARD\_UNCHANGED\_HEARTBEAT<br>21 - JAVASCRIPT<br>22 - PROMETHEUS\_PATTERN<br>23 - PROMETHEUS\_TO\_JSON<br>24 - CSV\_TO\_JSON<br>25 - STR\_REPLACE<br>26 - CHECK\_NOT\_SUPPORTED|Type of the item value preprocessing step.| | |parameters|\-| | |Root element for parameters of the item value preprocessing step.| | |parameter|x|`string`| |Individual parameter of the item value preprocessing step.| | |error\_handler|\-|`string`|0 - ORIGINAL\_ERROR (default)<br>1 - DISCARD\_VALUE<br>2 - CUSTOM\_VALUE<br>3 - CUSTOM\_ERROR|Action type used in case of preprocessing step failure.| | |error\_handler\_params|\-|`string`| |Error handler parameters used with 'error\_handler'.| |master\_item| |\-| | |Individual item master item.<br><br>Required by dependent items.| | |key|x|`string`| |Dependent item master item key value.<br><br>Recursion up to 3 dependent items and maximum count of dependent items equal to 29999 are allowed.| |triggers| |\-| | |Root element for simple triggers.| | |*For trigger element tag values, see template [trigger tags](/manual/xml_export_import/templates#template_trigger_tags).*|<|<|<|<| |tags| |\-| | |Root element for item tags.| | |tag|x|`string`| |Tag name.| | |value|\-|`string`| |Tag value.|
es	##### Etiquetas de plantillas de métricas  |Elemento|Propiedad del elemento|Obligatorio|Tipo|Rango^**[1](#footnotes)**^|Descripción| |--|--|-|--|----|--------| |items| |\-| | |Elemento raíz de las métricas.| | |uuid|x|`cadena`| |Identificador único de la métrica.| | |name|x|`cadena`| |Nombre de la métrica.| | |type|\-|`cadena`|0 - ZABBIX\_PASSIVE (predeterminado)<br>2 - TRAP<br>3 - SIMPLE<br>5 - INTERNO<br>7 - ZABBIX\_ACTIVE<br>10 - EXTERNO <br>11 - ODBC<br>12 - IPMI<br>13 - SSH<br>14 - TELNET<br>15 - CALCULADO<br>16 - JMX<br>17 - SNMP\_TRAP<br>18 - DEPENDIENTE <br>19 - HTTP\_AGENT<br>20 - SNMP\_AGENT<br>21 - ITEM\_TYPE\_SCRIPT|Tipo de métrica.| | |snmp\_oid|\-|`cadena`| |ID de objeto SNMP.<br><br>Requerido por los elementos SNMP.| | |key|x|`cadena`| |Clave de la métrica.| | |delay|\-|`string`|Predeterminado: 1m|Intervalo de actualización de la métrica.<br><br>Acepta segundos o una unidad de tiempo con sufijo (30s, 1m, 2h, 1d).<br>Opcionalmente uno o se pueden especificar más [intervalos personalizados](/manual/config/items/item/custom_intervals) como intervalos flexibles o como programación.<br>Varios intervalos están separados por un punto y coma.<br>Se pueden usar macros de usuario. Una sola macro tiene que llenar todo el campo. No se admiten múltiples macros en un campo ni macros mezcladas con texto.<br>Los intervalos flexibles se pueden escribir como dos macros separadas por una barra diagonal (por ejemplo, `{$FLEX_INTERVAL}/{$FLEX_PERIOD}`).| | |history|\-|`string`|Predeterminado: 90d|Período de tiempo durante el cual se deben almacenar los datos del historial. Un período de tiempo que utiliza el sufijo de tiempo, una macro de usuario o una macro LLD.| | |trends|\-|`string`|Predeterminado: 365d|Período de tiempo durante el cual se deben almacenar los datos de tendencias. Un período de tiempo que utiliza el sufijo de tiempo, una macro de usuario o una macro LLD.| | |status|\-|`string`|0 - HABILITADO (predeterminado)<br>1 - DESHABILITADO|Estado de la métrica.| | |value\_type|\-|`cadena`|0 - FLOAT<br>1 - CHAR<br>2 - LOG<br>3 - UNSIGNED (predeterminado)<br>4 - TEXTO|Tipo de valor recibido.| | |allowed\_hosts|\-|`cadena`| |Lista de direcciones IP (delimitadas por comas) de equipos a los que se permite enviar datos para la métrica.<br><br>Usado por métricas de captura y agente HTTP.| | |units|\-|`cadena`| |Unidades de valores devueltos (bps, B, etc.).| | |params|\-|`texto`| |Parámetros adicionales según el tipo de elemento:<br>- script ejecutado para elementos Script, SSH y Telnet;<br>- consulta SQL para elementos del monitor de base de datos;<br>- fórmula para elementos calculados.| | |ipmi\_sensor|\-|`cadena`| |Sensor IPMI.<br><br>Usado solo por métricas IPMI.| | |authtype|\-|`string`|Tipo de autenticación para métricas de agente SSH:<br>0 - CONTRASEÑA (predeterminada)<br>1 - PUBLIC\_KEY<br><br>Tipo de autenticación para elementos del agente HTTP:<br> 0 - NINGUNO (predeterminado)<br>1 - BÁSICO<br>2 - NTLM|Tipo de autenticación.<br><br>Usado solo por elementos de agente SSH y HTTP.| | |username|\-|`cadena`| |Nombre de usuario para autenticación.<br>Usado por verificación simple, SSH, Telnet, monitor de base de datos, elementos de agente JMX y HTTP.<br><br>Requerido por elementos SSH y Telnet.<br>Cuando lo usa el agente JMX, la contraseña debe También se debe especificar junto con el nombre de usuario o ambas propiedades deben dejarse en blanco.| | |password|\-|`cadena`| |Contraseña para autenticación.<br>Se utiliza mediante comprobación simple, SSH, Telnet, monitor de base de datos, métricas de agente JMX y HTTP.<br><br>Cuando lo utiliza el agente JMX, el nombre de usuario también debe especificarse junto con la contraseña o ambas propiedades. debe dejarse en blanco.| | |publickey|\-|`cadena`| |Nombre del archivo de clave pública.<br><br>Obligatorio para las métricas de agente SSH.| | |privatekey|\-|`cadena`| |Nombre del archivo de clave privada.<br><br>Obligatorio para las métricas de agente SSH.| | |port|\-|`cadena`| |Puerto personalizado monitoreado por la métrica.<br>Puede contener macros de usuario.<br><br>Usado solo por métricas SNMP.| | |description|\-|`texto`| |Descripción de la métrica.| | |inventory\_link|\-|`string`|0 - NINGUNO<br><br>Nombre del campo de inventario de host en mayúsculas. Por ejemplo:<br>4 - ALIAS<br>6 - SO\_FULL<br>14 - HARDWARE<br>etc.|Campo de inventario del equipo que se completa con la métrica.<br><br>Consulte la página de [inventario de equipo](/manual/api/reference/host/object#host_inventory) para obtener una lista de campos admitidos de inventario de equipo y sus ID.| | |logtimefmt|\-|`cadena`| |Formato de la hora en las entradas del registro.<br>Usado sólo por métricas del registro.| | |jmx\_endpoint|\-|`cadena`| |Punto final JMX.<br><br>Usado solo por métricas del agente JMX.| | |url|\-|`cadena`| |Cadena URL.<br><br>Obligatorio solo para métricas del agente HTTP.| | |allow\_traps|\-|`string`|0 - NO (predeterminado)<br>1 - SÍ|Permite completar el valor como en una métricas de captura.<br><br>Usado solo por métricas de agente HTTP.| | |follow\_redirects|\-|`string`|0 - NO<br>1 - SÍ (predeterminado)|Siga las redirecciones de respuesta HTTP mientras sondea los datos.<br><br>Usado solo por métricas del agente HTTP.| |headers| |\-| | |Elemento raíz para encabezados de solicitud HTTP(S), donde el nombre del encabezado se usa como clave y el valor del encabezado como valor.<br>Usado solo por métricas del agente HTTP.| | |name|x|`cadena`| |Nombre del encabezado.| | |value|x|`cadena`| |Valor del encabezado.| | |http\_proxy|\-|`cadena`| |Cadena de conexión de proxy HTTP(S).<br><br>Utilizada únicamente por métricas del agente HTTP.| | |output\_format|\-|`cadena`|0 - RAW (predeterminado)<br>1 - JSON|Cómo procesar la respuesta.<br><br>Usado solo por métricas del agente HTTP.| | |post\_type|\-|`string`|0 - RAW (predeterminado)<br>2 - JSON<br>3 - XML|Tipo de cuerpo de datos de la publicación.<br><br>Usado solo por métricas del agente HTTP. | | |posts|\-|`cadena`| |Datos del cuerpo de la solicitud HTTP(S).<br><br>Utilizado únicamente por métricas del agente HTTP.| |query\_fields| |\-| | |Elemento raíz para parámetros de consulta.<br><br>Utilizado únicamente por métricas del agente HTTP.| | |name|x|`cadena`| |Nombre del parámetro.| | |value|\-|`cadena`| |Valor del parámetro.| | |request\_method|\-|`cadena`|0 - GET (predeterminado)<br>1 - POST<br>2 - PUT<br>3 - HEAD|Método de solicitud.<br><br>Usado solo por métricas del agente HTTP.| | |retrieve\_mode|\-|`string`|0 - CUERPO (predeterminado)<br>1 - ENCABEZADOS<br>2 - AMBOS|Qué parte de la respuesta debe almacenarse.<br><br>Usado solo por métricas del agente HTTP.| | |ssl\_cert\_file|\-|`cadena`| |Ruta del archivo de clave SSL pública.<br><br>Utilizada únicamente por métricas del agente HTTP.| | |ssl\_key\_file|\-|`cadena`| |Ruta del archivo de clave SSL privada.<br><br>Utilizada únicamente por métricas del agente HTTP.| | |ssl\_key\_password|\-|`cadena`| |Contraseña para el archivo de clave SSL.<br><br>Utilizada únicamente por métricas del agente HTTP.| | |status\_codes|\-|`cadena`| |Rangos de códigos de estado HTTP requeridos separados por comas. Admite macros de usuario.<br>Ejemplo: 200,200-{$M},{$M},200-400<br><br>Usado solo por métricas del agente HTTP.| | |timeout|\-|`cadena`| |Tiempo de espera de solicitud de sondeo de datos de elementos. Admite macros de usuario.<br><br>Usado por el agente HTTP y métricas de secuencia de comandos.| | |verify\_host|\-|`cadena`|0 - NO (predeterminado)<br>1 - SÍ|Validar si el nombre de equipo en la URL está en el campo Nombre común o en el campo Nombre alternativo del sujeto del certificado de equipo.<br>< br>Usado sólo por métricas del agente HTTP.| | |verify\_peer|\-|`string`|0 - NO (predeterminado)<br>1 - SÍ|Validar si el certificado de host es auténtico.<br><br>Usado solo por métricas del agente HTTP.| |parameters| |\-| | |Elemento raíz para parámetros definidos por el usuario.<br><br>Utilizado únicamente por métricas de script.| | |name|x|`cadena`| |Nombre del parámetro.<br><br>Usado sólo por métricas de script.| | |value|\-|`cadena`| |Valor del parámetro.<br><br>Usado sólo por métricas de script.| |value map| |\-| | |Mapa de valores.| | |name|x|`cadena`| |Nombre del mapa de valores que se utilizará para la métrica.| |preprocessing| |\-| | |Elemento raíz para el preprocesamiento del valor de la métrica.| |step| |\-| | |Paso de preprocesamiento del valor de la métrica individual.| | |type|x|`cadena`|1 - MULTIPLICADOR<br>2 - RTRIM<br>3 - LTRIM<br>4 - TRIM<br>5 - REGEX<br>6 - BOOL\_TO\_DECIMAL<br>7 - OCTAL\_TO\_DECIMAL<br>8 - HEX\_TO\_DECIMAL<br>9 - SIMPLE\_CHANGE (calculado como (valor recibido-valor anterior))<br>10 - CAMBIO\_PER\_SECOND (calculado como (recibido valor-valor anterior)/(hora actual-hora de la última verificación))<br>11 - XMLPATH<br>12 - JSONPATH<br>13 - IN\_RANGE<br>14 - MATCHES\_REGEX<br>15 - NOT \_MATCHES\_REGEX<br>16 - COMPROBAR\_JSON\_ERROR<br>17 - COMPROBAR\_XML\_ERROR<br>18 - COMPROBAR\_REGEX\_ERROR<br>19 - DESCARTAR\_SIN CAMBIAR<br>20 - DESCARTAR\_SIN CAMBIAR \_HEARTBEAT<br>21 - JAVASCRIPT<br>22 - PROMETHEUS\_PATTERN<br>23 - PROMETHEUS\_TO\_JSON<br>24 - CSV\_TO\_JSON<br>25 - STR\_REPLACE<br>26 - CHECK\_NOT\_SUPPORTED|Tipo de paso de preprocesamiento del valor de la métrica.| | |parameters|\-| | |Elemento raíz para los parámetros del paso de preprocesamiento del valor de la métrica.| | |parameter|x|`cadena`| |Parámetro individual del paso de preprocesamiento del valor de la métrica.| | |error\_handler|\-|`string`|0 - ORIGINAL\_ERROR (predeterminado)<br>1 - DESCARTAR\_VALUE<br>2 - CUSTOM\_VALUE<br>3 - CUSTOM\_ERROR|Tipo de acción utilizado en caso de falla en el paso de preprocesamiento.| | |error\_handler\_params|\-|`cadena`| |Parámetros del controlador de errores utilizados con 'error\_handler'.| |master\_item| |\-| | |Métrica principal de la métrica dependiente.<br><br>Requerido por métricas dependientes.| | |key|x|`cadena`| |Valor de clave de métrica maestra de métrica dependiente.<br><br>Se permite la recursividad de hasta 3 métricas dependientes y un recuento máximo de métricas dependientes igual a 29999.| |triggers| |\-| | |Elemento raíz para iniciadores simples.| | |*Para conocer los valores de las etiquetas de las métricas desencadenantes, consulte la plantilla [etiquetas desencadenantes](/manual/xml_export_import/templates#template_trigger_tags).*|<|<|<|<| |tags| |\-| | |Elemento raíz para etiquetas de métricas.| | |tag|x|`cadena`| |Nombre de etiqueta.| | |value|\-|`cadena`| |Valor de etiqueta.|

en-us	##### Template low-level discovery rule tags  |Element|Element property|Required|Type|Range|Description| |--|--|-|--|----|--------| |discovery\_rules| |\-| | |Root element for low-level discovery rules.| | |*For most of the element tag values, see element tag values for a regular item. Only the tags that are specific to low-level discovery rules, are described below.*|<|<|<|<| | |type|\-|`string`|0 - ZABBIX\_PASSIVE (default)<br>2 - TRAP<br>3 - SIMPLE<br>5 - INTERNAL<br>7 - ZABBIX\_ACTIVE<br>10 - EXTERNAL<br>11 - ODBC<br>12 - IPMI<br>13 - SSH<br>14 - TELNET<br>16 - JMX<br>18 - DEPENDENT<br>19 - HTTP\_AGENT<br>20 - SNMP\_AGENT|Item type.| | |lifetime|\-|`string`|Default: 30d|Time period after which items that are no longer discovered will be deleted. Seconds, time unit with suffix or user macro.| |filter| | | | |Individual filter.| | |evaltype|\-|`string`|0 - AND\_OR (default)<br>1 - AND<br>2 - OR<br>3 - FORMULA|Logic to use for checking low-level discovery rule filter conditions.| | |formula|\-|`string`| |Custom calculation formula for filter conditions.| |conditions| |\-| | |Root element for filter conditions.| | |macro|x|`string`| |Low-level discovery macro name.| | |value|\-|`string`| |Filter value: regular expression or global regular expression.| | |operator|\-|`string`|8 - MATCHES\_REGEX (default)<br>9 - NOT\_MATCHES\_REGEX|Condition operator.| | |formulaid|x|`character`| |Arbitrary unique ID that is used to reference a condition from the custom expression. Can only contain capital-case letters. The ID must be defined by the user when modifying filter conditions, but will be generated anew when requesting them afterward.| |lld\_macro\_paths| |\-| | |Root element for LLD macro paths.| | |lld\_macro|x|`string`| |Low-level discovery macro name.| | |path|x|`string`| |Selector for value which will be assigned to the corresponding macro.| |preprocessing| |\-| | |LLD rule value preprocessing.| |step| |\-| | |Individual LLD rule value preprocessing step.| | |*For most of the element tag values, see element tag values for a template item value preprocessing. Only the tags that are specific to template low-level discovery value preprocessing, are described below.*|<|<|<|<| | |type|x|`string`|5 - REGEX<br>11 - XMLPATH<br>12 - JSONPATH<br>15 - NOT\_MATCHES\_REGEX<br>16 - CHECK\_JSON\_ERROR<br>17 - CHECK\_XML\_ERROR<br>20 - DISCARD\_UNCHANGED\_HEARTBEAT<br>21 - JAVASCRIPT<br>23 - PROMETHEUS\_TO\_JSON<br>24 - CSV\_TO\_JSON<br>25 - STR\_REPLACE|Type of the item value preprocessing step.| |trigger\_prototypes| |\-| | |Root element for trigger prototypes.| | |*For trigger prototype element tag values, see regular [template trigger](/manual/xml_export_import/templates#template_trigger_tags) tags.*|<|<|<|<| |graph\_prototypes| |\-| | |Root element for graph prototypes.| | |*For graph prototype element tag values, see regular [template graph](/manual/xml_export_import/templates#template_graph_tags) tags.*|<|<|<|<| |host\_prototypes| |\-| | |Root element for host prototypes.| | |*For host prototype element tag values, see regular [host](/manual/xml_export_import/hosts#host_tags) tags.*|<|<|<|<| |item\_prototypes| |\-| | |Root element for item prototypes.| | |*For item prototype element tag values, see regular [template item](/manual/xml_export_import/templates#template_item_tags) tags.*|<|<|<|<| |master\_item| |\-| | |Individual item prototype master item/item prototype data.| | |key|x|`string`| |Dependent item prototype master item/item prototype key value.<br><br>Required for a dependent item.|
es	##### Etiquetas de regla de plantilla de descubrimiento de bajo nivel  |Elemento|Propiedad del elemento|Requerido|Tipo|Rango|Descripción| |--|--|-|--|----|--------| |discovery\_rules| |\-| | |Elemento raíz para reglas de descubrimiento de bajo nivel.| | |*Para la mayoría de los valores de etiquetas de métricas, consulte los valores de etiquetas de métricas para un elemento normal. A continuación solo se describen las etiquetas que son específicas de las reglas de descubrimiento de bajo nivel.*|<|<|<|<| | |type|\-|`cadena`|0 - ZABBIX\_PASSIVE (predeterminado)<br>2 - TRAP<br>3 - SIMPLE<br>5 - INTERNO<br>7 - ZABBIX\_ACTIVE<br>10 - EXTERNO <br>11 - ODBC<br>12 - IPMI<br>13 - SSH<br>14 - TELNET<br>16 - JMX<br>18 - DEPENDIENTE<br>19 - HTTP\_AGENT<br>20 - SNMP \_AGENT|Tipo de métrica.| | |lifetime|\-|`string`|Predeterminado: 30 días|Período de tiempo después del cual se eliminarán las métriocas que ya no se descubren. Segundos, unidad de tiempo con sufijo o macro de usuario.| |filter| | | | |Filtro individual.| | |evaltype|\-|`string`|0 - AND\_OR (predeterminado)<br>1 - AND<br>2 - O<br>3 - FÓRMULA|Lógica a usar para verificar las condiciones del filtro de reglas de descubrimiento de bajo nivel. | | |formula|\-|`cadena`| |Fórmula de cálculo personalizada para las condiciones del filtro.| |conditions| |\-| | |Elemento raíz para condiciones de filtrado.| | |macro|x|`cadena`| |Nombre de la macro de descubrimiento de bajo nivel.| | |value|\-|`cadena`| |Valor de filtro: expresión regular o expresión regular global.| | |operator|\-|`cadena`|8 - MATCHES\_REGEX (predeterminado)<br>9 - NOT\_MATCHES\_REGEX|Operador de condición.| | |formulaid|x|`carácter`| |ID único arbitrario que se utiliza para hacer referencia a una condición de la expresión personalizada. Sólo puede contener letras mayúsculas. El ID debe ser definido por el usuario al modificar las condiciones del filtro, pero se generará nuevamente al solicitarlas posteriormente.| |lld\_macro\_paths| |\-| | |Elemento raíz para rutas de macro LLD.| | |lld\_macro|x|`cadena`| |Nombre de la macro de descubrimiento de bajo nivel.| | |path|x|`cadena`| |Selector de valor que se asignará a la macro correspondiente.| |preprocessing| |\-| | |Preprocesamiento del valor de la regla LLD.| |step| |\-| | |Paso de preprocesamiento del valor de regla LLD individual.| | |*Para la mayoría de los valores de etiquetas de métricas, consulte Valores de etiquetas de métricas para el preprocesamiento de valores de plantillas de métricas. A continuación solo se describen las etiquetas que son específicas del preprocesamiento del valor de descubrimiento de bajo nivel de la plantilla.*|<|<|<|<| | |type|x|`cadena`|5 - REGEX<br>11 - XMLPATH<br>12 - JSONPATH<br>15 - NOT\_MATCHES\_REGEX<br>16 - CHECK\_JSON\_ERROR<br>17 - CHECK \_XML\_ERROR<br>20 - DESCARTAR\_UNCHANGED\_HEARTBEAT<br>21 - JAVASCRIPT<br>23 - PROMETHEUS\_TO\_JSON<br>24 - CSV\_TO\_JSON<br>25 - STR\_REPLACE|Tipo del paso de preprocesamiento del valor del artículo.| |trigger\_prototypes| |\-| | |Elemento raíz para prototipos de iniciador.| | |*Para conocer los valores de etiqueta de elemento de prototipo de iniciador, consulte las etiquetas [plantilla de iniciador](/manual/xml_export_import/templates#template_trigger_tags) normales.*|<|<|<|<| |graph\_prototypes| |\-| | |Elemento raíz para prototipos de gráficos.| | |*Para conocer los valores de etiquetas de elementos de prototipos de gráficos, consulte las etiquetas [gráfico de plantilla](/manual/xml_export_import/templates#template_graph_tags) normales.*|<|<|<|<| |host\_prototypes| |\-| | |Elemento raíz para prototipos de equipos.| | |*Para conocer los valores de etiquetas de elementos del prototipo de equipo, consulte las etiquetas [equipo](/manual/xml_export_import/hosts#host_tags) normales.*|<|<|<|<| |item\_prototypes| |\-| | |Elemento raíz para prototipos de métricas.| | |*Para conocer los valores de las etiquetas del elemento prototipo del artículo, consulte las etiquetas normales de [elemento de plantilla](/manual/xml_export_import/templates#template_item_tags).*|<|<|<|<| |master\_item| |\-| | |Datos del prototipo de métrica individual de la métrica principal/prototipo de métrica.| | |key|x|`cadena`| |Valor clave del prototipo de métrica principal/valor clave del prototipo de métrica dependiente.<br><br>Obligatorio para una métrica dependiente.|

en-us	# template.massadd
es	# template.massadd

en-us	# template.massremove
es	# template.massremove

en-us	# template.massupdate
es	# template.massupdate

en-us	#### Template nesting issue in Zabbix 6.4.0rc1  Zabbix 6.4.0rc1 (rc1 = Release Candidate 1) does not support template [nesting](/manual/config/templates/nesting) (restored in 6.4.0rc2). If you have upgraded to Zabbix 6.4.0rc1, a DB patch will convert all nested templates into a flat template structure. This means that all entities (items, triggers, etc.) from nested templates will be transferred to the template that contained these nested templates. The support for template nesting has been fully restored in Zabbix 6.4.0rc2. However, if you have already upgraded to Zabbix 6.4.0rc1, the previously existing template structure will not be recovered. :::
es	#### Problema de anidamiento de plantillas en Zabbix 6.4.0rc1  Zabbix 6.4.0rc1 (rc1 = Release Candidate 1) no admite la [anidación](/manual/config/templates/nesting) de plantillas (restaurada en 6.4.0rc2). Si actualizó a Zabbix 6.4.0rc1, un parche de base de datos convertirá todas las plantillas anidadas en una estructura de plantilla plana. Esto significa que todas las entidades (métricas, iniciadores, etc.) de las plantillas anidadas se transferirán a la plantilla que contenía estas plantillas anidadas. La compatibilidad con el anidamiento de plantillas se ha restaurado por completo en Zabbix 6.4.0rc2. Sin embargo, si ya actualizó a Zabbix 6.4.0rc1, la estructura de plantilla existente anteriormente no se recuperará. :::

en-us	# > Template object  The following objects are directly related to the `template` API.
es	# > Objeto de plantilla  Los siguientes objetos están directamente relacionados con la API `template`.

en-us	## Templates
es	## Plantillas

en-us	## Templates
es	## Plantillas

en-us	## Templates
es	## Plantillas

en-us	## Templates
es	## Plantillas

en-us	## Templates
es	## Plantillas

en-us	## Templates
es	## Plantillas

en-us	 ## Templates
es	## Plantillas

en-us	#### Templates and template groups  Manage templates and link them to hosts or other templates.  [Template API](/manual/api/reference/template) | [Template group API](/manual/api/reference/templategroup) | [Value map API](/manual/api/reference/valuemap)
es	#### Plantillas  Administre plantillas y vincúlelas a equipos o a otras plantillas.  [API de Plantilla](/manual/api/reference/template) | [API de Tabla de asignaciones](/manual/api/reference/valuemap)

en-us	### Templates  A new [template](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/cloud/gcp) *Google Cloud Platform by HTTP (GCP by HTTP)* is available.
es	### Plantillas  Una nueva [plantilla](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/cloud/gcp) *Google Cloud Platform por HTTP (GCP por HTTP)* está disponible.

en-us	#### Templates  In a [template](/manual/config/templates/template) configuration, user macros can be used in the following fields:  |Location|<|Multiple macros/mix with text^[1](supported_by_location_user#footnotes)^| |-|------------------------------|----------| |*Tags*^[2](supported_by_location_user#footnotes)^|<|<| | |Tag names|yes| |^|Tag values|yes|
es	#### Plantillas  En una configuración de [plantilla](/manual/config/templates/template), el usuario Las macros se pueden utilizar en los siguientes campos:  |Ubicación|<|Múltiples macros/mezcla con texto^[1](supported_by_location_user#footnotes)^| |-|------------------------------|----------| |*Etiquetas*^[2](compatible_por_ubicación_usuario#notas al pie)^|<|<| | |Nombres de etiqueta|sí| |^|Valores de etiqueta|sí|

en-us	## Templates  New template is available:  - [AWS Cost Explorer by HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/cloud/AWS/aws_cost_http?at=refs%2Fheads%2Frelease%2F6.4)  You can get this template:  -   In *Data collection* → *Templates* in new installations; -   If you are upgrading from previous versions, you can download new     templates from Zabbix [Git     repository](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates?at=refs%2Fheads%2Frelease%2F6.4)     or find them in the *zabbix/templates* directory of the downloaded latest     Zabbix version. Then, while in *Data collection* → *Templates* you can     import them manually into Zabbix.
es	## Plantillas  Nueva plantilla disponible:  - [Explorador de costos de AWS por HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/cloud/AWS/aws_cost_http?at=refs%2Fheads%2Frelease%2F6.4)  Puede conseguir esta plantilla:  - En *Recopilación de datos* → *Plantillas* en nuevas instalaciones; - Si está actualizando desde versiones anteriores, puede descargar nuevas     plantillas del [repositorio      Git](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates?at=refs%2Fheads%2Frelease%2F6.4) de Zabbix     o encuéntrelas en el directorio *zabbix/templates* de la última versión Zabbix descargada.     Luego, mientras está en *Recopilación de datos* → *Plantillas* puede     importarlas manualmente a Zabbix.

en-us	## Templates  New templates are available:  - [Acronis Cyber Protect Cloud by HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/acronis?at=refs%2Fheads%2Frelease%2F6.4) - [HashiCorp Nomad by HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/nomad?at=refs%2Fheads%2Frelease%2F6.4) - [MantisBT by HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/mantisbt?at=refs%2Fheads%2Frelease%2F6.4)  You can get these templates:  -   In *Data collection* → *Templates* in new installations; -   If you are upgrading from previous versions, you can download new     templates from Zabbix [Git     repository](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates?at=refs%2Fheads%2Frelease%2F6.4)     or find them in the *zabbix/templates* directory of the downloaded latest     Zabbix version. Then, while in *Data collection* → *Templates* you can     import them manually into Zabbix.
es	## Plantillas  Hay nuevas plantillas disponibles:  - [Acronis Cyber Protect Cloud por HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/acronis?at=refs%2Fheads%2Frelease%2F6.4) - [HashiCorp Nomad por HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/nomad?at=refs%2Fheads%2Frelease%2F6.4) - [MantisBT por HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/app/mantisbt?at=refs%2Fheads%2Frelease%2F6.4)  Puede conseguir estas plantillas:  - En *Recopilación de datos* → *Plantillas* en las nuevas instalaciones; - Si está actualizando desde versiones anteriores, puede descargar nuevas     plantillas del [repositorio      Git](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates?at=refs%2Fheads%2Frelease%2F6.4) de Zabbix     o encuéntrelos en el directorio *zabbix/templates* de la última versión      Zabbix descargada. Luego, mientras estás en *Recopilación de datos* → *Plantillas* puede     importarlos manualmente a Zabbix.

en-us	## Templates  New templates are available:  - [AWS ECS Cluster by HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/cloud/AWS/aws_ecs_http?at=refs%2Fheads%2Frelease%2F6.4) (along with its [Serverless Cluster version](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/cloud/AWS/aws_ecs_serverless_http?at=refs%2Fheads%2Frelease%2F6.4)) - [Cisco SD-WAN by HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/net/cisco/cisco_sdwan_http?at=refs%2Fheads%2Frelease%2F6.4) - [OpenStack by HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/cloud/openstack?at=refs%2Fheads%2Frelease%2F6.4), which includes *OpenStack Nova by HTTP* template for monitoring OpenStack Nova service - [PostgreSQL by ODBC](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/postgresql_odbc?at=refs%2Fheads%2Frelease%2F6.4)  You can get these templates:  -   In *Data collection* → *Templates* in new installations; -   If you are upgrading from previous versions, you can download new     templates from Zabbix [Git     repository](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates?at=refs%2Fheads%2Frelease%2F6.4)     or find them in the *zabbix/templates* directory of the downloaded latest     Zabbix version. Then, while in *Data collection* → *Templates* you can     import them manually into Zabbix.     
es	## Plantillas  Hay nuevas plantillas disponibles:  - [Clúster AWS ECS por HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/cloud/AWS/aws_ecs_http?at=refs%2Fheads%2Frelease%2F6.4) ( junto con su [versión Serverless Cluster](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/cloud/AWS/aws_ecs_serverless_http?at=refs%2Fheads%2Frelease%2F6.4)) - [Cisco SD-WAN por HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/net/cisco/cisco_sdwan_http?at=refs%2Fheads%2Frelease%2F6.4) - [OpenStack por HTTP](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/cloud/openstack?at=refs%2Fheads%2Frelease%2F6.4), que incluye *OpenStack Plantilla Nova by HTTP* para monitorear el servicio OpenStack Nova - [PostgreSQL por ODBC](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates/db/postgresql_odbc?at=refs%2Fheads%2Frelease%2F6.4)  Puedes conseguir estas plantillas:  - En *Recopilación de datos* → *Plantillas* en nuevas instalaciones; - Si está actualizando desde versiones anteriores, puede descargar nuevas     plantillas de Zabbix [Git     repositorio](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates?at=refs%2Fheads%2Frelease%2F6.4)     o encuéntrelos en el directorio *zabbix/templates* de la última versión descargada.     Versión Zabbix. Luego, mientras estás en *Recopilación de datos* → *Plantillas* puedes     importarlos manualmente a Zabbix.     

en-us	#### Templates  Templates are available for [remote monitoring](/manual/appendix/items/remote_stats) of Zabbix server or proxy internal metrics from an external instance:  -   Remote Zabbix server -   Remote Zabbix proxy  Note that in order to use a template for remote monitoring of multiple external instances, a separate host is required for each external instance monitoring.
es	#### Plantillas  Hay plantillas disponibles para el [monitoreo remoto](/manual/appendix/items/remote_stats) del servidor Zabbix o métricas internas de proxy de una instancia externa:  -   Servidor Zabbix remoto -   Proxy Zabbix remoto  Tenga en cuenta que para utilizar una plantilla para el monitoreo remoto de múltiples instancias externas, se requiere un equipo separado para el monitoreo de cada instancia externa.

en-us	##### Template tags  |Element|Element property|Required|Type|Range|Description| |--|--|-|--|----|--------| |template_groups| |x| | |Root element for template groups.| | |uuid|x|`string`| |Unique identifier for this template group.| | |name|x|`string`| |Template group name.| |host_groups| |x| | |Root element for host groups that are used by host prototypes.| | |uuid|x|`string`| |Unique identifier for this host group.| | |name|x|`string`| |Host group name.| |templates| |\-| | |Root element for templates.| | |uuid|x|`string`| |Unique identifier for this template.| | |template|x|`string`| |Unique template name.| | |name|\-|`string`| |Visible template name.| | |description|\-|`text`| |Template description.| |vendor| |\-| | |Root element for template vendor.<br><br>Element added only if the exported template contains vendor data.| | |name|\-|`string`| |Template vendor name.| | |version|\-|`string`| |Template version.<br><br>For [out-of-the-box templates](/manual/config/templates_out_of_the_box), version is displayed as follows: major version of Zabbix, delimiter ("-"), revision number (increased with each new version of the template, and reset with each major version of Zabbix). For example, 6.4-0, 6.4-3, 7.0-0, 7.0-3.| |templates| |\-| | |Root element for linked templates.| | |name|x|`string`| |Template name.| |groups| |\-| | |Root element for template groups.| | |name|x|`string`| |Template group name.| |tags| |\-| | |Root element for template tags.| | |tag|x|`string`| |Tag name.| | |value|\-|`string`| |Tag value.| |macros| |\-| | |Root element for template user macros.| | |macro|x|`string`| |User macro name.| | |type|\-|`string`|0 - TEXT (default)<br>1 - SECRET\_TEXT<br>2 - VAULT|Type of the macro.| | |value|\-|`string`| |User macro value.| | |description|\-|`string`| |User macro description.| |valuemaps| |\-| | |Root element for template value maps.| | |uuid|x|`string`| |Unique identifier for this value map.| | |name|x|`string`| |Value map name.| | |mapping|\-| | |Root element for mappings.| | |value|x|`string`| |Value of a mapping.| | |newvalue|x|`string`| |New value of a mapping.|
es	##### Etiquetas de plantilla  |Elemento|Propiedad del elemento|Requerido|Tipo|Rango|Descripción| |--|--|-|--|----|--------| |template_groups| |x| | |Elemento raíz para grupos de plantillas.| | |uuid|x|`cadena`| |Identificador único para este grupo de plantillas.| | |name|x|`cadena`| |Nombre del grupo de plantillas.| |host_groups| |x| | |Elemento raíz para grupos de hosts que utilizan los prototipos de hosts.| | |uuid|x|`cadena`| |Identificador único para este grupo de hosts.| | |name|x|`cadena`| |Nombre del grupo anfitrión.| |templates| |\-| | |Elemento raíz para plantillas.| | |uuid|x|`cadena`| |Identificador único para esta plantilla.| | |template|x|`cadena`| |Nombre de plantilla único.| | |name|\-|`cadena`| |Nombre de plantilla visible.| | |description|\-|`texto`| |Descripción de la plantilla.| |vendor| |\-| | |Elemento raíz para el proveedor de la plantilla.<br><br>Elemento agregado solo si la plantilla exportada contiene datos del proveedor.| | |name|\-|`cadena`| |Nombre del proveedor de la plantilla.| | |version|\-|`cadena`| |Versión de la plantilla.<br><br>Para [plantillas listas para usar](/manual/config/templates_out_of_the_box), la versión se muestra de la siguiente manera: versión principal de Zabbix, delimitador ("-"), número de revisión (aumentado con cada nueva versión de la plantilla y restablecido con cada versión principal de Zabbix). Por ejemplo, 6,4-0, 6,4-3, 7,0-0, 7,0-3.| |templates| |\-| | |Elemento raíz para plantillas vinculadas.| | |name|x|`cadena`| |Nombre de la plantilla.| |groups| |\-| | |Elemento raíz para grupos de plantillas.| | |name|x|`cadena`| |Nombre del grupo de plantillas.| |tags| |\-| | |Elemento raíz para etiquetas de plantilla.| | |tag|x|`cadena`| |Nombre de etiqueta.| | |value|\-|`cadena`| |Valor de etiqueta.| |macros| |\-| | |Elemento raíz para macros de usuario de plantilla.| | |macro|x|`cadena`| |Nombre de la macro de usuario.| | |type|\-|`cadena`|0 - TEXTO (predeterminado)<br>1 - SECRETO\_TEXTO<br>2 - VAULT|Tipo de macro.| | |value|\-|`cadena`| |Valor de macro de usuario.| | |description|\-|`cadena`| |Descripción de la macro de usuario.| |valuemaps| |\-| | |Elemento raíz para mapas de valores de plantilla.| | |uuid|x|`cadena`| |Identificador único para este mapa de valores.| | |name|x|`cadena`| |Nombre del mapa de valores.| | |mapping|\-| | |Elemento raíz para asignaciones.| | |value|x|`cadena`| |Valor de un mapeo.| | |newvalue|x|`cadena`| |Nuevo valor de un mapeo.|

en-us	### Template tag  The template tag object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |tag|string|Template tag name.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *required*| |value|string|Template tag value.|
es	### Etiqueta de plantilla  El objeto de etiqueta de plantilla tiene las siguientes propiedades.  |Propiedad|[Tipo](/manual/api/reference_commentary#data_types)|Descripción| |--|--|------| |tag|cadena|Nombre de etiqueta de plantilla.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *obligatorio*| |value|cadena|Valor de etiqueta de plantilla.|

en-us	### Template  The template object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |templateid|string|ID of the template.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *read-only*<br>- *required* for update operations| |host|string|Technical name of the template.<br><br>[Property behavior](/manual/api/reference_commentary#property-behavior):<br>- *required* for create operations| |description|text|Description of the template.| |name|string|Visible name of the template.<br><br>Default: `host` property value.| |uuid|string|Universal unique identifier, used for linking imported templates to already existing ones. Auto-generated, if not given.| |vendor_name|string|Template vendor name.<br><br>For create operations, both `vendor_name` and `vendor_version` should be either set or left empty. For update operations, `vendor_version` can be left empty if it has a value in the database.| |vendor_version|string|Template vendor version.<br><br>For create operations, both `vendor_name` and `vendor_version` should be either set or left empty. For update operations, `vendor_name` can be left empty if it has a value in the database.|
es	### Plantilla  El objeto de plantilla tiene las siguientes propiedades.  |Propiedad|[Tipo](/manual/api/reference_commentary#data_types)|Descripción| |--|--|------| |templateid|cadena|ID de la plantilla.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *solo lectura*<br>- *obligatorio* para operaciones de actualización| |host|cadena|Nombre técnico de la plantilla.<br><br>[Comportamiento de la propiedad](/manual/api/reference_commentary#property-behavior):<br>- *obligatorio* para operaciones de creación| |`template`|texto|Descripción de la plantilla.| |name|cadena|Nombre visible de la plantilla.<br><br>Predeterminado: valor de propiedad `host`.| |uuid|cadena|Identificador único universal, utilizado para vincular plantillas importadas con las ya existentes. Generado automáticamente, si no se proporciona.| |vendor_name|string|Nombre del proveedor de la plantilla.<br><br>Para las operaciones de creación, tanto `vendor_name` como `vendor_version` deben configurarse o dejarse vacíos. Para operaciones de actualización, `vendor_version` se puede dejar vacío si tiene un valor en la base de datos.| |vendor_version|cadena|Versión del proveedor de la plantilla.<br><br>Para las operaciones de creación, tanto `vendor_name` como `vendor_version` deben estar configurados o dejarse vacíos. Para operaciones de actualización, `vendor_name` se puede dejar vacío si tiene un valor en la base de datos.|

en-us	# Template  This class is designed to work with templates.  Object references:  -   [Template](/manual/api/reference/template/object#template)  Available methods:  -   [template.create](/manual/api/reference/template/create) - creating new templates -   [template.delete](/manual/api/reference/template/delete) - deleting templates -   [template.get](/manual/api/reference/template/get) - retrieving templates -   [template.massadd](/manual/api/reference/template/massadd) - adding related objects to templates -   [template.massremove](/manual/api/reference/template/massremove) - removing related objects from templates -   [template.massupdate](/manual/api/reference/template/massupdate) - replacing or removing related objects from templates -   [template.update](/manual/api/reference/template/update) - updating templates
es	# Plantilla  Esta clase está diseñada para trabajar con plantillas.  Referencias de objetos:  - [Plantilla](/manual/api/reference/template/object#template)  Métodos disponibles:  - [template.create](/manual/api/reference/template/create) - creación de nuevas plantillas - [template.delete](/manual/api/reference/template/delete) - eliminando plantillas - [template.get](/manual/api/reference/template/get) - recuperando plantillas - [template.massadd](/manual/api/reference/template/massadd) - agregar objetos relacionados a las plantillas - [template.massremove](/manual/api/reference/template/massremove) - eliminación de objetos relacionados de las plantillas - [template.massupdate](/manual/api/reference/template/massupdate) - reemplazar o eliminar objetos relacionados de las plantillas - [template.update](/manual/api/reference/template/update) - actualización de plantillas

en-us	##### Template trigger tags  |Element|Element property|Required|Type|Range^**[1](#footnotes)**^|Description| |--|--|-|--|----|--------| |triggers| |\-| | |Root element for triggers.| | |uuid|x|`string`| |Unique identifier for this trigger.| | |expression|x|`string`| |Trigger expression.| | |recovery\_mode|\-|`string`|0 - EXPRESSION (default)<br>1 - RECOVERY\_EXPRESSION<br>2 - NONE|Basis for generating OK events.| | |recovery\_expression|\-|`string`| |Trigger recovery expression.| | |correlation\_mode|\-|`string`|0 - DISABLED (default)<br>1 - TAG\_VALUE|Correlation mode (no event correlation or event correlation by tag).| | |correlation\_tag|\-|`string`| |The tag name to be used for event correlation.| | |name|x|`string`| |Trigger name.| | |event_name|\-|`string`| |Event name.| | |opdata|\-|`string`| |Operational data.| | |url_name|\-|`string`| |Label for the URL associated with the trigger.| | |url|\-|`string`| |URL associated with the trigger.| | |status|\-|`string`|0 - ENABLED (default)<br>1 - DISABLED|Trigger status.| | |priority|\-|`string`|0 - NOT\_CLASSIFIED (default)<br>1 - INFO<br>2 - WARNING<br>3 - AVERAGE<br>4 - HIGH<br>5 - DISASTER|Trigger severity.| | |description|\-|`text`| |Trigger description.| | |type|\-|`string`|0 - SINGLE (default)<br>1 - MULTIPLE|Event generation type (single problem event or multiple problem events).| | |manual\_close|\-|`string`|0 - NO (default)<br>1 - YES|Manual closing of problem events.| |dependencies| |\-| | |Root element for dependencies.| | |name|x|`string`| |Dependency trigger name.| | |expression|x|`string`| |Dependency trigger expression.| | |recovery\_expression|\-|`string`| |Dependency trigger recovery expression.| |tags| |\-| | |Root element for trigger tags.| | |tag|x|`string`| |Tag name.| | |value|\-|`string`| |Tag value.|
es	##### Etiquetas de plantilla de iniciador  |Elemento|Propiedad del elemento|Obligatorio|Tipo|Rango^**[1](#footnotes)**^|Descripción| |--|--|-|--|----|--------| |triggers| |\-| | |Elemento raíz para iniciadores.| | |uuid|x|`cadena`| |Identificador único para este iniciador.| | |expression|x|`cadena`| |Expresión del iniciador.| | |recovery\_mode|\-|`string`|0 - EXPRESSION (predeterminado)<br>1 - RECOVERY\_EXPRESSION<br>2 - NINGUNO|Base para generar eventos OK.| | |recovery\_expression|\-|`cadena`| |Expresión de recuperación del iniciador.| | |correlation\_mode|\-|`string`|0 - DISABLED (predeterminado)<br>1 - TAG\_VALUE|Modo de correlación (sin correlación de eventos o correlación de eventos por etiqueta).| | |correlation\_tag|\-|`cadena`| |El nombre de la etiqueta que se utilizará para la correlación de eventos.| | |name|x|`cadena`| |Nombre del iniciador.| | |event_name|\-|`cadena`| |Nombre del evento.| | |opdata|\-|`cadena`| |Datos operativos.| | |url_name|\-|`cadena`| |Etiqueta de la URL asociada al iniciador.| | |url|\-|`cadena`| |URL asociada al iniciador.| | |status|\-|`string`|0 - HABILITADO (predeterminado)<br>1 - DISABLED|Estado del iniciador.| | |priority|\-|`cadena`|0 - NO\_CLASIFICADO (predeterminado)<br>1 - INFORMACIÓN<br>2 - ADVERTENCIA<br>3 - PROMEDIO<br>4 - ALTO<br>5 - DESASTRE|Activador gravedad.| | |description|\-|`texto`| |Descripción del iniciador.| | |type|\-|`string`|0 - SINGLE (predeterminado)<br>1 - MULTIPLE|Tipo de generación de evento (evento de problema único o eventos de problema múltiple).| | |manual\_close|\-|`string`|0 - NO (predeterminado)<br>1 - SÍ|Cierre manual de eventos de problema.| |dependencies| |\-| | |Elemento raíz para dependencias.| | |name|x|`cadena`| |Nombre del iniciador dependiente.| | |expression|x|`cadena`| |Expresión del iniciador dependiente.| | |recovery\_expression|\-|`cadena`| |Expresión de recuperación del iniciador dependiente.| |tags| |\-| | |Elemento raíz para etiquetas de activación.| | |tag|x|`cadena`| |Nombre de etiqueta.| | |value|\-|`cadena`| |Valor de etiqueta.|

en-us	# template.update
es	# template.update

en-us	 #### Template versioning  To improve management and upgrade of templates, template versioning has been introduced.  In [*Data collection → Templates*](/manual/web_interface/frontend_sections/data_collection/templates) you can now see the template vendor and version, as well as filter templates by vendor and/or version.  For more information, see [Upgrade notes for 6.4.0](/manual/installation/upgrade_notes_640#template-versioning).
es	 #### Versionado de plantillas  Para mejorar la gestión y actualización de las plantillas, se ha introducido el control de versiones de las plantillas.  En [*Recopilación de datos → Plantillas*](/manual/web_interface/frontend_sections/data_collection/templates) ahora puede ver el proveedor y la versión de la plantilla, así como filtrar las plantillas por proveedor y/o versión.  Para obtener más información, consulte [Notas de actualización para 6.4.0](/manual/installation/upgrade_notes_640#template-versioning).

en-us	 #### Template versioning  To improve management and upgrade of templates, template versioning has been introduced.  In [*Data collection → Templates*](/manual/web_interface/frontend_sections/data_collection/templates) you can now see the template vendor and version, as well as filter templates by vendor and/or version.  **Importing updated templates**  Please note that templates must be upgraded manually if you are upgrading from previous versions. This can be done by importing the updated templates. You can find the updated templates in the *zabbix/templates* directory of the downloaded latest Zabbix version. While in [*Data collection → Templates*](/manual/web_interface/frontend_sections/data_collection/templates) you can [import](/manual/xml_export_import/templates#importing) them from this directory.  It is also possible to download templates from [Zabbix git repository](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates) directly.  **Updating custom template vendor and version**  For existing custom templates, template vendor and version can also be modified through the [Template API](/manual/api/reference/template).
es	 #### Versionado de plantillas  Para mejorar la gestión y actualización de las plantillas, se ha introducido el control de versiones de las plantillas.  En [*Recopilación de datos → Plantillas*](/manual/web_interface/frontend_sections/data_collection/templates) ahora puede ver el proveedor y la versión de la plantilla, así como filtrar las plantillas por proveedor y/o versión.  **Importando plantillas actualizadas**  Tenga en cuenta que las plantillas deben actualizarse manualmente si actualiza desde versiones anteriores. Esto se puede hacer importando las plantillas actualizadas. Puede encontrar las plantillas actualizadas en el directorio *zabbix/templates* de la última versión descargada de Zabbix. Mientras esté en [*Recopilación de datos → Plantillas*](/manual/web_interface/frontend_sections/data_collection/templates) puede [importarlas](/manual/xml_export_import/templates#importing) desde este directorio.  También es posible descargar plantillas desde el [repositorio git de Zabbix](https://git.zabbix.com/projects/ZBX/repos/zabbix/browse/templates) directamente.  **Actualizando proveedor y versión de plantilla personalizada**  Para las plantillas personalizadas existentes, el proveedor y la versión de la plantilla también se pueden modificar a través de la [API de plantilla](/manual/api/reference/template).

en-us	##### Template web scenario tags  |Element|Element property|Required|Type|Range^**[1](#footnotes)**^|Description| |--|--|-|--|----|--------| |httptests| |\-| | |Root element for web scenarios.| | |uuid|x|`string`| |Unique identifier for this web scenario.| | |name|x|`string`| |Web scenario name.| | |delay|\-|`string`|Default: 1m|Frequency of executing the web scenario. Seconds, time unit with suffix or user macro.| | |attempts|\-|`integer`|1-10 (default: 1)|The number of attempts for executing web scenario steps.| | |agent|\-|`string`|Default: Zabbix|Client agent. Zabbix will pretend to be the selected browser. This is useful when a website returns different content for different browsers.| | |http\_proxy|\-|`string`| |Specify an HTTP proxy to use, using the format: `http://[username[:password]@]proxy.example.com[:port]`| |variables| |\-| | |Root element for scenario-level variables (macros) that may be used in scenario steps.| | |name|x|`string`| |Variable name.| | |value|x|`text`| |Variable value.| |headers| |\-| | |Root element for HTTP headers that will be sent when performing a request. Headers should be listed using the same syntax as they would appear in the HTTP protocol.| | |name|x|`string`| |Header name.| | |value|x|`text`| |Header value.| | |status|\-|`string`|0 - ENABLED (default)<br>1 - DISABLED|Web scenario status.| | |authentication|\-|`string`|0 - NONE (default)<br>1 - BASIC<br>2 - NTLM|Authentication method.| | |http\_user|\-|`string`| |User name used for basic, HTTP or NTLM authentication.| | |http\_password|\-|`string`| |Password used for basic, HTTP or NTLM authentication.| | |verify\_peer|\-|`string`|0 - NO (default)<br>1 - YES|Whether to validate that the host's certificate is authentic.| | |verify\_host|\-|`string`|0 - NO (default)<br>1 - YES|Whether to validate that the host name for the connection matches the one in the host's certificate.| | |ssl\_cert\_file|\-|`string`| |Name of the SSL certificate file used for client authentication (must be in PEM format).| | |ssl\_key\_file|\-|`string`| |Name of the SSL private key file used for client authentication (must be in PEM format).| | |ssl\_key\_password|\-|`string`| |SSL private key file password.| |steps| |x| | |Root element for web scenario steps.| | |name|x|`string`| |Web scenario step name.| | |url|x|`string`| |URL for monitoring.| |query\_fields| |\-| | |Root element for query fields - an array of HTTP fields that will be added to the URL when performing a request.| | |name|x|`string`| |Query field name.| | |value|\-|`string`| |Query field value.| |posts| |\-| | |HTTP POST variables as a string (raw post data) or as an array of HTTP fields (form field data).| | |name|x|`string`| |Post field name.| | |value|x|`string`| |Post field value.| |variables| |\-| | |Root element of step-level variables (macros) that should be applied after this step.<br><br>If the variable value has a 'regex:' prefix, then its value is extracted from the data returned by this step according to the regular expression pattern following the 'regex:' prefix| | |name|x|`string`| |Variable name.| | |value|x|`text`| |Variable value.| |headers| |\-| | |Root element for HTTP headers that will be sent when performing a request. Headers should be listed using the same syntax as they would appear in the HTTP protocol.| | |name|x|`string`| |Header name.| | |value|x|`text`| |Header value.| | |follow\_redirects|\-|`string`|0 - NO<br>1 - YES (default)|Follow HTTP redirects.| | |retrieve\_mode|\-|`string`|0 - BODY (default)<br>1 - HEADERS<br>2 - BOTH|HTTP response retrieve mode.| | |timeout|\-|`string`|Default: 15s|Timeout of step execution. Seconds, time unit with suffix or user macro.| | |required|\-|`string`| |Text that must be present in the response. Ignored if empty.| | |status\_codes|\-|`string`| |A comma delimited list of accepted HTTP status codes. Ignored if empty. For example: 200-201,210-299| |tags| |\-| | |Root element for web scenario tags.| | |tag|x|`string`| |Tag name.| | |value|\-|`string`| |Tag value.|
es	##### Etiquetas de plantilla de escenario web  |Elemento|Propiedad del elemento|Obligatorio|Tipo|Rango^**[1](#footnotes)**^|Descripción| |--|--|-|--|----|--------| |httptests| |\-| | |Elemento raíz para escenarios web.| | |uuid|x|`cadena`| |Identificador único para este escenario web.| | |name|x|`cadena`| |Nombre del escenario web.| | |delay|\-|`string`|Predeterminado: 1m|Frecuencia de ejecución del escenario web. Segundos, unidad de tiempo con sufijo o macro de usuario.| | |attempts|\-|`integer`|1-10 (predeterminado: 1)|El número de intentos para ejecutar los pasos del escenario web.| | |agent|\-|`string`|Predeterminado: Zabbix|Agente cliente. Zabbix pretenderá ser el navegador seleccionado. Esto resulta útil cuando un sitio web devuelve contenido diferente para distintos navegadores.| | |http\_proxy|\-|`cadena`| |Especifique un proxy HTTP para usar, usando el formato: `http://[nombre de usuario[:contraseña]@]proxy.example.com[:puerto]`| |variables| |\-| | |Elemento raíz para variables a nivel de escenario (macros) que pueden usarse en los pasos del escenario.| | |name|x|`cadena`| |Nombre de la variable.| | |value|x|`texto`| |Valor variable.| |headers| |\-| | |Elemento raíz para los encabezados HTTP que se enviarán al realizar una solicitud. Los encabezados deben enumerarse utilizando la misma sintaxis que aparecerían en el protocolo HTTP.| | |name|x|`cadena`| |Nombre del encabezado.| | |value|x|`texto`| |Valor del encabezado.| | |status|\-|`string`|0 - HABILITADO (predeterminado)<br>1 - DISABLED|Estado del escenario web.| | |authentication|\-|`string`|0 - NINGUNO (predeterminado)<br>1 - BÁSICO<br>2 - NTLM|Método de autenticación.| | |http\_user|\-|`cadena`| |Nombre de usuario utilizado para la autenticación básica, HTTP o NTLM.| | |http\_password|\-|`cadena`| |Contraseña utilizada para la autenticación básica, HTTP o NTLM.| | |verify\_peer|\-|`string`|0 - NO (predeterminado)<br>1 - SÍ|Verifique el certificado SSL del servidor web.| | |verify\_host|\-|`string`|0 - NO (predeterminado)<br>1 - SÍ|Verifique que el campo nombre común o el campo nombre alternativo del sujeto del certificado del servidor web coincidan.| | |ssl\_cert\_file|\-|`cadena`| |Nombre del archivo de certificado SSL utilizado para la autenticación del cliente (debe estar en formato PEM).| | |ssl\_key\_file|\-|`cadena`| |Nombre del archivo de clave privada SSL utilizado para la autenticación del cliente (debe estar en formato PEM).| | |ssl\_key\_password|\-|`cadena`| |Contraseña del archivo de clave privada SSL.| |steps| |x| | |Elemento raíz para los pasos del escenario web.| | |name|x|`cadena`| |Nombre del paso del escenario web.| | |url|x|`cadena`| |URL para seguimiento.| |query\_fields| |\-| | |Elemento raíz para campos de consulta: una matriz de campos HTTP que se agregarán a la URL al realizar una solicitud.| | |name|x|`cadena`| |Nombre del campo de consulta.| | |value|\-|`cadena`| |Valor del campo de consulta.| |posts| |\-| | |Variables HTTP POST como una cadena (datos de publicación sin procesar) o como una matriz de campos HTTP (datos de campo de formulario).| | |name|x|`cadena`| |Nombre del campo de publicación.| | |value|x|`cadena`| |Publicar valor del campo.| |variables| |\-| | |Elemento raíz de las variables de nivel de paso (macros) que se deben aplicar después de este paso.<br><br>Si el valor de la variable tiene un prefijo 'regex:', entonces su valor se extrae de los datos devueltos por este paso de acuerdo al patrón de expresión regular que sigue el prefijo 'regex:'| | |name|x|`cadena`| |Nombre de la variable.| | |value|x|`texto`| |Valor variable.| |headers| |\-| | |Elemento raíz para los encabezados HTTP que se enviarán al realizar una solicitud. Los encabezados deben enumerarse utilizando la misma sintaxis que aparecerían en el protocolo HTTP.| | |name|x|`cadena`| |Nombre del encabezado.| | |value|x|`texto`| |Valor del encabezado.| | |follow\_redirects|\-|`string`|0 - NO<br>1 - SÍ (predeterminado)|Seguir redirecciones HTTP.| | |retrieve\_mode|\-|`string`|0 - CUERPO (predeterminado)<br>1 - ENCABEZADOS<br>2 - AMBOS|Modo de recuperación de respuesta HTTP.| | |timeout|\-|`string`|Predeterminado: 15s|Tiempo de espera de ejecución del paso. Segundos, unidad de tiempo con sufijo o macro de usuario.| | |required|\-|`cadena`| |Texto que debe estar presente en la respuesta. Se ignora si está vacío.| | |status\_codes|\-|`cadena`| |Una lista delimitada por comas de códigos de estado HTTP aceptados. Se ignora si está vacío. Por ejemplo: 200-201,210-299| |tags| |\-| | |Elemento raíz para etiquetas de escenarios web.| | |tag|x|`cadena`| |Nombre de etiqueta.| | |value|\-|`cadena`| |Valor de etiqueta.|

en-us	#### template  [ZBXNEXT-1111](https://support.zabbix.com/browse/ZBXNEXT-1111) Added new properties `vendor_name`, `vendor_version`.\
es	#### template  [ZBXNEXT-1111](https://support.zabbix.com/browse/ZBXNEXT-1111) Se agregaron nuevas propiedades `vendor_name`, `vendor_version`.\

en-us	 ###### Terminate request  A request sent by the agent to shutdown a plugin.  |   |   | |---|---| |direction|agent → plugin| |response|no|  The request doesn't have specific parameters, it only contains [common data](#common-data) parameters.  *Example:*      {"id":3,"type":5}
es	 ###### Solicitud de finalización  Una solicitud enviada por el agente para cerrar un complemento.  | | | |---|---| |dirección|agente → complemento| |respuesta|no|  La solicitud no tiene parámetros específicos, solo contiene parámetros de [datos comunes](#common-data).  *Ejemplo:*      {"id":3,"type":5}

en-us	##### Terminology  Setting this option enforces to use TLS connection to database from Zabbix server/proxy and frontend to database:  -   required - connect using TLS as transport mode without identity     checks; -   verify\_ca - connect using TLS and verify certificate; -   verify\_full - connect using TLS, verify certificate and verify that     database identity (CN) specified by DBHost matches its certificate;
es	##### Terminología  Establecer esta opción obliga a utilizar la conexión TLS a la base de datos desde el servidor/proxy Zabbix y frontend a la base de datos:  - required - conectarse usando TLS como modo de transporte sin      verificación de identidad; - verify\_ca - conectarse usando TLS y verificar el certificado; - verify\_full - conectarse usando TLS, verificar el certificado y verificar que     la identidad de la base de datos (CN) especificada por DBHost coincide con su certificado;

en-us	 ##### Testing access  The *Test* button allows to test user access:  |Parameter|Description| |--|--------| |*Login*|LDAP user name to test (prefilled with the current user name from Zabbix frontend). This user name must exist in the LDAP server.<br>Zabbix will not activate LDAP authentication if it is unable to authenticate the test user.| |*User password*|LDAP user password to test.|
es	 ##### Prueba de acceso  El botón *Probar* permite probar el acceso del usuario:  |Parámetro|Descripción| |--|--------| |*Iniciar sesión*|Nombre de usuario LDAP para probar (completado previamente con el nombre de usuario actual de la interfaz de Zabbix). Este nombre de usuario debe existir en el servidor LDAP.<br>Zabbix no activará la autenticación LDAP si no puede autenticar al usuario de prueba.| |*Contraseña de usuario*|Contraseña de usuario LDAP para probar.|

en-us	##### Testing cipher strings and allowing only PFS ciphersuites  To see which ciphersuites have been selected you need to set 'DebugLevel=4' in the configuration file, or use the `-vv` option for zabbix\_sender.  Some experimenting with `TLSCipher*` parameters might be necessary before you get the desired ciphersuites. It is inconvenient to restart Zabbix server, proxy or agent multiple times just to tweak `TLSCipher*` parameters. More convenient options are using zabbix\_sender or the `openssl` command. Let's show both.  **1.** Using zabbix\_sender.  Let's make a test configuration file, for example /home/zabbix/test.conf, with the syntax of a zabbix\_agentd.conf file:        Hostname=nonexisting       ServerActive=nonexisting              TLSConnect=cert       TLSCAFile=/home/zabbix/ca.crt       TLSCertFile=/home/zabbix/agent.crt       TLSKeyFile=/home/zabbix/agent.key       TLSPSKIdentity=nonexisting       TLSPSKFile=/home/zabbix/agent.psk  You need valid CA and agent certificates and PSK for this example. Adjust certificate and PSK file paths and names for your environment.  If you are not using certificates, but only PSK, you can make a simpler test file:        Hostname=nonexisting       ServerActive=nonexisting              TLSConnect=psk       TLSPSKIdentity=nonexisting       TLSPSKFile=/home/zabbix/agentd.psk  The selected ciphersuites can be seen by running zabbix\_sender (example compiled with OpenSSL 1.1.d):        $ zabbix_sender -vv -c /home/zabbix/test.conf -k nonexisting_item -o 1 2>&1 | grep ciphersuites       zabbix_sender [41271]: DEBUG: zbx_tls_init_child() certificate ciphersuites: TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA AES128-GCM-SHA256 AES128-CCM8 AES128-CCM AES128-SHA256 AES128-SHA       zabbix_sender [41271]: DEBUG: zbx_tls_init_child() PSK ciphersuites: TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA PSK-AES128-GCM-SHA256 PSK-AES128-CCM8 PSK-AES128-CCM PSK-AES128-CBC-SHA256 PSK-AES128-CBC-SHA       zabbix_sender [41271]: DEBUG: zbx_tls_init_child() certificate and PSK ciphersuites: TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA AES128-GCM-SHA256 AES128-CCM8 AES128-CCM AES128-SHA256 AES128-SHA ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA PSK-AES128-GCM-SHA256 PSK-AES128-CCM8 PSK-AES128-CCM PSK-AES128-CBC-SHA256 PSK-AES128-CBC-SHA  Here you see the ciphersuites selected by default. These default values are chosen to ensure interoperability with Zabbix agents running on systems with older OpenSSL versions (from 1.0.1).  With newer systems you can choose to tighten security by allowing only a few ciphersuites, e.g. only ciphersuites with PFS (Perfect Forward Secrecy). Let's try to allow only ciphersuites with PFS using `TLSCipher*` parameters.  ::: noteimportant The result will not be interoperable with systems using OpenSSL 1.0.1 and 1.0.2, if PSK is used. Certificate-based encryption should work. :::  Add two lines to the `test.conf` configuration file:        TLSCipherCert=EECDH+aRSA+AES128       TLSCipherPSK=kECDHEPSK+AES128  and test again:        $ zabbix_sender -vv -c /home/zabbix/test.conf -k nonexisting_item -o 1 2>&1 | grep ciphersuites                   zabbix_sender [42892]: DEBUG: zbx_tls_init_child() certificate ciphersuites: TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA               zabbix_sender [42892]: DEBUG: zbx_tls_init_child() PSK ciphersuites: TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA               zabbix_sender [42892]: DEBUG: zbx_tls_init_child() certificate and PSK ciphersuites: TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA AES128-GCM-SHA256 AES128-CCM8 AES128-CCM AES128-SHA256 AES128-SHA ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA PSK-AES128-GCM-SHA256 PSK-AES128-CCM8 PSK-AES128-CCM PSK-AES128-CBC-SHA256 PSK-AES128-CBC-SHA          The "certificate ciphersuites" and "PSK ciphersuites" lists have changed - they are shorter than before, only containing TLS 1.3 ciphersuites and TLS 1.2 ECDHE-\* ciphersuites as expected.  **2.** TLSCipherAll and TLSCipherAll13 cannot be tested with zabbix\_sender; they do not affect "certificate and PSK ciphersuites" value shown in the example above. To tweak TLSCipherAll and TLSCipherAll13 you need to experiment with the agent, proxy or server.  So, to allow only PFS ciphersuites you may need to add up to three parameters        TLSCipherCert=EECDH+aRSA+AES128       TLSCipherPSK=kECDHEPSK+AES128       TLSCipherAll=EECDH+aRSA+AES128:kECDHEPSK+AES128  to zabbix\_agentd.conf, zabbix\_proxy.conf and zabbix\_server\_conf if each of them has a configured certificate and agent has also PSK.  If your Zabbix environment uses only PSK-based encryption and no certificates, then only one:        TLSCipherPSK=kECDHEPSK+AES128  Now that you understand how it works you can test the ciphersuite selection even outside of Zabbix, with the `openssl` command. Let's test all three `TLSCipher*` parameter values:        $ openssl ciphers EECDH+aRSA+AES128 | sed 's/:/ /g'       TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA       $ openssl ciphers kECDHEPSK+AES128 | sed 's/:/ /g'       TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA       $ openssl ciphers EECDH+aRSA+AES128:kECDHEPSK+AES128 | sed 's/:/ /g'       TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA         You may prefer `openssl ciphers` with option `-V` for a more verbose output:        $ openssl ciphers -V EECDH+aRSA+AES128:kECDHEPSK+AES128                 0x13,0x02 - TLS_AES_256_GCM_SHA384  TLSv1.3 Kx=any      Au=any  Enc=AESGCM(256) Mac=AEAD                 0x13,0x03 - TLS_CHACHA20_POLY1305_SHA256 TLSv1.3 Kx=any      Au=any  Enc=CHACHA20/POLY1305(256) Mac=AEAD                 0x13,0x01 - TLS_AES_128_GCM_SHA256  TLSv1.3 Kx=any      Au=any  Enc=AESGCM(128) Mac=AEAD                 0xC0,0x2F - ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH     Au=RSA  Enc=AESGCM(128) Mac=AEAD                 0xC0,0x27 - ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH     Au=RSA  Enc=AES(128)  Mac=SHA256                 0xC0,0x13 - ECDHE-RSA-AES128-SHA    TLSv1 Kx=ECDH     Au=RSA  Enc=AES(128)  Mac=SHA1                 0xC0,0x37 - ECDHE-PSK-AES128-CBC-SHA256 TLSv1 Kx=ECDHEPSK Au=PSK  Enc=AES(128)  Mac=SHA256                 0xC0,0x35 - ECDHE-PSK-AES128-CBC-SHA TLSv1 Kx=ECDHEPSK Au=PSK  Enc=AES(128)  Mac=SHA1  Similarly, you can test the priority strings for GnuTLS:        $ gnutls-cli -l --priority=NONE:+VERS-TLS1.2:+ECDHE-RSA:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+CURVE-ALL:+COMP-NULL:+SIGN-ALL:+CTYPE-X.509       Cipher suites for NONE:+VERS-TLS1.2:+ECDHE-RSA:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+CURVE-ALL:+COMP-NULL:+SIGN-ALL:+CTYPE-X.509       TLS_ECDHE_RSA_AES_128_GCM_SHA256                        0xc0, 0x2f      TLS1.2       TLS_ECDHE_RSA_AES_128_CBC_SHA256                        0xc0, 0x27      TLS1.2              Protocols: VERS-TLS1.2       Ciphers: AES-128-GCM, AES-128-CBC       MACs: AEAD, SHA256       Key Exchange Algorithms: ECDHE-RSA       Groups: GROUP-SECP256R1, GROUP-SECP384R1, GROUP-SECP521R1, GROUP-X25519, GROUP-X448, GROUP-FFDHE2048, GROUP-FFDHE3072, GROUP-FFDHE4096, GROUP-FFDHE6144, GROUP-FFDHE8192       PK-signatures: SIGN-RSA-SHA256, SIGN-RSA-PSS-SHA256, SIGN-RSA-PSS-RSAE-SHA256, SIGN-ECDSA-SHA256, SIGN-ECDSA-SECP256R1-SHA256, SIGN-EdDSA-Ed25519, SIGN-RSA-SHA384, SIGN-RSA-PSS-SHA384, SIGN-RSA-PSS-RSAE-SHA384, SIGN-ECDSA-SHA384, SIGN-ECDSA-SECP384R1-SHA384, SIGN-EdDSA-Ed448, SIGN-RSA-SHA512, SIGN-RSA-PSS-SHA512, SIGN-RSA-PSS-RSAE-SHA512, SIGN-ECDSA-SHA512, SIGN-ECDSA-SECP521R1-SHA512, SIGN-RSA-SHA1, SIGN-ECDSA-SHA1
es	##### Probar cadenas de cifrado y permitir solo conjuntos de cifrado PFS  Para ver qué conjuntos de cifrado se han seleccionado, debe configurar 'DebugLevel=4' en el archivo de configuración, o usar la opción `-vv` para zabbix\_sender.  Podría ser necesario experimentar con los parámetros `TLSCipher*` antes de obtener los conjuntos de cifrado deseados. Es inconveniente reiniciar Servidor, proxy o agente Zabbix varias veces solo para modificar `TLSCipher*` parámetros. Opciones más convenientes son usar zabbix\_sender o el Comando `openssl`. Mostremos ambos.  **1.** Usando zabbix\_sender.  Hagamos un archivo de configuración de prueba, por ejemplo. /home/zabbix/test.conf, con la sintaxis de un archivo zabbix\_agentd.conf:        Hostname=nonexisting       ServerActive=nonexisting              TLSConnect=cert       TLSCAFile=/home/zabbix/ca.crt       TLSCertFile=/home/zabbix/agent.crt       TLSKeyFile=/home/zabbix/agent.key       TLSPSKIdentity=nonexisting       TLSPSKFile=/home/zabbix/agent.psk  Necesita certificados de agente y CA válidos y PSK para este ejemplo. Ajuste las rutas y los nombres de los archivos PSK y certificados para su entorno.  Si no está utilizando certificados, sino sólo PSK, puede hacer una solución más sencilla. archivo de prueba:        Hostname=nonexisting       ServerActive=nonexisting              TLSConnect=psk       TLSPSKIdentity=nonexisting       TLSPSKFile=/home/zabbix/agentd.psk  Los conjuntos de cifrado seleccionados se pueden ver ejecutando zabbix\_sender (ejemplo compilado con OpenSSL 1.1.d):        $ zabbix_sender -vv -c /home/zabbix/test.conf -k nonexisting_item -o 1 2>&1 | grep ciphersuites       zabbix_sender [41271]: DEBUG: zbx_tls_init_child() certificate ciphersuites: TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA AES128-GCM-SHA256 AES128-CCM8 AES128-CCM AES128-SHA256 AES128-SHA       zabbix_sender [41271]: DEBUG: zbx_tls_init_child() PSK ciphersuites: TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA PSK-AES128-GCM-SHA256 PSK-AES128-CCM8 PSK-AES128-CCM PSK-AES128-CBC-SHA256 PSK-AES128-CBC-SHA       zabbix_sender [41271]: DEBUG: zbx_tls_init_child() certificate and PSK ciphersuites: TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA AES128-GCM-SHA256 AES128-CCM8 AES128-CCM AES128-SHA256 AES128-SHA ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA PSK-AES128-GCM-SHA256 PSK-AES128-CCM8 PSK-AES128-CCM PSK-AES128-CBC-SHA256 PSK-AES128-CBC-SHA  Aquí verá los conjuntos de cifrado seleccionados de forma predeterminada. Estos valores predeterminados se eligen para garantizar la interoperabilidad con los agentes Zabbix que se ejecutan en sistemas con versiones anteriores de OpenSSL (desde 1.0.1).  Con los sistemas más nuevos, puede optar por reforzar la seguridad permitiendo solo un pocos conjuntos de cifrado, p. sólo conjuntos de cifrado con PFS (Perfect Forward Secreto). Intentemos permitir solo conjuntos de cifrado con PFS usando Parámetros `TLSCipher*`.  ::: noteimportant El resultado no será interoperable con los sistemas usando OpenSSL 1.0.1 y 1.0.2, si se usa PSK. Basado en certificado el cifrado debería funcionar. :::  Agregue dos líneas al archivo de configuración `test.conf`:        TLSCipherCert=EECDH+aRSA+AES128       TLSCipherPSK=kECDHEPSK+AES128  y pruebe otra vez:        $ zabbix_sender -vv -c /home/zabbix/test.conf -k nonexisting_item -o 1 2>&1 | grep ciphersuites                   zabbix_sender [42892]: DEBUG: zbx_tls_init_child() certificate ciphersuites: TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA               zabbix_sender [42892]: DEBUG: zbx_tls_init_child() PSK ciphersuites: TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA               zabbix_sender [42892]: DEBUG: zbx_tls_init_child() certificate and PSK ciphersuites: TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA AES128-GCM-SHA256 AES128-CCM8 AES128-CCM AES128-SHA256 AES128-SHA ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA PSK-AES128-GCM-SHA256 PSK-AES128-CCM8 PSK-AES128-CCM PSK-AES128-CBC-SHA256 PSK-AES128-CBC-SHA          Las listas de "conjuntos de cifrado de certificados" y "conjuntos de cifrado PSK" han cambiado - son más cortos que antes y solo contienen conjuntos de cifrado TLS 1.3 y Conjuntos de cifrado TLS 1.2 ECDHE-\* como se esperaba.  **2.** TLSCipherAll y TLSCipherAll13 no se pueden probar con zabbix\_sender; no afectan a los "certificados y conjuntos de cifrado PSK" valor mostrado en el ejemplo anterior. Para modificar TLSCipherAll y TLSCipherAll13 necesita experimentar con el agente, proxy o servidor.  Por lo tanto, para permitir solo conjuntos de cifrado PFS, es posible que deba agregar hasta tres parámetros        TLSCipherCert=EECDH+aRSA+AES128       TLSCipherPSK=kECDHEPSK+AES128       TLSCipherAll=EECDH+aRSA+AES128:kECDHEPSK+AES128  a zabbix\_agentd.conf, zabbix\_proxy.conf y zabbix\_server\_conf si cada uno de ellos tiene un certificado configurado y el agente también tiene PSK.  Si su entorno Zabbix utiliza sólo cifrado basado en PSK y no certificados, entonces solo uno:        TLSCipherPSK=kECDHEPSK+AES128  Ahora que comprende cómo funciona, puede probar el conjunto de cifrado. selección incluso fuera de Zabbix, con el comando `openssl`. vamos a probar los tres valores de parámetro `TLSCipher*`:        $ openssl ciphers EECDH+aRSA+AES128 | sed 's/:/ /g'       TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA       $ openssl ciphers kECDHEPSK+AES128 | sed 's/:/ /g'       TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA       $ openssl ciphers EECDH+aRSA+AES128:kECDHEPSK+AES128 | sed 's/:/ /g'       TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 ECDHE-RSA-AES128-GCM-SHA256 ECDHE-RSA-AES128-SHA256 ECDHE-RSA-AES128-SHA ECDHE-PSK-AES128-CBC-SHA256 ECDHE-PSK-AES128-CBC-SHA         Es posible que prefiera `cifrados openssl` con la opción `-V` para obtener una información más detallada. producción:        $ openssl ciphers -V EECDH+aRSA+AES128:kECDHEPSK+AES128                 0x13,0x02 - TLS_AES_256_GCM_SHA384  TLSv1.3 Kx=any      Au=any  Enc=AESGCM(256) Mac=AEAD                 0x13,0x03 - TLS_CHACHA20_POLY1305_SHA256 TLSv1.3 Kx=any      Au=any  Enc=CHACHA20/POLY1305(256) Mac=AEAD                 0x13,0x01 - TLS_AES_128_GCM_SHA256  TLSv1.3 Kx=any      Au=any  Enc=AESGCM(128) Mac=AEAD                 0xC0,0x2F - ECDHE-RSA-AES128-GCM-SHA256 TLSv1.2 Kx=ECDH     Au=RSA  Enc=AESGCM(128) Mac=AEAD                 0xC0,0x27 - ECDHE-RSA-AES128-SHA256 TLSv1.2 Kx=ECDH     Au=RSA  Enc=AES(128)  Mac=SHA256                 0xC0,0x13 - ECDHE-RSA-AES128-SHA    TLSv1 Kx=ECDH     Au=RSA  Enc=AES(128)  Mac=SHA1                 0xC0,0x37 - ECDHE-PSK-AES128-CBC-SHA256 TLSv1 Kx=ECDHEPSK Au=PSK  Enc=AES(128)  Mac=SHA256                 0xC0,0x35 - ECDHE-PSK-AES128-CBC-SHA TLSv1 Kx=ECDHEPSK Au=PSK  Enc=AES(128)  Mac=SHA1  De manera similar, puedes probar las cadenas de prioridad para GnuTLS:        $ gnutls-cli -l --priority=NONE:+VERS-TLS1.2:+ECDHE-RSA:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+CURVE-ALL:+COMP-NULL:+SIGN-ALL:+CTYPE-X.509       Cipher suites for NONE:+VERS-TLS1.2:+ECDHE-RSA:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+CURVE-ALL:+COMP-NULL:+SIGN-ALL:+CTYPE-X.509       TLS_ECDHE_RSA_AES_128_GCM_SHA256                        0xc0, 0x2f      TLS1.2       TLS_ECDHE_RSA_AES_128_CBC_SHA256                        0xc0, 0x27      TLS1.2              Protocols: VERS-TLS1.2       Ciphers: AES-128-GCM, AES-128-CBC       MACs: AEAD, SHA256       Key Exchange Algorithms: ECDHE-RSA       Groups: GROUP-SECP256R1, GROUP-SECP384R1, GROUP-SECP521R1, GROUP-X25519, GROUP-X448, GROUP-FFDHE2048, GROUP-FFDHE3072, GROUP-FFDHE4096, GROUP-FFDHE6144, GROUP-FFDHE8192       PK-signatures: SIGN-RSA-SHA256, SIGN-RSA-PSS-SHA256, SIGN-RSA-PSS-RSAE-SHA256, SIGN-ECDSA-SHA256, SIGN-ECDSA-SECP256R1-SHA256, SIGN-EdDSA-Ed25519, SIGN-RSA-SHA384, SIGN-RSA-PSS-SHA384, SIGN-RSA-PSS-RSAE-SHA384, SIGN-ECDSA-SHA384, SIGN-ECDSA-SECP384R1-SHA384, SIGN-EdDSA-Ed448, SIGN-RSA-SHA512, SIGN-RSA-PSS-SHA512, SIGN-RSA-PSS-RSAE-SHA512, SIGN-ECDSA-SHA512, SIGN-ECDSA-SECP521R1-SHA512, SIGN-RSA-SHA1, SIGN-ECDSA-SHA1

en-us	#### Testing expressions  It is possible to test the configured trigger expression as to what the expression result would be depending on the received value.  The following expression from an official template is taken as an example:      avg(/Cisco IOS SNMPv2/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_WARN}     or     last(/Cisco IOS SNMPv2/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_WARN_STATUS}  To test the expression, click on *Expression constructor* under the expression field.  ![](../../../../assets/en/manual/config/triggers/trigger_test.png)  In the Expression constructor, all individual expressions are listed. To open the testing window, click on *Test* below the expression list.  ![](../../../../assets/en/manual/config/triggers/expr_test_button.png){width="600"}  In the testing window you can enter sample values ('80', '70', '0', '1' in this example) and then see the expression result, by clicking on the *Test* button.  ![](../../../../assets/en/manual/config/triggers/expr_test.png){width="600"}  The result of the individual expressions as well as the whole expression can be seen.  "TRUE" means that the specified expression is correct. In this particular case A, "80" is greater than the {$TEMP\_WARN} specified value, "70" in this example. As expected, a "TRUE" result appears.  "FALSE" means that the specified expression is incorrect. In this particular case B, {$TEMP\_WARN\_STATUS} "1" needs to be equal with specified value, "0" in this example. As expected, a "FALSE" result appears.  The chosen expression type is "OR". If at least one of the specified conditions (A or B in this case) is TRUE, the overall result will be TRUE as well. Meaning that the current value exceeds the warning value and a problem has occurred.
es	#### Expresiones de prueba  Es posible probar la expresión del iniciador configurada en cuanto a cuál sería el resultado de la expresión dependiendo del valor recibido.  La siguiente expresión de una plantilla oficial se toma como ejemplo:      avg(/Cisco IOS SNMPv2/sensor.temp.value[ciscoEnvMonTemperatureValue.{#SNMPINDEX}],5m)>{$TEMP_WARN}     o     last(/Cisco IOS SNMPv2/sensor.temp.status[ciscoEnvMonTemperatureState.{#SNMPINDEX}])={$TEMP_WARN_STATUS}  Para probar la expresión, haga clic en *Constructor de expresiones* debajo del campo de expresión.  ![](../../../../assets/en/manual/config/triggers/trigger_test.png)  En el constructor de expresiones, se enumeran todas las expresiones individuales. Abra la ventana de prueba, haga clic en *Prueba* debajo de la lista de expresiones.  ![](../../../../assets/en/manual/config/triggers/expr_test_button.png){width="600"}  En la ventana de prueba puede ingresar valores de muestra ('80', '70', '0', '1' en este ejemplo) y luego ver el resultado de la expresión, haciendo clic en el Botón *Prueba*.  ![](../../../../assets/en/manual/config/triggers/expr_test.png){width="600"}  El resultado de las expresiones individuales así como de la expresión completa. puede ser visto.  "VERDADERO" significa que la expresión especificada es correcta. En este caso particular A, "80" es mayor que el valor {$TEMP\_WARN} especificado , "70" en este ejemplo. Como era de esperar, aparece un resultado "VERDADERO".  "FALSO" significa que la expresión especificada es incorrecta. En este caso particular B, {$TEMP\_WARN\_STATUS} "1" debe ser igual al valor especificado, "0" en este ejemplo. Como era de esperar, aparece un resultado "FALSO".  El tipo de expresión elegido es "O". Si al menos una de las condiciones especificadas  (A o B en este caso) es VERDADERA, el resultado general será VERDADERO también. Lo que significa que el valor actual excede el valor de advertencia y ha ocurrido un problema.

en-us	##### Testing hypothetical value  ![](../../../../assets/en/manual/config/items/test_item_p.png){width="600"}  |Parameter|Description| |--|--------| |*Get value from host*|If you want to test a hypothetical value, leave this checkbox unmarked.<br>See also: [Testing real value](#testing_real_value).| |*Value*|Enter the input value to test.<br>Clicking in the parameter field or on the view/edit button will open a text area window for entering the value or code block.| |*Not supported*|Mark this checkbox to test an unsupported value.<br>This option is useful to test the *Check for not supported value* preprocessing step.| |*Time*|Time of the input value is displayed: `now` (read-only).| |*Previous value*|Enter a previous input value to compare to.<br>Only for *Change* and *Throttling* preprocessing steps.| |*Previous time*|Enter the previous input value time to compare to.<br>Only for *Change* and *Throttling* preprocessing steps.<br>The default value is based on the 'Update interval' field value of the item (if '1m', then this field is filled with `now-1m`). If nothing is specified or the user has no access to the host, the default is `now-30s`.| |*Macros*|If any macros are used, they are listed along with their values. The values are editable for testing purposes, but the changes will only be saved within the testing context.| |*End of line sequence*|Select the end of line sequence for multiline input values:<br>**LF** - LF (line feed) sequence<br>**CRLF** - CRLF (carriage-return line-feed) sequence.| |*Preprocessing steps*|Preprocessing steps are listed; the testing result is displayed for each step after the *Test* button is clicked.<br>If the step failed in testing, an error icon is displayed. The error description is displayed on mouseover.<br>In case "Custom on fail" is specified for the step and that action is performed, a new line appears right after the preprocessing test step row, showing what action was done and what outcome it produced (error or value).| |*Result*|The final result of testing preprocessing steps is displayed in all cases when all steps are tested together (when you click on the *Test all steps* button).<br>The type of conversion to the value type of the item is also displayed, for example `Result converted to Numeric (unsigned)`.|  Click on *Test* to see the result after each preprocessing step.  Test values are stored between test sessions for either individual steps or all steps, allowing the user to change preprocessing steps or item configuration and then return to the testing window without having to re-enter information. Values are lost on a page refresh though.  The testing is done by Zabbix server. The frontend sends a corresponding request to the server and waits for the result. The request contains the input value and preprocessing steps (with expanded user macros). For *Change* and *Throttling* steps, an optional previous value and time can be specified. The server responds with results for each preprocessing step.  All technical errors or input validation errors are displayed in the error box at the top of the testing window.
es	##### Probando valores hipotéticos  ![](../../../../assets/en/manual/config/items/test_item_p.png){width="600"}  |Parámetro|Descripción| |--|--------| |*Obtener valor del equipo*|Si desea probar un valor hipotético, deje esta casilla sin marcar.<br>Consulte también: [Prueba del valor real](#testing_real_value).| |*Valor*|Ingrese el valor de entrada para probar.<br>Al hacer clic en el campo de parámetro o en el botón ver/editar se abrirá una ventana de área de texto para ingresar el valor o bloque de código.| |*No admitido*|Marque esta casilla de verificación para probar un valor no admitido.<br>Esta opción es útil para probar el paso de preprocesamiento *Comprobar valor no admitido*.| |*Hora*|Se muestra la hora del valor de entrada: `ahora` (solo lectura).| |*Valor anterior*|Ingrese un valor de entrada anterior para comparar.<br>Solo para los pasos de preprocesamiento *Cambiar* y *Acelerar*.| |*Hora anterior*|Ingrese la hora del valor de entrada anterior para comparar.<br>Solo para los pasos de preprocesamiento *Cambiar* y *Aceleración*.<br>El valor predeterminado se basa en el valor del campo 'Intervalo de actualización' del elemento (si es '1m', entonces este campo se completa con 'ahora-1m'). Si no se especifica nada o el usuario no tiene acceso al host, el valor predeterminado es `now-30s`.| |*Macros*|Si se utiliza alguna macro, se enumeran junto con sus valores. Los valores se pueden editar con fines de prueba, pero los cambios solo se guardarán dentro del contexto de prueba.| |*Secuencia de fin de línea*|Seleccione el final de secuencia de línea para valores de entrada de varias líneas:<br>**LF** - Secuencia LF (avance de línea)<br>**CRLF** - secuencia CRLF (línea de retorno de carro- alimentación) .| |*Pasos de preprocesamiento*|Se enumeran los pasos de preprocesamiento; el resultado de la prueba se muestra para cada paso después de hacer clic en el botón *Prueba*.<br>Si el paso falló en la prueba, se muestra un icono de error. La descripción del error se muestra al pasar el mouse.<br>En caso de que se especifique "Personalizado en caso de error" para el paso y se realice esa acción, aparecerá una nueva línea justo después de la fila del paso de prueba de preprocesamiento, que muestra qué acción se realizó y qué resultado. producido (error o valor).| |*Resultado*|El resultado final de probar los pasos de preprocesamiento se muestra en todos los casos cuando todos los pasos se prueban juntos (al hacer clic en el botón *Probar todos los pasos*).<br>El tipo de conversión al tipo de valor del También se muestra el elemento, por ejemplo `Resultado convertido a numérico (sin firmar)`.|  Haga clic en *Prueba* para ver el resultado después de cada paso de preprocesamiento.  Los valores de prueba se almacenan entre sesiones de prueba para cualquiera de los pasos individuales. o todos los pasos, lo que permite al usuario cambiar los pasos de preprocesamiento o la  configuración de la métrica y luego regresar a la ventana de prueba sin tener que volver a ingresar la información. Sin embargo, los valores se pierden al actualizar la página.  La prueba la realiza el servidor Zabbix. La interfaz envía la solicitud correspondiente al servidor y espera el resultado. La solicitud contiene el valor de entrada y pasos de preprocesamiento (con macros de usuario ampliadas). Para los pasos de *Cambiar* y *Acelerar*, se puede especificar un valor previo y un tiempo opcional. El servidor responde con resultados para cada paso de preprocesamiento.  Todos los errores técnicos o errores de validación de entrada se muestran en el cuadro de error en la parte superior de la ventana de prueba.

en-us	#### Testing MIB files  Testing SNMP MIBs can be done using `snmpwalk` utility. If you don't have it installed, use the following instructions.  On Debian-based systems:      # apt install snmp  On RedHat-based systems:      # dnf install net-snmp-utils  After that, the following command must not give error when you query a network device:      $ snmpwalk -v 2c -c public <NETWORK DEVICE IP> ifInOctets     IF-MIB::ifInOctets.1 = Counter32: 176137634     IF-MIB::ifInOctets.2 = Counter32: 0     IF-MIB::ifInOctets.3 = Counter32: 240375057     IF-MIB::ifInOctets.4 = Counter32: 220893420     [...]
es	#### Prueba de archivos MIB  La prueba de MIB de snmp se puede realizar mediante la utilidad `snmpwalk`. Si no lo  tiene instalado, use las siguientes instrucciones.  En sistemas basados en Debian:      # apt install snmp  En sistemas basados en RedHat:      # dnf install net-snmp-utils  Después de eso, el siguiente comando no debe dar error cuando consulta un dispositivo de red:      $ snmpwalk -v 2c -c public <NETWORK DEVICE IP> ifInOctets     IF-MIB::ifInOctets.1 = Counter32: 176137634     IF-MIB::ifInOctets.2 = Counter32: 0     IF-MIB::ifInOctets.3 = Counter32: 240375057     IF-MIB::ifInOctets.4 = Counter32: 220893420     [...]

en-us	#### Testing  ::: noteimportant To perform item testing, ensure that the system time on the server and the proxy is [synchronized](/manual/installation/requirements#time-synchronization). In the case when the server time is behind, item testing may return an error message "The task has been expired." Having set different time zones on the server and the proxy, however, won't affect the testing result. :::  It is possible to test an item and, if configured correctly, get a real value in return. Testing can occur even before an item is saved.  Testing is available for host and template items, item prototypes and low-level discovery rules. Testing is not available for active items.  Item testing is available for the following passive item types:  -   Zabbix agent -   SNMP agent (v1, v2, v3) -   IPMI agent -   SSH checks -   Telnet checks -   JMX agent -   Simple checks (except `icmpping*`, `vmware.*` items) -   Zabbix internal -   Calculated items -   External checks -   Database monitor -   HTTP agent -   Script  To test an item, click on the *Test* button at the bottom of the item configuration form. Note that the *Test* button will be disabled for items that cannot be tested (like active checks, excluded simple checks).  ![](../../../../assets/en/manual/config/items/item_test_button.png)  The item testing form has fields for the required host parameters (host address, port, proxy name/no proxy) and item-specific details (such as SNMPv2 community or SNMPv3 security credentials). These fields are context aware:  -   The values are pre-filled when possible, i.e., for items requiring an     agent, by taking the information from the selected agent interface     of the host -   The values have to be filled manually for template items -   Plain-text macro values are resolved -   Fields where the value (or part of the value) is a secret or Vault     macro are empty and have to be entered manually. If any item     parameter contains a secret macro value, the following warning     message is displayed: "Item contains user-defined macros with secret     values. Values of these macros should be entered manually." -   The fields are disabled when not needed in the context of the item     type (e.g., the host address field and the proxy field are disabled     for calculated items)  To test the item, click on *Get value*. If the value is retrieved successfully, it will fill the *Value* field, moving the current value (if any) to the *Previous value* field while also calculating the *Prev. time* field, i.e., the time difference between the two values (clicks) and trying to detect an EOL sequence and switch to CRLF if detecting "\\n\\r" in retrieved value.  ![](../../../../assets/en/manual/config/items/item_test.png){width="600"}  If the configuration is incorrect, an error message is displayed describing the possible cause.  ![](../../../../assets/en/manual/config/items/item_test_error.png)  A successfully retrieved value from host can also be used to test [preprocessing steps](/manual/config/items/preprocessing#testing).
es	#### Pruebas  ::: noteimportant Para realizar pruebas de métricas, asegúrese de que la hora del sistema en el servidor y el proxy esté [sincronizada](/manual/installation/requirements#time-synchronization). En el caso de que la hora del servidor esté retrasada, la prueba de la métrica puede devolver un mensaje de error "La tarea ha caducado". Sin embargo, haber configurado diferentes zonas horarias en el servidor y el proxy no afectará el resultado de la prueba. :::  Es posible probar una métrica y, si se configura correctamente, obtener como resultado  un valor real. Las pruebas pueden realizarse incluso antes de guardar una métrica.  Las pruebas están disponibles para métricas de equipos y de plantillas, prototipos de métricas y reglas de descubrimiento de bajo nivel. Las pruebas no están disponibles para métricas activas.  La prueba de métricas está disponible para los siguientes tipos de métricas pasivas:  - Agente Zabbix - Agente SNMP (v1, v2, v3) - Agente IPMI - Comprobaciones SSH - Comprobaciones Telnet - Agente JMX - Comprobaciones simples (excepto métricas `icmpping*`, `vmware.*`) - Zabbix interno - Métricas calculadas - Comprobaciones externas - Monitor de base de datos - Agente HTTP - Script  Para probar una métrica, haga clic en el botón *Probar* en la parte inferior del formulario de configuración de la métrica. Tenga en cuenta que el botón *Probar* estará desactivado para métricas que no se pueden probar (como controles activos, comprobaciones simples excluidas).  ![](../../../../assets/en/manual/config/items/item_test_button.png)  El formulario de prueba de la métrica tiene campos para los parámetros de equipo requeridos (dirección del equipo, puerto, nombre de proxy/sin proxy) y detalles específicos de la métrica (como comunidad SNMPv2 o credenciales de seguridad SNMPv3). Estos campos son dependientes del contexto:  - Los valores se completan previamente cuando es posible, es decir, para métricas que requieren un     agente, tomando la información de la interfaz del agente      del equipo seleccionado - Los valores deben completarse manualmente para las plantillas de métricas. - Se resuelven los valores de macro de texto sin formato. - Campos donde el valor (o parte del valor) es un secreto o Vault     La macro está vacía y debe ingresarse manualmente. Si algún     parámetro de métrica contiene un valor de macro secreto, se muestra     el siguiente mensaje de advertencia: "La métrica contiene macros definidas por el usuario con      valores secretos. Los valores de estas macros deben ingresarse manualmente." - Los campos están deshabilitados cuando no son necesarios en el contexto del tipo de      métrica (por ejemplo, el campo de dirección de equipo y el campo de proxy están deshabilitados     para métricas calculadas)  Para probar la métrica, haga clic en *Obtener valor*. Si se recupera el valor exitosamente, llenará el campo *Valor*, moviendo el valor actual (si corresponde) al campo *Valor anterior* mientras también se calcula el campo *Hora del  valor anterior*, es decir, la diferencia horaria entre los dos valores (clics) e intentar detectar una secuencia EOL y cambiar a CRLF si detecta "\\n\\r" en el valor recuperado.  ![](../../../../assets/en/manual/config/items/item_test.png){width="600"}  Si la configuración es incorrecta, se muestra un mensaje de error  describiendo la posible causa.  ![](../../../../assets/en/manual/config/items/item_test_error.png)  Un valor recuperado exitosamente del equipo también se puede usar para probar [pasos de preprocesamiento](/manual/config/items/preprocessing#testing).

en-us	##### Testing real value  To test preprocessing against a real value:  -   Mark the *Get value from host* checkbox -   Enter or verify host parameters (host address, port, proxy name/no     proxy) and item-specific details (such as SNMPv2 community or SNMPv3     security credentials). These fields are context-aware:     -   The values are pre-filled when possible, i.e. for items         requiring an agent, by taking the information from the selected         agent interface of the host     -   The values have to be filled manually for template items     -   Plain-text macro values are resolved     -   Fields where the value (or part of the value) is a secret or         Vault macro are empty and have to be entered manually. If any         item parameter contains a secret macro value, the following         warning message is displayed: "Item contains user-defined macros         with secret values. Values of these macros should be entered         manually."     -   The fields are disabled when not needed in the context of the         item type (e.g. the host address and the proxy fields are         disabled for calculated items) -   Click on *Get value and test* to test the preprocessing  ![](../../../../assets/en/manual/config/items/test_item_p2.png){width="600"}  If you have specified a value mapping in the item configuration form ('Show value' field), the item test dialog will show another line after the final result, named 'Result with value map applied'.  Parameters that are specific to getting a real value from a host:  |Parameter|Description| |--|--------| |*Get value from host*|Mark this checkbox to get a real value from the host.| |*Host address*|Enter the host address.<br>This field is automatically filled by the address of the item host interface.| |*Port*|Enter the host port.<br>This field is automatically filled by the port of item host interface.| |*Additional fields for SNMP interfaces<br>(SNMP version, SNMP community, Context name, etc)*|See [Configuring SNMP monitoring](/manual/config/items/itemtypes/snmp#step_2) for additional details on configuring an SNMP interface (v1, v2 and v3).<br>These fields are automatically filled from the item host interface.| |*Proxy*|Specify the proxy if the host is monitored by a proxy.<br>This field is automatically filled by the proxy of the host (if any).|  For the rest of the parameters, see [Testing hypothetical value](#testing_hypothetical_value) above.
es	##### Probando valores reales  Para probar el preprocesamiento con un valor real:  - Marque la casilla de verificación *Obtener valor del equipo* - Ingrese o verifique los parámetros del equipo (dirección de equipo, puerto, nombre de proxy/no     proxy) y detalles específicos de la métrica (como la comunidad SNMPv2 o la comunidad SNMPv3 o las     credenciales de seguridad). Estos campos tienen en cuenta el contexto:     - Los valores se completan previamente cuando es posible, es decir, para métricas que         requieren un agente, tomando la información del          interfaz seleccionado del agente del equipo     - Los valores deben completarse manualmente para las métricas de la plantilla.     - Se resuelven los valores de macro de texto sin formato.     - Los campos donde el valor (o parte del valor) es un secreto o         las macros de Vault están vacías, deben ingresarse manualmente. Si algún         parámetro de la métrica contiene un valor de macro secreto, se muestra         un mensaje de advertencia: "La métrica contiene macros definidas por el usuario         con valores secretos. Se deben ingresar los valores de estas macros.         a mano."     - Los campos están deshabilitados cuando no son necesarios en el contexto del         tipo de métrica (por ejemplo, la dirección del equipo y los campos de proxy son         deshabilitados para métricas calculadas) - Haga clic en *Obtener valor y probar* para probar el preprocesamiento  ![](../../../../assets/en/manual/config/items/test_item_p2.png){width="600"}  Si ha especificado una asignación de valor en el formulario de configuración de la métrica (campo 'Mostrar valor'), el cuadro de diálogo de prueba de la métrica mostrará después otra línea  con el resultado final, denominada 'Resultado con mapa de valores aplicado'.  Parámetros que son específicos para obtener un valor real de un equipo:  |Parámetro|Descripción| |--|--------| |*Obtener valor del equipo*|Marque esta casilla de verificación para obtener un valor real del equipo.| |*Dirección del equipo*|Ingrese la dirección del equipo.<br>Este campo se completa automáticamente con la dirección de la interfaz del equipo de la métrica.| |*Puerto*|Ingrese el puerto del equipo.<br>Este campo se completa automáticamente con el puerto de la interfaz del equipo de la métrica.| |*Campos adicionales para interfaces SNMP<br>(versión SNMP, comunidad SNMP, nombre de contexto, etc.)*|Consulte [Configuración de monitoreo SNMP](/manual/config/items/itemtypes/snmp#step_2) para obtener detalles adicionales sobre cómo configurar una Interfaz SNMP (v1, v2 y v3).<br>Estos campos se completan automáticamente desde la interfaz del equipo de la métrica.| |*Proxy*|Especifique el proxy si el equipo es monitoreado por un proxy.<br>Este campo lo completa automáticamente el proxy del equipo (si lo hay).|  Para el resto de parámetros, consulte [Probando valores  hipotéticos](#testing_hypothetical_value).

en-us	#### Testing  Testing preprocessing steps is useful to make sure that complex preprocessing pipelines yield the results that are expected from them, without waiting for the item value to be received and preprocessed.  ![](../../../../assets/en/manual/config/items/test_item_steps.png){width="600"}  It is possible to test:  -   against a hypothetical value -   against a real value from a host  Each preprocessing step can be tested individually as well as all steps can be tested together. When you click on the *Test* or *Test all steps* button respectively in the Actions block, a testing window is opened.
es	#### Pruebas  Probar los pasos de preprocesamiento es útil para asegurarse de que las canalizaciones de preprocesamiento producen los resultados que se esperan de ellas, sin esperar a recibir y preprocesar el valor del artículo.  ![](../../../../assets/en/manual/config/items/test_item_steps.png){width="600"}  Es posible probar:  - contra un valor hipotético - contra un valor real de un host  Cada paso de preprocesamiento se puede probar individualmente, así como todos los pasos se pueden probar juntos. Al hacer clic en *Probar* o *Probar todos los pasos* respectivamente en el bloque Acciones, se abre una ventana de prueba.

en-us	##### Testing  To test a report, click the *Test* button at the bottom of the report configuration form.  ::: noteclassic The *Test* button is not available if the report configuration form has been opened from the dashboard [action menu](/manual/web_interface/frontend_sections/dashboards#viewing_and_editing_a_dashboard). :::  If the configuration is correct, the test report is sent immediately to the current user. For test reports, subscribers and *Generate report by* user settings are ignored.  If the configuration is incorrect, an error message is displayed describing the possible cause.  ![](../../../assets/en/manual/web_interface/report_test_error.png)
es	##### Pruebas  Para probar un informe, haga clic en el botón *Probar* en la parte inferior del formulario de configuración del informe.  ::: noteclassic El botón *Probar* no está disponible si el formulario de configuración del informe se ha abierto desde el tablero [menú de acciones](/manual/web_interface/frontend_sections/dashboards#viewing_and_editing_a_dashboard). :::  Si la configuración es correcta, el informe de prueba se envía inmediatamente al usuario actual. Para los informes de prueba, se ignoran los suscriptores y la configuración de usuario *Generar informe por* .  Si la configuración es incorrecta, se muestra un mensaje de error que describe la posible causa.  ![](../../../assets/en/manual/web_interface/report_test_error.png)

en-us	##### Test user directory for existing user  Test user directory "3" for "user1".  [Request](/manual/api#performing-requests):  ```json {     "jsonrpc": "2.0",     "method": "userdirectory.test",     "params": {         "userdirectoryid": "3",         "host": "127.0.0.1",         "port": "389",         "base_dn": "ou=Users,dc=example,dc=org",         "search_attribute": "uid",         "bind_dn": "cn=ldap_search,dc=example,dc=org",         "bind_password": "password",         "test_username": "user1",         "test_password": "password"     },     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": true,     "id": 1 } ```
es	##### Pruebe el directorio de usuarios para el usuario existente  Pruebe el directorio de usuarios "3" para "usuario1".  [Solicitud](/manual/api#performing-requests):  ```json {     "jsonrpc": "2.0",     "method": "userdirectory.test",     "params": {         "userdirectoryid": "3",         "host": "127.0.0.1",         "port": "389",         "base_dn": "ou=Users,dc=example,dc=org",         "search_attribute": "uid",         "bind_dn": "cn=ldap_search,dc=example,dc=org",         "bind_password": "password",         "test_username": "user1",         "test_password": "password"     },     "id": 1 } ```  Respuesta:  ```json {     "jsonrpc": "2.0",     "result": true,     "id": 1 } ```

en-us	##### Test user directory for non-existing user  Test user directory "3" for non-existing "user2".  [Request](/manual/api#performing-requests):  ```json {     "jsonrpc": "2.0",     "method": "userdirectory.test",     "params": {         "userdirectoryid": "3",         "host": "127.0.0.1",         "port": "389",         "base_dn": "ou=Users,dc=example,dc=org",         "search_attribute": "uid",         "bind_dn": "cn=ldap_search,dc=example,dc=org",         "test_username": "user2",         "test_password": "password"     },     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "error": {         "code": -32500,         "message": "Application error.",         "data": "Incorrect user name or password or account is temporarily blocked."     },     "id": 1 } ```
es	##### Pruebe el directorio de usuarios para un usuario no existente  Pruebe el directorio de usuarios "3" para detectar si no existe un "usuario2".  [Solicitud](/manual/api#performing-requests):  ```json {     "jsonrpc": "2.0",     "method": "userdirectory.test",     "params": {         "userdirectoryid": "3",         "host": "127.0.0.1",         "port": "389",         "base_dn": "ou=Users,dc=example,dc=org",         "search_attribute": "uid",         "bind_dn": "cn=ldap_search,dc=example,dc=org",         "test_username": "user2",         "test_password": "password"     },     "id": 1 } ```  Respuesta:  ```json {     "jsonrpc": "2.0",     "error": {         "code": -32500,         "message": "Application error.",         "data": "Incorrect user name or password or account is temporarily blocked."     },     "id": 1 } ```

en-us	##### Test user directory for user provisioning  Test userdirectory "3" for what configured data matches the user directory settings for "user3" provisioning (e.g., what user role, user groups, user medias will be assigned to the user).  [Request](/manual/api#performing-requests):  ```json {     "jsonrpc": "2.0",     "method": "userdirectory.test",     "params": {         "userdirectoryid": "2",         "host": "host.example.com",         "port": "389",         "base_dn": "DC=zbx,DC=local",         "search_attribute": "sAMAccountName",         "bind_dn": "CN=Admin,OU=Users,OU=Zabbix,DC=zbx,DC=local",         "test_username": "user3",         "test_password": "password"     },     "id": 1 } ```  Response:  ```json {     "jsonrpc": "2.0",     "result": {         "username": "user3",         "name": "John",         "surname": "Doe",         "medias": [],         "usrgrps": [             {                 "usrgrpid": "8"             },             {                 "usrgrpid": "7"             }         ],         "roleid": "2",         "userdirectoryid": "2"     },     "id": 1 } ```
es	##### Pruebe el directorio de usuarios para el aprovisionamiento de usuarios  Pruebe el directorio de usuarios "3" para ver qué datos configurados coinciden con la configuración del directorio de usuarios para el aprovisionamiento de "usuario3" (por ejemplo, qué rol de usuario, grupos de usuarios, medios de usuario se asignarán al usuario).  [Solicitud](/manual/api#performing-requests):  ```json {     "jsonrpc": "2.0",     "method": "userdirectory.test",     "params": {         "userdirectoryid": "2",         "host": "host.example.com",         "port": "389",         "base_dn": "DC=zbx,DC=local",         "search_attribute": "sAMAccountName",         "bind_dn": "CN=Admin,OU=Users,OU=Zabbix,DC=zbx,DC=local",         "test_username": "user3",         "test_password": "password"     },     "id": 1 } ```  Respuesta:  ```json {     "jsonrpc": "2.0",     "result": {         "username": "user3",         "name": "John",         "surname": "Doe",         "medias": [],         "usrgrps": [             {                 "usrgrpid": "8"             },             {                 "usrgrpid": "7"             }         ],         "roleid": "2",         "userdirectoryid": "2"     },     "id": 1 } ```

en-us	 ## Test your configuration  On Linux, you can simulate high CPU load and as a result receive a problem alert by running:      cat /dev/urandom | md5sum  You may need to run several [md5sum](https://en.wikipedia.org/wiki/Md5sum) processes for CPU load to exceed the threshold.  When Zabbix detects the problem, it will appear in the Monitoring->Problems section.  ![](../../../assets/en/manual/guides/linux_problem.png){width="600"}  If the alerts are [configured](#set-up-problem-alerts), you will also receive the problem notification. 
es	 ## Pruebe su configuración  En Linux, puede simular una carga alta de CPU y, como resultado, recibir una alerta de problema ejecutando:      cat /dev/urandom | md5sum  Es posible que deba ejecutar varios procesos [md5sum](https://en.wikipedia.org/wiki/Md5sum) para que la carga de la CPU supere el umbral.  Cuando Zabbix detecte el problema, aparecerá en la sección Monitoreo->Problemas.  ![](../../../assets/en/manual/guides/linux_problem.png){width="600"}  Si las alertas están [configuradas](#set-up-problem-alerts), también recibirá la notificación del problema.

en-us	 ## Test your configuration  To simulate real problem and receive a test problem alert:  1\. Open the *Apache server* host configuration in Zabbix.   2\. Switch to the Macros tab and select *Inherited and host macros*.   3\. Press *Change* next to {$APACHE.STATUS.PORT} macro and set a different port.   4\. Press Update to save host configuration.   5\. In a few minutes, Zabbix will detect the problem *Apache service is down*, because now it cannot connect to the instance.  It will appear in the Monitoring->Problems section.  ![](../../../assets/en/manual/guides/apache_problem.png){width="600"}  If the alerts are [configured](#set-up-problem-alerts), you will also receive the problem notification.   6\. Change the macro value back to resolve the problem and continue monitoring Apache. 
es	 ## Pruebe su configuración  Para simular un problema real y recibir una alerta de problema de prueba:  1\. Abra la configuración del equipo del *servidor Apache* en Zabbix.  2\. Cambie a la pestaña Macros y seleccione *Macros heredadas y de equipo*.  3\. Presione *Cambiar* junto a la macro {$APACHE.STATUS.PORT} y configure un puerto diferente.  4\. Presione Actualizar para guardar la configuración del equipo.  5\. En unos minutos, Zabbix detectará el problema *El servicio Apache no funciona*, porque ahora no puede conectarse a la instancia. Aparecerá en la sección Monitoreo->Problemas.  ![](../../../assets/en/manual/guides/apache_problem.png){width="600"}  Si las alertas están [configuradas](#set-up-problem-alerts), también recibirá la notificación del problema.  6\. Vuelva a cambiar el valor de la macro para resolver el problema y continuar monitoreando Apache.

en-us	#### Test your configuration  To test your configuration, we can simulate a real problem by updating the host configuration in Zabbix frontend.  1\. Open your MySQL server host configuration in Zabbix.  2\. Switch to the *Macros* tab and select *Inherited and host macros*.  3\. Click on *Change* next to, for example, the [previously configured](#configure-zabbix-frontend) {$MYSQL.USER} macro value and set a different MySQL user name.  4\. Click on *Update* to update the host configuration.  5\. In a few moments, Zabbix will detect the problem "MySQL: Service is down", because it will not be able to connect to the MySQL server. The problem will appear in [*Monitoring → Problems*](/manual/web_interface/frontend_sections/monitoring/problems).  ![](../../../assets/en/manual/guides/mysql_problem.png){width="600"}  If alerts are [configured](#set-up-problem-alerts), you will also receive the problem notification.  6\. Change the macro value back to its previous value to resolve the problem and continue monitoring the MySQL server.
es	#### Pruebe su configuración  Para probar su configuración, podemos simular un problema real actualizando la configuración del equipo en la interfaz de Zabbix.  1\. Abra la configuración del equipo de su servidor MySQL en Zabbix.  2\. Cambie a la pestaña *Macros* y seleccione *Macros heredadas y de equipo*.  3\. Haga clic en *Cambiar* junto a, por ejemplo, el valor de la macro [previamente configurado](#configure-zabbix-frontend) {$MYSQL.USER} y establezca un nombre de usuario MySQL diferente.  4\. Haga clic en *Actualizar* para actualizar la configuración del equipo.  5\. En unos momentos, Zabbix detectará el problema "MySQL: Servicio caído", porque no podrá conectarse al servidor MySQL. El problema aparecerá en [*Monitoreo → Problemas*](/manual/web_interface/frontend_sections/monitoring/problems).  ![](../../../assets/en/manual/guides/mysql_problem.png){width="600"}  Si las alertas están [configuradas](#set-up-problem-alerts), también recibirá la notificación del problema.  6\. Cambie el valor de la macro a su valor anterior para resolver el problema y continuar monitoreando el servidor MySQL.

en-us	#### Text data limits  Text data limits depend on the database backend. Before storing text values in the database they get truncated to match the database value type limit:  |Database|Type of information|<|<| |--|---|---|---| | |**Character**|**Log**|**Text**| |*MySQL*|255 characters|65536 bytes|65536 bytes| |*PostgreSQL*|255 characters|65536 characters|65536 characters| |*Oracle*|255 characters|65536 characters|65536 characters| |*SQLite (only Zabbix proxy)*|255 characters|65536 characters|65536 characters|
es	#### Límites de datos de texto  Los límites de datos de texto dependen de la base de datos utilizada. Antes de  almacenar los valores de texto en la base de datos éstos son truncados para  hacerlo coincidir con el límite del tipo de valor de la base de datos:  |Base de datos|Tipo de información|<|<| |--|----|----|----| | |**Character**|**Log**|**Text**| |MySQL|255 caracteres|65536 bytes|65536 bytes| |PostgreSQL|255 caracteres|65536 caracteres|65536 caracteres| |Oracle|255 caracteres|65536 caracteres|65536 caracteres| |*SQLite (solo proxy Zabbix)*|255 caracteres|65536 caracteres|65536 caracteres|

en-us	### Text history  The text history object has the following properties.  |Property|[Type](/manual/api/reference_commentary#data_types)|Description| |--|--|------| |id|string|ID of the history entry.| |clock|timestamp|Time when that value was received.| |itemid|string|ID of the related item.| |ns|integer|Nanoseconds when the value was received.| |value|text|Received value.|
es	### Historial de texto  El objeto de historial de texto tiene las siguientes propiedades.  |Propiedad|[Tipo](/manual/api/reference_commentary#data_types)|Descripción| |--|--|------| |id|cadena|ID de la entrada del historial.| |clock|marca de tiempo|Hora en que se recibió ese valor.| |itemid|cadena|ID de la métrica relacionada.| |ns|entero|Nanosegundos cuando se recibió el valor.| |value|texto|Valor recibido.|

en-us	##### Text  The following parameters are supported if *Data* is set to "Text".  |Parameter|[type](/manual/api/reference/dashboard/object#dashboard-widget-field)|name|value| |-----|-|-----|-------------------| |*Text*|1|columns.text.0|Any string value, including macros.<br>Supported macros: {HOST.\*}, {INVENTORY.\*}.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required* if *Data* is set to "Text"|
es	##### Texto  Los siguientes parámetros son compatibles si *Data* está configurado en "Text".  |Parámetro|[tipo](/manual/api/reference/dashboard/object#dashboard-widget-field)|nombre|valor| |-----|-|-----|-------------------| |*Texto*|1|columns.text.0|Cualquier valor de cadena, incluidas las macros.<br>Macros admitidas: {HOST.\*}, {INVENTORY.\*}.<br><br>[Comportamiento de los parámetros] (/manual/api/reference_commentary#parameter-behavior):<br>- *obligatorio* si *Datos* está configurado en "Texto"|

en-us	 The 1st criterion is a process name (argument <name>). In our example Zabbix agent will see it as 'topasrec'. In order to match, you need to either specify 'topasrec' or to leave it empty. The 2nd criterion is a user name (argument <user>). To match, you need to either specify 'root' or to leave it empty. The 3rd criterion used in process selection is an argument <cmdline>. Zabbix agent will see its value as '/usr/bin/topasrec -L -s 300 -R 1 -r 6 -o /var/perf/daily/ -ypersistent=1 -O type=bin -ystart_time=04:08:54,Mar16,2023'. To match, you need to either specify a regular expression which matches this string or to leave it empty.  Arguments <mode> and <memtype> are applied after using the three criteria mentioned above. 
es	 El primer criterio es el nombre del proceso (argumento <nombre>). En nuestro ejemplo, el agente Zabbix lo verá como 'topasrec'. Para hacer coincidir, debe especificar 'topasrec' o dejarlo vacío. El segundo criterio es un nombre de usuario (argumento <usuario>). Para que coincida, debe especificar 'root' o dejarlo vacío. El tercer criterio utilizado en la selección de procesos es un argumento <cmdline>. El agente Zabbix verá su valor como '/usr/bin/topasrec -L -s 300 -R 1 -r 6 -o /var/perf/daily/ -ypersistent=1 -O type=bin -ystart_time=04:08: 54, 16 de marzo de 2023 '. Para hacerlo coincidir, debe especificar una expresión regular que coincida con esta cadena o dejarla vacía.  Los argumentos <modo> y <memtype> se aplican después de utilizar los tres criterios mencionados anteriormente.

en-us	The agent then periodically sends the new values to the server(s).  ::: notetip If an agent is behind the firewall you might consider using only Active checks because in this case you wouldn't need to modify the firewall to allow initial incoming connections. :::
es	Luego, el agente envía periódicamente los nuevos valores a los servidores.  ::: notetip Si un agente está detrás del firewall, puede considerar usar solo comprobaciones activas porque en este caso no necesitaría modificar el firewall para permitir conexiones entrantes iniciales. :::

en-us	 The ***\_doActivate()*** method makes the widget active and interactive by enabling custom event listeners (for responding to user actions) and initiating the widget update cycle (for keeping its content up-to-date). This method is invoked when the dashboard page is activated, that is, when it becomes fully displayed in the user interface.  Note that before the *\_doActivate()* method is invoked, the widget is in the inactive state (`WIDGET_STATE_INACTIVE`). After successful invocation, the widget transitions to the active state (`WIDGET_STATE_ACTIVE`). In the active state, the widget is responsive, listens to events, updates its content periodically, and can interact with other widgets.  Example:  ```js _doActivate() {     super._doActivate();      if (this._has_contents) {         this._activateContentsEvents();     } } ```
es	 El método ***\_doActivate()*** hace que el widget esté activado e interactúe al habilitar detectores de eventos personalizados (para responder a las acciones del usuario) e iniciar el ciclo de actualización del widget (para mantener su contenido actualizado). Este método se invoca cuando se activa la página del tablero, es decir, cuando se muestra completamente en la interfaz de usuario.  Tenga en cuenta que antes de invocar el método *\_doActivate()*, el widget está en estado inactivo (`WIDGET_STATE_INACTIVE`). Después de una invocación exitosa, el widget pasa al estado activo (`WIDGET_STATE_ACTIVE`). En el estado activo, el widget responde, escucha eventos, actualiza su contenido periódicamente y puede interactuar con otros widgets.  Ejemplo:  ```js _doActivate() { super._doActivate();  if (this._has_contents) { this._activateContentsEvents(); } } ```

en-us	 The ***\_doDeactivate()*** method stops any activity and interactivity of the widget by deactivating custom event listeners and stopping the widget update cycle. This method is invoked when the dashboard page is deactivated, that is, switched away or deleted, or when the widget is deleted from the dashboard page.  Note that before the *\_doDeactivate()* method is invoked, the widget is in the active state (`WIDGET_STATE_ACTIVE`). After successful invocation, the widget transitions to the inactive state (`WIDGET_STATE_INACTIVE`).  Example:  ```js _doDeactivate() {     super._doDeactivate();      this._deactivateContentsEvents(); } ```
es	 El método ***\_doDeactivate()*** detiene cualquier actividad e interactividad del widget desactivando los detectores de eventos personalizados y deteniendo el ciclo de actualización del widget. Este método se invoca cuando la página del tablero está desactivada, es decir, se apaga o se elimina, o cuando el widget se elimina de la página del tablero.  Tenga en cuenta que antes de invocar el método *\_doDeactivate()*, el widget está en estado activo (`WIDGET_STATE_ACTIVE`). Después de una invocación exitosa, el widget pasa al estado inactivo (`WIDGET_STATE_INACTIVE`).  Ejemplo:  ```js _doDeactivate() { super._doDeactivate();  this._deactivateContentsEvents(); } ```

en-us	 The ***\_doDestroy()*** method performs cleanup tasks before the widget is deleted from the dashboard, which can include closing a database connection that was established during widget initialization, cleaning up temporary data to free up system memory and avoid resource leaks, unregistering event listeners related to resize events or button clicks to prevent unnecessary event handling and memory leaks, etc. This method is invoked when the widget or the dashboard page that contains it is deleted.  Note that before the *\_doDestroy()* method is invoked, a widget in an active state (`WIDGET_STATE_ACTIVE`) is always deactivated with the invocation of the *\_doDeactivate()* method.  Example:  ```js _doDestroy() {     super._doDestroy();      if (this._filter_widget) {         this._filter_widget.off(CWidgetMap.WIDGET_NAVTREE_EVENT_MARK, this._events.mark);         this._filter_widget.off(CWidgetMap.WIDGET_NAVTREE_EVENT_SELECT, this._events.select);     } } ```
es	 El método ***\_doDestroy()*** realiza tareas de limpieza antes de que el widget se elimine del tablero. que puede incluir cerrar una conexión de base de datos que se estableció durante la inicialización del widget, limpiar datos temporales para liberar memoria del sistema y evitar fugas de recursos, cancelar el registro de detectores de eventos relacionados con eventos de cambio de tamaño o clics de botones para evitar el manejo innecesario de eventos y pérdidas de memoria, etc. Este método se invoca cuando se elimina el widget o la página del tablero que lo contiene.  Tenga en cuenta que antes de invocar el método *\_doDestroy()*, un widget en estado activo (`WIDGET_STATE_ACTIVE`) siempre se desactiva con la invocación del método *\_doDeactivate()*.  Ejemplo:  ```js _doDestroy() { super._doDestroy();  if (this._filter_widget) { this._filter_widget.off(CWidgetMap.WIDGET_NAVTREE_EVENT_MARK, this._events.mark); this._filter_widget.off(CWidgetMap.WIDGET_NAVTREE_EVENT_SELECT, this._events.select); } } ```

en-us	# The following krb5.conf variables are only for MIT Kerberos.     kdc_timesync = 1     ccache_type = 4     forwardable = true     proxiable = true  [realms]     EXAMPLE.COM = {     }  [domain_realm]     .example.com=EXAMPLE.COM     example.com=EXAMPLE.COM  ```
es	# Las siguientes variables krb5.conf son solo para el Kerberos del MIT.     kdc_timesync = 1     ccache_type = 4     forwardable = true     proxiable = true  [realms]     EXAMPLE.COM = {     }  [domain_realm]     .example.com=EXAMPLE.COM     example.com=EXAMPLE.COM  ```

en-us	The following parameters are supported for all columns.  |Parameter|[type](/manual/api/reference/dashboard/object#dashboard-widget-field)|name|value| |-----|-|-----|-------------------| |*Name*|1|columns.name.0|Any string value.| |*Data*|0|columns.data.0|1 - Item value;<br>2 - Host name;<br>3 - Text.<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required*| |*Base color*|1|columns.base_color.0|Hexadecimal color code (e.g. `FF0000`).<br><br>[Parameter behavior](/manual/api/reference_commentary#parameter-behavior):<br>- *required*|
es	Los siguientes parámetros son compatibles con todas las columnas.  |Parámetro|[tipo](/manual/api/reference/dashboard/object#dashboard-widget-field)|nombre|valor| |-----|-|-----|-------------------| |*Nombre*|1|columnas.nombre.0|Cualquier valor de cadena.| |*Datos*|0|columns.data.0|1 - Valor del elemento;<br>2 - Nombre del equipo;<br>3 - Texto.<br><br>[Comportamiento del parámetro](/manual/api/reference_commentary #comportamiento-parámetro):<br>- *obligatorio*| |*Color base*|1|columns.base_color.0|Código de color hexadecimal (por ejemplo, `FF0000`).<br><br>[Comportamiento de parámetros](/manual/api/reference_commentary#parameter-behavior):<br> - *obligatorio*|

en-us	 The following quick reference guides are available:  - [Monitor Linux with Zabbix agent](/manual/guides/monitor_linux) - [Monitor Windows with Zabbix agent](/manual/guides/monitor_windows) - [Monitor Apache via HTTP](/manual/guides/monitor_apache) - [Monitor MySQL with Zabbix agent 2](/manual/guides/monitor_mysql) - [Monitor VMware with Zabbix](/manual/guides/monitor_vmware)
es	 Las siguientes guías de referencia rápida están disponibles:  - [Monitorear Linux con el agente Zabbix](/manual/guides/monitor_linux) - [Monitorear Windows con el agente Zabbix](/manual/guides/monitor_windows) - [Monitorear Apache a través de HTTP](/manual/guides/monitor_apache) - [Monitorear MySQL con el agente Zabbix 2](/manual/guides/monitor_mysql) - [Monitorear VMware con Zabbix](/manual/guides/monitor_vmware)

en-us	 The following upgrade notes are available:  |Upgrade from|Read full upgrade notes|Most important changes between versions| |--|--|------| |6.2.x    |For:<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Minimum required MySQL version raised from 8.0.0 to 8.0.30.<br>'libevent_pthreads' library is required for Zabbix server/proxy.<br> Upon the first launch after an upgrade, Zabbix proxy with SQLite3 automatically drops the old version of the database (with all the history) and creates a new one. | |6.0.x LTS|For:<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Minimum required PHP version upped from 7.2.5 to 7.4.0. <br> Deterministic triggers need to be created during the upgrade. If binary logging is enabled for MySQL/MariaDB, this requires superuser privileges or setting the variable/configuration parameter  *log_bin_trust_function_creators = 1*. See [Database creation scripts](/manual/appendix/install/db_scripts#mysql) for instructions how to set the variable.| |5.4.x    |For:<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Minimum required database versions upped.<br>Server/proxy will not start if outdated database.<br>Audit log records lost because of database structure change. | |5.2.x    |For:<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Minimum required database versions upped.<br>Aggregate items removed as a separate type.| |5.0.x LTS|For:<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Minimum required PHP version upped from 7.2.0 to 7.2.5.<br> Password hashing algorithm changed from MD5 to bcrypt. | |4.4.x    |For:<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Support of IBM DB2 dropped.<br>Minimum required PHP version upped from 5.4.0 to 7.2.0.<br>Minimum required database versions upped.<br>Changed Zabbix PHP file directory.| |4.2.x    |For:<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.4/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Jabber, Ez Texting media types removed.| |4.0.x LTS|For:<br>Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.4/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Older proxies no longer can report data to an upgraded server.<br>Newer agents no longer will be able to work with an older Zabbix server.| |3.4.x    |For:<br>Zabbix [4.0](https://www.zabbix.com/documentation/4.0/manual/installation/upgrade_notes_400)<br>Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.4/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|'libpthread' and 'zlib' libraries now mandatory.<br>Support for plain text protocol dropped and header is mandatory.<br>Pre-1.4 version Zabbix agents are no longer supported.<br>The Server parameter in passive proxy configuration now mandatory.| |3.2.x    |For:<br>Zabbix [3.4](https://www.zabbix.com/documentation/3.4/manual/installation/upgrade_notes_340)<br>Zabbix [4.0](https://www.zabbix.com/documentation/4.0/manual/installation/upgrade_notes_400)<br>Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.4/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|SQLite support as backend database dropped for Zabbix server/frontend.<br>Perl Compatible Regular Expressions (PCRE) supported instead of POSIX extended.<br>'libpcre' and 'libevent' libraries mandatory for Zabbix server.<br>Exit code checks added for user parameters, remote commands and system.run\[\] items without the 'nowait' flag as well as Zabbix server executed scripts.<br>Zabbix Java gateway has to be upgraded to support new functionality.| |3.0.x LTS|For:<br>Zabbix [3.2](https://www.zabbix.com/documentation/3.2/manual/installation/upgrade_notes_320)<br>Zabbix [3.4](https://www.zabbix.com/documentation/3.4/manual/installation/upgrade_notes_340)<br>Zabbix [4.0](https://www.zabbix.com/documentation/4.0/manual/installation/upgrade_notes_400)<br>Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.4/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Database upgrade may be slow, depending on the history table size.| |2.4.x    |For:<br>Zabbix [3.0](https://www.zabbix.com/documentation/3.0/manual/installation/upgrade_notes_300)<br>Zabbix [3.2](https://www.zabbix.com/documentation/3.2/manual/installation/upgrade_notes_320)<br>Zabbix [3.4](https://www.zabbix.com/documentation/3.4/manual/installation/upgrade_notes_340)<br>Zabbix [4.0](https://www.zabbix.com/documentation/4.0/manual/installation/upgrade_notes_400)<br>Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Minimum required PHP version upped from 5.3.0 to 5.4.0.<br>LogFile agent parameter must be specified.| |2.2.x LTS|For:<br>Zabbix [2.4](https://www.zabbix.com/documentation/2.4/manual/installation/upgrade_notes_240)<br>Zabbix [3.0](https://www.zabbix.com/documentation/3.0/manual/installation/upgrade_notes_300)<br>Zabbix [3.2](https://www.zabbix.com/documentation/3.2/manual/installation/upgrade_notes_320)<br>Zabbix [3.4](https://www.zabbix.com/documentation/3.4/manual/installation/upgrade_notes_340)<br>Zabbix [4.0](https://www.zabbix.com/documentation/4.0/manual/installation/upgrade_notes_400)<br>Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Node-based distributed monitoring removed.| |2.0.x    |For:<br>Zabbix [2.2](https://www.zabbix.com/documentation/2.2/manual/installation/upgrade_notes_220)<br>Zabbix [2.4](https://www.zabbix.com/documentation/2.4/manual/installation/upgrade_notes_240)<br>Zabbix [3.0](https://www.zabbix.com/documentation/3.0/manual/installation/upgrade_notes_300)<br>Zabbix [3.2](https://www.zabbix.com/documentation/3.2/manual/installation/upgrade_notes_320)<br>Zabbix [3.4](https://www.zabbix.com/documentation/3.4/manual/installation/upgrade_notes_340)<br>Zabbix [4.0](https://www.zabbix.com/documentation/4.0/manual/installation/upgrade_notes_400)<br>Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Minimum required PHP version upped from 5.1.6 to 5.3.0.<br>Case-sensitive MySQL database required for proper server work; character set utf8 and utf8\_bin collation is required for Zabbix server to work properly with MySQL database. See [database creation scripts](/manual/appendix/install/db_scripts#mysql).<br>'mysqli' PHP extension required instead of 'mysql'.|
es	Las siguientes notas de actualización están disponibles:  |Actualizar desde|Lea las notas de actualización completas|Cambios más importantes entre versiones| |--|--|------| |6.2.x |Para:<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|La versión mínima requerida de MySQL aumentó de 8.0.0 a 8.0.30.<br>Se requiere la biblioteca 'libevent_pthreads' para el servidor Zabbix/ proxy.<br> Tras el primer inicio después de una actualización, el proxy Zabbix con SQLite3 descarta automáticamente la versión antigua de la base de datos (con todo el historial) y crea una nueva. | |6.0.x LTS|Para:<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640 )|Versión PHP mínima requerida mejorada de 7.2.5 a 7.4.0. <br> Es necesario crear activadores deterministas durante la actualización. Si el registro binario está habilitado para MySQL/MariaDB, esto requiere privilegios de superusuario o establecer el parámetro de configuración/variable *log_bin_trust_function_creators = 1*. Consulte [Scripts de creación de bases de datos](/manual/appendix/install/db_scripts#mysql) para obtener instrucciones sobre cómo configurar la variable.| |5.4.x |Para:<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix .com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Se actualizaron las versiones mínimas requeridas de la base de datos.<br>El servidor/proxy no se iniciará si la base de datos está desactualizada.<br >Registros de auditoría perdidos debido a un cambio en la estructura de la base de datos. | |5.2.x |Para:<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix .com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/ manual/installation/upgrade_notes_640)|Se aumentaron las versiones mínimas requeridas de la base de datos.<br>Los elementos agregados se eliminaron como un tipo separado.| |5.0.x LTS|Para:<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www. zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2]( https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|La versión PHP mínima requerida aumentó de 7.2.0 a 7.2.5. <br> El algoritmo de hash de contraseñas cambió de MD5 a bcrypt. | |4.4.x |Para:<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix .com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https ://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br> Zabbix [6.4](/manual/installation/upgrade_notes_640)|Se eliminó la compatibilidad con IBM DB2.<br>La versión mínima requerida de PHP aumentó de 5.4.0 a 7.2.0.<br>Las versiones mínimas requeridas de la base de datos aumentaron.<br>Zabbix modificado Directorio de archivos PHP.| |4.2.x |Para:<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.4/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix .com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https ://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br> Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Se eliminaron los tipos de medios Jabber y Ez Texting.| |4.0.x LTS|Para:<br>Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https://www. zabbix.com/documentation/4.4/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2]( https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br >Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/ install/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Los servidores proxy más antiguos ya no pueden reportar datos a un servidor actualizado.<br>Los agentes más nuevos ya no podrán trabajar con un servidor Zabbix más antiguo. | |3.4.x |Para:<br>Zabbix [4.0](https://www.zabbix.com/documentation/4.0/manual/installation/upgrade_notes_400)<br>Zabbix [4.2](https://www.zabbix .com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.4/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https ://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br> Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation /upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|'libpthread' y las bibliotecas 'zlib' ahora son obligatorias.<br>Se eliminó la compatibilidad con el protocolo de texto sin formato y el encabezado es obligatorio.<br>Los agentes Zabbix anteriores a la versión 1.4 ya no son compatibles.<br>El parámetro Servidor en la configuración del proxy pasivo ahora es obligatorio.| |3.2.x |Para:<br>Zabbix [3.4](https://www.zabbix.com/documentation/3.4/manual/installation/upgrade_notes_340)<br>Zabbix [4.0](https://www.zabbix .com/documentation/4.0/manual/installation/upgrade_notes_400)<br>Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https ://www.zabbix.com/documentation/4.4/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br> Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation /upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation /6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Se eliminó el soporte de SQLite como base de datos backend para el servidor/frontend de Zabbix.<br>Se admiten expresiones regulares compatibles con Perl (PCRE) en lugar de POSIX extendido.<br>Las bibliotecas 'libpcre' y 'libevent' son obligatorias para el servidor Zabbix.<br>Se agregaron verificaciones de código de salida para parámetros de usuario, comandos remotos y elementos system.run\[\] sin el indicador 'nowait', así como Scripts ejecutados por el servidor Zabbix.<br>La puerta de enlace Java de Zabbix debe actualizarse para admitir nuevas funciones.| |3.0.x LTS|Para:<br>Zabbix [3.2](https://www.zabbix.com/documentation/3.2/manual/installation/upgrade_notes_320)<br>Zabbix [3.4](https://www. zabbix.com/documentation/3.4/manual/installation/upgrade_notes_340)<br>Zabbix [4.0](https://www.zabbix.com/documentation/4.0/manual/installation/upgrade_notes_400)<br>Zabbix [4.2]( https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.4/manual/installation/upgrade_notes_440)<br >Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/ instalación/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/ documentación/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation /upgrade_notes_640)|La actualización de la base de datos puede ser lenta, dependiendo del tamaño de la tabla del historial.| |2.4.x |Para:<br>Zabbix [3.0](https://www.zabbix.com/documentation/3.0/manual/installation/upgrade_notes_300)<br>Zabbix [3.2](https://www.zabbix .com/documentation/3.2/manual/installation/upgrade_notes_320)<br>Zabbix [3.4](https://www.zabbix.com/documentation/3.4/manual/installation/upgrade_notes_340)<br>Zabbix [4.0](https ://www.zabbix.com/documentation/4.0/manual/installation/upgrade_notes_400)<br>Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br> Zabbix [4.4](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation /upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation /5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www .zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|Versión PHP mínima requerida mejorada de 5.3.0 a 5.4.0.<br>Agente LogFile Se debe especificar el parámetro.| |2.2.x LTS|Para:<br>Zabbix [2.4](https://www.zabbix.com/documentation/2.4/manual/installation/upgrade_notes_240)<br>Zabbix [3.0](https://www. zabbix.com/documentation/3.0/manual/installation/upgrade_notes_300)<br>Zabbix [3.2](https://www.zabbix.com/documentation/3.2/manual/installation/upgrade_notes_320)<br>Zabbix [3.4]( https://www.zabbix.com/documentation/3.4/manual/installation/upgrade_notes_340)<br>Zabbix [4.0](https://www.zabbix.com/documentation/4.0/manual/installation/upgrade_notes_400)<br >Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_420)<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.2/manual/ instalación/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation/5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/ documentación/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www.zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https:// www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2](https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4 ](/manual/installation/upgrade_notes_640)|Se eliminó la supervisión distribuida basada en nodos.| |2.0.x |Para:<br>Zabbix [2.2](https://www.zabbix.com/documentation/2.2/manual/installation/upgrade_notes_220)<br>Zabbix [2.4](https://www.zabbix .com/documentation/2.4/manual/installation/upgrade_notes_240)<br>Zabbix [3.0](https://www.zabbix.com/documentation/3.0/manual/installation/upgrade_notes_300)<br>Zabbix [3.2](https ://www.zabbix.com/documentation/3.2/manual/installation/upgrade_notes_320)<br>Zabbix [3.4](https://www.zabbix.com/documentation/3.4/manual/installation/upgrade_notes_340)<br> Zabbix [4.0](https://www.zabbix.com/documentation/4.0/manual/installation/upgrade_notes_400)<br>Zabbix [4.2](https://www.zabbix.com/documentation/4.2/manual/installation /upgrade_notes_420)<br>Zabbix [4.4](https://www.zabbix.com/documentation/4.2/manual/installation/upgrade_notes_440)<br>Zabbix [5.0](https://www.zabbix.com/documentation /5.0/manual/installation/upgrade_notes_500)<br>Zabbix [5.2](https://www.zabbix.com/documentation/5.2/manual/installation/upgrade_notes_520)<br>Zabbix [5.4](https://www .zabbix.com/documentation/5.4/manual/installation/upgrade_notes_540)<br>Zabbix [6.0](https://www.zabbix.com/documentation/6.0/manual/installation/upgrade_notes_600)<br>Zabbix [6.2] (https://www.zabbix.com/documentation/6.2/manual/installation/upgrade_notes_620)<br>Zabbix [6.4](/manual/installation/upgrade_notes_640)|La versión PHP mínima requerida aumentó de 5.1.6 a 5.3.0 .<br>Se requiere una base de datos MySQL que distinga entre mayúsculas y minúsculas para que el servidor funcione correctamente; Se requiere el conjunto de caracteres utf8 y la intercalación utf8\_bin para que el servidor Zabbix funcione correctamente con la base de datos MySQL. Consulte [scripts de creación de bases de datos](/manual/appendix/install/db_scripts#mysql).<br>Se requiere la extensión PHP 'mysqli' en lugar de 'mysql'.|

en-us	 The ***\_getUpdateRequestData()*** method prepares the server request data for updating the widget by gathering various properties and their corresponding values (widget identifiers, filter settings, time ranges, etc.) from the widget's state and configuration, and constructing a data object that represents the necessary information to be sent to the server in the update request. This method is invoked only as part of the default [*\_promiseUpdate()*] method, that is, during the widget update process.  Default implementation:  ```js _getUpdateRequestData() {     return {         templateid: this._dashboard.templateid ?? undefined,         dashboardid: this._dashboard.dashboardid ?? undefined,         widgetid: this._widgetid ?? undefined,         name: this._name !== '' ? this._name : undefined,         fields: Object.keys(this._fields).length > 0 ? this._fields : undefined,         view_mode: this._view_mode,         edit_mode: this._is_edit_mode ? 1 : 0,         dynamic_hostid: this._dashboard.templateid !== null || this.supportsDynamicHosts()             ? (this._dynamic_hostid ?? undefined)             : undefined,         ...this._content_size     }; } ```
es	 El método ***\_getUpdateRequestData()*** prepara los datos de solicitud del servidor para actualizar el widget recopilando varias propiedades y sus valores correspondientes (identificadores de widget, configuraciones de filtro, rangos de tiempo, etc.) del estado y la configuración del widget. y construir un objeto de datos que representa la información necesaria para ser enviada al servidor en la solicitud de actualización. Este método se invoca sólo como parte del método predeterminado [*\_promiseUpdate()*], es decir, durante el proceso de actualización del widget.  Implementación predeterminada:  ```js _getUpdateRequestData() { return { templateid: this._dashboard.templateid ?? undefined, dashboardid: this._dashboard.dashboardid ?? undefined, widgetid: this._widgetid ?? undefined, name: this._name !== '' ? this._name : undefined, fields: Object.keys(this._fields).length > 0 ? this._fields : undefined, view_mode: this._view_mode, edit_mode: this._is_edit_mode ? 1 : 0, dynamic_hostid: this._dashboard.templateid !== null || this.supportsDynamicHosts() ? (this._dynamic_hostid ?? undefined) : undefined, ...this._content_size }; } ```

en-us	 The ***\_hasPadding()*** method is responsible for applying an 8px vertical padding at the bottom of the widget when it is configured to [show its header](/manual/web_interface/frontend_sections/dashboards/widgets#common-parameters). This method is invoked when the dashboard page is activated, that is, when it becomes the displayed page in the user interface.  Default implementation:  ```js _hasPadding() {     return this._view_mode !== ZBX_WIDGET_VIEW_MODE_HIDDEN_HEADER; } ```  For some widgets it is necessary to use all of the available widget space to configure, for example, a custom background color. The following is an example of the implementation of the *\_hasPadding()* method used in the Zabbix-native [*Item value*](/manual/web_interface/frontend_sections/dashboards/widgets/item_value) widget.  ```js _hasPadding() {     return false; } ```
es	 El método ***\_hasPadding()*** es responsable de aplicar un relleno vertical de 8px en la parte inferior del widget cuando está configurado para [mostrar su encabezado](/manual/web_interface/frontend_sections/dashboards/widgets#common-parameters). Este método se invoca cuando se activa la página del tablero, es decir, cuando se convierte en la página que se muestra en la interfaz de usuario.  Implementación predeterminada:  ```js _hasPadding() { return this._view_mode !== ZBX_WIDGET_VIEW_MODE_HIDDEN_HEADER; } ```  Para algunos widgets es necesario utilizar todo el espacio disponible para configurar, por ejemplo, un color de fondo personalizado. El siguiente es un ejemplo de la implementación del método *\_hasPadding()* utilizado en el widget nativo de Zabbix [*Valor de la métrica*](/manual/web_interface/frontend_sections/dashboards/widgets/item_value).  ```js _hasPadding() { return false; } ```

en-us	 The ***\_init()*** method defines the initial state and/or values of the widget, without performing any HTML or data manipulation. This method is invoked when a widget is created (a widget object is instantiated), typically by adding the widget to a dashboard page or loading the dashboard page.  Example:  ```js _init() {     super._init();      this._time_offset = 0;     this._interval_id = null;     this._clock_type = CWidgetClock.TYPE_ANALOG;     this._time_zone = null;     this._show_seconds = true;     this._time_format = 0;     this._tzone_format = 0;     this._show = [];     this._has_contents = false;     this._is_enabled = true; } ```
es	 El método ***\_init()*** define el estado inicial y/o los valores del widget, sin realizar ninguna manipulación de datos o HTML. Este método se invoca cuando se crea un widget (se crea una instancia de un objeto de widget), generalmente agregando el widget a una página del tablero o cargando la página del tablero.  Ejemplo:  ```js _init() { super._init();  this._time_offset = 0; this._interval_id = null; this._clock_type = CWidgetClock.TYPE_ANALOG; this._time_zone = null; this._show_seconds = true; this._time_format = 0; this._tzone_format = 0; this._show = []; this._has_contents = false; this._is_enabled = true; } ```

en-us	 The **Macros** tab allows you to mass update template-level macros.  ![](../../../../assets/en/manual/config/templates/templ_mass_d.png){width=600}  The following options are available when selecting the respective button for macros update:  -   *Add* - allows to specify additional user macros for the templates.     If *Update existing* checkbox is checked, value, type and     description for the specified macro name will be updated. If     unchecked, if a macro with that name already exist on the     template(s), it will not be updated. -   *Update* - will replace values, types and descriptions of macros     specified in this list. If *Add missing* checkbox is checked, macro     that didn't previously exist on a template will be added as new     macro. If unchecked, only macros that already exist on a template     will be updated. -   *Remove* - will remove specified macros from templates. If *Except     selected* box is checked, all macros except specified in the list     will be removed. If unchecked, only macros specified in the list     will be removed. -   *Remove all* - will remove all user macros from templates. If *I     confirm to remove all macros* checkbox is not checked, a new popup     window will open asking to confirm removal of all macros.
es	 La pestaña **Macros** le permite actualizar macros a nivel de plantilla en masa.  ![](../../../../assets/en/manual/config/templates/templ_mass_d.png){width=600}  Las siguientes opciones están disponibles al seleccionar el botón respectivo para actualización de macros:  - *Agregar*: permite especificar macros de usuario adicionales para las plantillas.     Si la casilla de verificación *Actualizar existente* está marcada, el valor, el tipo y     Se actualizará la descripción del nombre de macro especificado. Si     sin marcar, si ya existe una macro con ese nombre en el     plantilla(s), no se actualizará. - *Actualización* - reemplazará valores, tipos y descripciones de macros     especificado en esta lista. Si la casilla de verificación *Agregar faltante* está marcada, macro     que no existía previamente en una plantilla se agregará como nueva     macro. Si no está marcada, solo las macros que ya existen en una plantilla     será actualizado. - *Eliminar*: eliminará las macros especificadas de las plantillas. Si *Excepto     la casilla seleccionada* está marcada, todas las macros excepto las especificadas en la lista.     serán eliminadas. Si no está marcado, solo las macros especificadas en la lista     serán eliminadas. - *Eliminar todo*: eliminará todas las macros de usuario de las plantillas. Si  la casilla de verificación *yo     confirmo la eliminación de todas las macros* no está marcada, aparece una nueva ventana emergente     Se abrirá una ventana pidiendo que confirme la eliminación de todas las macros.

en-us	The official zabbix-web-service package is available in the [Zabbix repository](http://repo.zabbix.com/). Google Chrome browser is not included into these packages and has to be installed separately.
es	El paquete oficial zabbix-web-service está disponible en el [repositorio Zabbix](http://repo.zabbix.com/). El navegador Google Chrome no está incluido en estos paquetes y debe instalarse por separado.

en-us	 The ***\_processUpdateErrorResponse(error)*** method handles the response received from the server after the update request if the response is an error, and displays the error message/-s. This method is invoked only as part of the default *\_promiseUpdate()* method, that is, during the widget update process.  Default implementation:  ```js _processUpdateErrorResponse(error) {     this._setErrorContents({error}); }  _setErrorContents({error}) {     const message_box = makeMessageBox('bad', error.messages, error.title)[0];      this._content_body.innerHTML = '';     this._content_body.appendChild(message_box);      this._removeInfoButtons(); } ```
es	El método ***\_processUpdateErrorResponse(error)*** maneja la respuesta recibida del servidor después de la solicitud de actualización si la respuesta es un error y muestra los mensajes de error. Este método se invoca solo como parte del método predeterminado *\_promiseUpdate()*, es decir, durante el proceso de actualización del widget.  Implementación predeterminada:  ```js _processUpdateErrorResponse(error) {     this._setErrorContents({error}); }  _setErrorContents({error}) {     const message_box = makeMessageBox('bad', error.messages, error.title)[0];      this._content_body.innerHTML = '';     this._content_body.appendChild(message_box);      this._removeInfoButtons(); } ```

en-us	 The ***\_processUpdateResponse(response)*** method handles the response received from the server after the update request, and, if the update process has been successful and without errors, clears widget data and displays new contents with the *\_setContents()* method. This method is invoked only as part of the default *\_promiseUpdate()* method, that is, during the widget update process.  Default implementation:  ```js _processUpdateResponse(response) {     this._setContents({         name: response.name,         body: response.body,         messages: response.messages,         info: response.info,         debug: response.debug     }); } ```
es	 El método ***\_processUpdateResponse(response)*** maneja la respuesta recibida del servidor después de la solicitud de actualización, y, si el proceso de actualización ha sido exitoso y sin errores, borra los datos del widget y muestra nuevos contenidos con el método *\_setContents()*. Este método se invoca sólo como parte del método predeterminado *\_promiseUpdate()*, es decir, durante el proceso de actualización del widget.  Implementación predeterminada:  ```js _processUpdateResponse(response) { this._setContents({ name: response.name, body: response.body, messages: response.messages, info: response.info, debug: response.debug }); } ```

en-us	 The ***\_promiseUpdate()*** method initiates the data update process by retrieving data, typically using web requests or API calls. This method is invoked when a dashboard page is displayed and periodically after, until the dashboard page is switched to another dashboard page.  The following is an example of the default implementation of the *\_promiseUpdate()* method used by most Zabbix-native widgets. In the default implementation, the *\_promiseUpdate()* method follows a general pattern for retrieving data from the server. It creates a new `Curl` object with the appropriate URL and request parameters, sends a `POST` request using the *fetch()* method with the data object constructed by the *\_getUpdateRequestData()* method, and processes the response (or an error response) with the *\_processUpdateResponse(response)* or *\_processUpdateErrorResponse(error)* accordingly. This implementation is suitable for most widgets as they typically retrieve data in a JSON format and handle it in a consistent manner.  ```js _promiseUpdate() {     const curl = new Curl('zabbix.php');      curl.setArgument('action', `widget.${this._type}.view`);      return fetch(curl.getUrl(), {         method: 'POST',         headers: {'Content-Type': 'application/json'},         body: JSON.stringify(this._getUpdateRequestData()),         signal: this._update_abort_controller.signal     })         .then((response) => response.json())         .then((response) => {             if ('error' in response) {                 this._processUpdateErrorResponse(response.error);                  return;             }              this._processUpdateResponse(response);         }); } ```
es	 El método ***\_promiseUpdate()*** inicia el proceso de actualización de datos recuperando datos, normalmente mediante solicitudes web o llamadas API. Este método se invoca cuando se muestra una página del tablero y periódicamente después, hasta que la página del tablero cambia a otra página del tablero.  El siguiente es un ejemplo de la implementación predeterminada del método *\_promiseUpdate()* utilizado por la mayoría de los widgets nativos de Zabbix. En la implementación predeterminada, el método *\_promiseUpdate()* sigue un patrón general para recuperar datos del servidor. Crea un nuevo objeto `Curl` con la URL apropiada y los parámetros de solicitud. envía una solicitud `POST` usando el método *fetch()* con el objeto de datos construido por el método *\_getUpdateRequestData()*, y procesa la respuesta (o una respuesta de error) con *\_processUpdateResponse(response)* o *\_processUpdateErrorResponse(error)* en consecuencia. Esta implementación es adecuada para la mayoría de los widgets, ya que normalmente recuperan datos en formato JSON y los manejan de manera consistente.  ```js _promiseUpdate() { const curl = new Curl('zabbix.php');  curl.setArgument('action', `widget.${this._type}.view`);  return fetch(curl.getUrl(), { method: 'POST', headers: {'Content-Type': 'application/json'}, body: JSON.stringify(this._getUpdateRequestData()), signal: this._update_abort_controller.signal }) .then((response) => response.json()) .then((response) => { if ('error' in response) { this._processUpdateErrorResponse(response.error);  return; }  this._processUpdateResponse(response); }); } ```

en-us	 The ***\_registerEvents()*** method defines the HTML structure of the widget, without performing any data manipulation. This method is invoked before the first activation of the dashboard page, that is, before the dashboard and its widgets are fully displayed to the user.  Example:  ```js _registerEvents() {     super._registerEvents();      this._events.resize = () => {         const padding = 25;         const header_height = this._view_mode == ZBX_WIDGET_VIEW_MODE_HIDDEN_HEADER             ? 0             : this._content_header.offsetHeight;          this._target.style.setProperty(             '--content-height',             `${this._cell_height * this._pos.height - padding * 2 - header_height}px`         );     } } ```
es	 El método ***\_registerEvents()*** define la estructura HTML del widget, sin realizar ninguna manipulación de datos. Este método se invoca antes de la primera activación de la página del tablero, es decir, antes de que el tablero y sus widgets se muestren completamente al usuario.  Ejemplo:  ```js _registerEvents() { super._registerEvents();  this._events.resize = () => { const padding = 25; const header_height = this._view_mode == ZBX_WIDGET_VIEW_MODE_HIDDEN_HEADER ? 0 : this._content_header.offsetHeight;  this._target.style.setProperty( '--content-height', `${this._cell_height * this._pos.height - padding * 2 - header_height}px` ); } } ```

en-us	 The ***resize()*** method is responsible for adjusting widget's visual elements to accommodate the new widget size, which can include rearranging elements, adjusting element dimensions, text truncation, implementing lazy loading to improve responsiveness during resizing, etc. This method is invoked when the widget is resized, for example, when the user manually resizes the widget or when the browser window is resized.  Example:  ```js resize() {     if (this._state === WIDGET_STATE_ACTIVE) {         this._startUpdating();     } } ```
es	 El método ***resize()*** es responsable de ajustar los elementos visuales del widget para acomodar el nuevo tamaño del widget. que puede incluir reorganizar elementos, ajustar las dimensiones de los elementos, truncar texto, implementar carga diferida para mejorar la capacidad de respuesta durante el cambio de tamaño, etc. Este método se invoca cuando se cambia el tamaño del widget, por ejemplo, cuando el usuario cambia manualmente el tamaño del widget o cuando se cambia el tamaño de la ventana del navegador.  Ejemplo:  ```js resize() { if (this._state === WIDGET_STATE_ACTIVE) { this._startUpdating(); } } ```

en-us	 The ***\_setContents()*** method displays widget contents if the widget update process has been successful and without errors, which can include manipulating DOM elements, updating UI components, applying styles or formatting, etc. This method is invoked only as part of the default *\_processUpdateResponse(response)* method, that is, during the process of handling the response received from the server after the update request.  Default implementation:  ```js _setContents({name, body, messages, info, debug}) {     this._setHeaderName(name);      this._content_body.innerHTML = '';      if (messages !== undefined) {         const message_box = makeMessageBox('bad', messages)[0];          this._content_body.appendChild(message_box);     }      if (body !== undefined) {         this._content_body.insertAdjacentHTML('beforeend', body);     }      if (debug !== undefined) {         this._content_body.insertAdjacentHTML('beforeend', debug);     }      this._removeInfoButtons();      if (info !== undefined) {         this._addInfoButtons(info);     } } ```
es	 El método ***\_setContents()*** muestra el contenido del widget si el proceso de actualización del widget ha sido exitoso y sin errores, que puede incluir la manipulación de elementos DOM, la actualización de componentes de la interfaz de usuario, la aplicación de estilos o formato, etc. Este método se invoca sólo como parte del método predeterminado *\_processUpdateResponse(response)*, es decir, durante el proceso de manejo de la respuesta recibida del servidor después de la solicitud de actualización.  Implementación predeterminada:  ```js _setContents({name, body, messages, info, debug}) { this._setHeaderName(name);  this._content_body.innerHTML = '';  if (messages !== undefined) { const message_box = makeMessageBox('bad', messages)[0];  this._content_body.appendChild(message_box); }  if (body !== undefined) { this._content_body.insertAdjacentHTML('beforeend', body); }  if (debug !== undefined) { this._content_body.insertAdjacentHTML('beforeend', debug); }  this._removeInfoButtons();  if (info !== undefined) { this._addInfoButtons(info); } } ```

en-us	 The ***setEditMode()*** method defines the appearance and behavior of the widget when the dashboard transitions into editing mode. This method is invoked when the dashboard transitions into editing mode, typically when a user interacts with the widget's *Edit* button or the dashboard's *Edit dashboard* button.  Example:  ```js setEditMode() {     if (this._has_contents) {         this._deactivateContentsEvents();         this._removeTree();     }      super.setEditMode();      if (this._has_contents && this._state === WIDGET_STATE_ACTIVE) {         this._makeTree();         this._activateTree();         this._activateContentsEvents();     } } ```
es	 El método ***setEditMode()*** define la apariencia y el comportamiento del widget cuando el tablero pasa al modo de edición. Este método se invoca cuando el tablero pasa al modo de edición, normalmente cuando un usuario interactúa con el botón *Editar* del widget o el botón *Editar tablero* del tablero.  Ejemplo:  ```js setEditMode() { if (this._has_contents) { this._deactivateContentsEvents(); this._removeTree(); }  super.setEditMode();  if (this._has_contents && this._state === WIDGET_STATE_ACTIVE) { this._makeTree(); this._activateTree(); this._activateContentsEvents(); } } ```

en-us	##### The syntax  A special syntax for OID is used:  **<OID of data>\["index","<base OID of index>","<string to search for>"\]**  |Parameter|Description| |--|--------| |OID of data|Main OID to use for data retrieval on the item.| |index|Method of processing. Currently one method is supported:<br>**index** – search for index and append it to the data OID| |base OID of index|This OID will be looked up to get the index value corresponding to the string.| |string to search for|The string to use for an exact match with a value when doing lookup. Case sensitive.|
es	##### La sintaxis  Se utiliza una sintaxis especial para OID:  **<OID de datos>\["índice","<OID base de índice>","<cadena para buscar>"\]**  |Parámetro|Descripción| |---------|-----------| |OID de datos|OID principal a usar para la recuperación de datos en el elemento.| |índice|Método de procesamiento. Actualmente se admite un método:<br>**índice**: busque el índice y agréguelo al OID de datos| |OID base del índice|Este OID se buscará para obtener el valor de índice correspondiente a la cadena.| |cadena para buscar|La cadena que se utilizará para una coincidencia exacta con un valor al realizar una búsqueda. Sensible a mayúsculas y minúsculas.|

en-us	 The **Tags** tab allows you to mass update template-level tags.  ![](../../../../assets/en/manual/config/templates/templ_mass_c.png){width=600}  User macros, {INVENTORY.\*} macros, {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} and {HOST.ID} macros are supported in tags. Note that tags with the same name, but different values are not considered 'duplicates' and can be added to the same template.
es	 La pestaña **Etiquetas** le permite actualizar masivamente etiquetas a nivel de plantilla.  ![](../../../../assets/en/manual/config/templates/templ_mass_c.png){width=600}  Macros de usuario, macros {INVENTORY.\*}, las macros {HOST.HOST}, {HOST.NAME}, {HOST.CONN}, {HOST.DNS}, {HOST.IP}, {HOST.PORT} y {HOST.ID} están soportadas en etiquetas. Tenga en cuenta que las etiquetas con el mismo nombre, pero diferentes valores no se consideran "duplicados" y se pueden agregar a la misma plantilla.

en-us	 The **Tags** tab contains [service-level tags](#service-tags). Service-level tags are  used to identify a service. Tags of this type are not used to map  problems to the service (for that, use *[Problem tags](#problem-tags)* from the first tab).  The **Child services** tab allows to specify dependant services. Click on *Add* to add a service from the list of existing services. If you want to add a new child service, save this service first, then click on a plus icon next to the service that you have just created. 
es	 La pestaña **Etiquetas** contiene las [etiquetas de nivel de servicio](#etiquetas de servicio). Las etiquetas de nivel de servicio se utilizan para identificar un servicio. Las etiquetas de este tipo no se utilizan para mapear problemas al servicio (para eso, use *[Etiquetas de problema](#problem-tags)* de la primera pestaña).  La pestaña **Servicios dependientes** permite especificar servicios dependientes. Haga clic en *Agregar* para agregar un servicio de la lista de servicios existentes. Si desea agregar un nuevo servicio secundario, primero guarde este servicio y luego haga clic en el ícono más al lado del servicio que acaba de crear.

en-us	 The **Template** tab contains general template mass update options.  ![](../../../../assets/en/manual/config/templates/templ_mass.png){width=600}  The following options are available when selecting the respective button for the *Link templates* update:  -   *Link* - specify which additional templates to link; -   *Replace* - specify which templates to link while at the same time unlinking any previously linked templates; -   *Unlink* - specify which templates to unlink.  To specify the templates to link/unlink, start typing the template name in the auto-complete field until a dropdown appears offering the matching templates. Just scroll down to select the required templates.  The *Clear when unlinking* option will allow to unlink any previously linked templates, as well as to remove all elements inherited from them (items, triggers, graphs, etc.).  The following options are available when selecting the respective button for the *Template groups* update:  -   *Add* - allows to specify additional template groups from the existing ones or enter completely new template groups for the templates; -   *Replace* - will remove the template from any existing template groups and replace them with the one(s) specified in this field (existing or new template groups); -   *Remove* - will remove specific template groups from templates.  These fields are auto-complete - starting to type in them offers a dropdown of matching template groups. If the template group is new, it also appears in the dropdown and it is indicated by *(new)* after the string. Just scroll down to select.
es	 La pestaña **Plantilla** contiene opciones generales de actualización masiva de plantillas.  ![](../../../../assets/en/manual/config/templates/templ_mass.png){width=600}  Las siguientes opciones están disponibles al seleccionar el botón respectivo para la actualización de *Plantillas de enlaces*:  - *Enlace*: especifique qué plantillas adicionales vincular; - *Reemplazar*: especifica qué plantillas vincular y al mismo tiempo desvincula cualquier plantilla previamente vinculada; - *Desvincular*: especifica qué plantillas desvincular.  Para especificar las plantillas para vincular/desvincular, comience a escribir el nombre de la plantilla en el campo de autocompletar hasta que aparezca un menú desplegable que ofrezca las plantillas coincidentes. Simplemente desplácese hacia abajo para seleccionar las plantillas requeridas.  La opción *Borrar al desvincular* permitirá desvincular cualquier plantilla previamente vinculada, así como eliminar todos los elementos heredados de ellas (métricas, iniciadores, gráficos, etc.).  Las siguientes opciones están disponibles al seleccionar el botón respectivo para la actualización de *Grupos de plantillas*:  - *Agregar* - permite especificar grupos de plantillas adicionales a los existentes o ingresar grupos de plantillas completamente nuevos para las plantillas; - *Reemplazar*: eliminará la plantilla de cualquier grupo de plantillas existente y los reemplazará con los especificados en este campo (grupos de plantillas nuevos o existentes); - *Eliminar*: eliminará grupos de plantillas específicos de las plantillas.  Estos campos se completan automáticamente; al comenzar a escribirlos se ofrece un menú desplegable de grupos de plantillas coincidentes. Si el grupo de plantillas es nuevo, también aparece en el menú desplegable y se indica con *(nuevo)* después de la cadena. Simplemente desplácese hacia abajo para seleccionar.

en-us	 The **Value mapping** tab allows you to mass update [value mappings](/manual/config/items/mapping).  ![](../../../../assets/en/manual/config/templates/templ_mass_e.png){width=600}  Buttons with the following options are available for value map update:  -   *Add* - add value maps to the templates. If you mark *Update     existing*, all properties of the value map with this name will be     updated. Otherwise, if a value map with that name already exists, it     will not be updated. -   *Update* - update existing value maps. If you mark *Add missing*, a     value map that didn't previously exist on a template will be added     as a new value map. Otherwise only the value maps that already exist     on a template will be updated. -   *Rename* - give new name to an existing value map. -   *Remove* - remove the specified value maps from the templates. If     you mark *Except selected*, all value maps will be removed     **except** the ones that are specified. -   *Remove all* - remove all value maps from the templates. If the *I     confirm to remove all value maps* checkbox is not marked, a new     popup window will open asking to confirm the removal.  *Add from template* and *Add from host* options are available for value mapping add/update operations.  They allow to select value mappings from a template or a host respectively.
es	 La pestaña **Asignación de valores** le permite actualizar masivamente [asignaciones de valores](/manual/config/items/mapping).  ![](../../../../assets/en/manual/config/templates/templ_mass_e.png){width=600}  Los botones con las siguientes opciones están disponibles para la actualización del mapa de valores:  - *Agregar*: agrega mapas de valor a las plantillas. Si marcas *Actualizar     existente*, todas las propiedades del mapa de valores con este nombre serán     actualizado. De lo contrario, si ya existe un mapa de valores con ese nombre,     no se actualizará. - *Actualizar*: actualiza los mapas de valores existentes. Si marca *Agregar faltante*,      se agregará el mapa de valores que no existía anteriormente en una plantilla.     como un nuevo mapa de valores. De lo contrario, solo los mapas de valores que ya existen     en una plantilla se actualizarán. - *Renombrar*: da un nuevo nombre a un mapa de valores existente. - *Eliminar*: elimina los mapas de valores especificados de las plantillas.     Si marca *Excepto seleccionado*, se eliminarán todos los mapas de valores     **excepto** los que se especifican. - *Eliminar todo*: elimina todos los mapas de valores de las plantillas. Si la casilla de verificación *yo     confirmo que elimino todos los mapas de valores*  no está marcada,      se abrirá una nueva ventana emergente pidiendo que confirme la eliminación.  Las opciones *Agregar desde plantilla* y *Agregar desde equipo* están disponibles para operaciones de agregar/actualizar mapeo de valores. Permiten seleccionar asignaciones de valores de una plantilla o un equipo respectivamente.

en-us	##### Third-party external surrounding software  If stated as mandatory, the required software/library is strictly necessary. Optional ones are needed for supporting some specific function.  |Software|Mandatory status|Supported versions|Comments| |--|-|-|------| |*MySQL/Percona*|One of|8.0.30-8.3.X|Required if MySQL (or Percona) is used as Zabbix backend database. InnoDB engine is required.<br><br>Added support for MySQL versions:<br>- 8.1 since Zabbix 6.4.6;<br>- 8.2 since Zabbix 6.4.11;<br>- 8.3 since Zabbix 6.4.12.<br><br>We recommend using the [C API (libmysqlclient)](https://dev.mysql.com/downloads/c-api/) library for building server/proxy.| |*MariaDB*|^|10.5.00-11.3.X|InnoDB engine is required.<br><br>The recommended version is 10.5.<br><br>We recommend using the [MariaDB Connector/C](https://downloads.mariadb.org/connector-c/) library for building server/proxy.<br><br>Added support for MariaDB versions:<br>- 10.11.X since Zabbix 6.4.1;<br>- 11.0.X since Zabbix 6.4.6;<br>- 11.1.X since Zabbix 6.4.8;<br>- 11.2.X since Zabbix 6.4.12;<br>- 11.3.X since Zabbix 6.4.14.<br><br>See also: [Possible deadlocks with MariaDB](/manual/installation/known_issues#possible-deadlocks-with-mysqlmariadb).| |*Oracle*|^|19c - 21c|Required if Oracle is used as Zabbix backend database.| |*PostgreSQL*|^|13.0-16.X|Required if PostgreSQL is used as Zabbix backend database.<br>Depending on the installation size, it might be required to increase PostgreSQL *work_mem* configuration property (4MB being the default value), so that the amount of memory used by the database for particular operation is sufficient and query execution does not take too much time.<br><br>Added support for PostgreSQL versions:<br>- 16.X since Zabbix 6.4.8.| |*TimescaleDB* for PostgreSQL|^|2.1.0-2.14.X|Required if TimescaleDB is used as a PostgreSQL database extension. Make sure to install TimescaleDB Community Edition, which supports compression.<br><br>Note that PostgreSQL 15 is supported since TimescaleDB 2.10.<br>You may also refer to the [official documentation](https://docs.timescale.com/self-hosted/latest/upgrades/upgrade-pg/) for details regarding PostgreSQL and TimescaleDB version compatibility.<br><br>Added support for TimescaleDB versions:<br>- 2.10 since Zabbix 6.4.1;<br>- 2.11 since Zabbix 6.4.4;<br>- 2.12 since Zabbix 6.4.9;<br>- 2.13 since Zabbix 6.4.10;<br>- 2.14 since Zabbix 6.4.13.| |*SQLite*|Optional|3.3.5-3.34.X|SQLite is only supported with Zabbix proxies. Required if SQLite is used as Zabbix proxy database.| |*smartmontools*|^|7.1 or later|Required for Zabbix agent 2.| |*who*|^| |Required for the user count plugin.| |*dpkg*|^| |Required for the system.sw.packages plugin.| |*pkgtool*|^| |Required for the system.sw.packages plugin.| |*rpm*|^| |Required for the system.sw.packages plugin.| |*pacman*|^| |Required for the system.sw.packages plugin.|  ::: noteclassic  Although Zabbix can work with databases available in the operating systems, for the best experience, we recommend using databases installed from the official database developer repositories. :::
es	##### Software circundante externo de terceros  Si se indica como obligatorio, el software/biblioteca requerido es estrictamente necesario. Los opcionales se necesitan para soportar alguna función específica.  |Software|Estado obligatorio|Versiones compatibles|Comentarios| |--|-|-|------| |*MySQL/Percona*|Uno de|8.0.30-8.2.X|Requerido si MySQL (o Percona) se utiliza como base de datos backend de Zabbix. Se requiere el motor InnoDB.<br><br>Se agregó soporte para las versiones de MySQL:<br>- 8.1 desde Zabbix 6.4.6;<br>- 8.2 desde Zabbix 6.4.11;<br>- 8.3 since Zabbix 6.4.12.<br><br>Recomendamos usar la biblioteca [ C API (libmysqlclient)](https://dev.mysql.com/downloads/c-api/) para crear servidor/proxy.| |*MariaDB*|^|10.5.00-11.1.X|Se requiere el motor InnoDB.<br><br>La versión recomendada es 10.5.<br><br>Recomendamos utilizar la biblioteca [MariaDB Connector/C](https://downloads.mariadb.org/connector-c/) para crear servidor/proxy.<br><br>Se agregó soporte para las versiones de MariaDB:<br>- 10.11.X desde Zabbix 6.4.1;<br>- 11.0.X desde Zabbix 6.4.6;<br>- 11.1.X desde Zabbix 6.4.8;<br>- 11.2.X since Zabbix 6.4.12;<br>- 11.3.X since Zabbix 6.4.14.<br><br>Ver también: [Posibles interbloqueos con MariaDB](/manual/installation/known_issues#possible-deadlocks-with-mysqlmariadb).| |*Oracle*|^|19c - 21c|Obligatorio si se utiliza Oracle como base de datos backend de Zabbix.| |*PostgreSQL*|^|13.0-16.X|Obligatorio si PostgreSQL se utiliza como base de datos backend de Zabbix.<br>Dependiendo del tamaño de la instalación, es posible que sea necesario aumentar la propiedad de configuración *work_mem* de PostgreSQL (siendo 4 MB el valor predeterminado ), de modo que la cantidad de memoria utilizada por la base de datos para una operación particular sea suficiente y la ejecución de la consulta no lleve demasiado tiempo.<br><br>Se agregó soporte para versiones de PostgreSQL:<br>- 16.X desde Zabbix 6.4. 8.| |*TimescaleDB* para PostgreSQL|^|2.1.0-2.14.X|Obligatorio si TimescaleDB se utiliza como una extensión de base de datos PostgreSQL. Asegúrese de instalar TimescaleDB Community Edition, que admite la compresión.<br><br>Tenga en cuenta que PostgreSQL 15 es compatible desde TimescaleDB 2.10.<br>También puede consultar la [documentación oficial](https://docs.timescale. com/self-hosted/latest/upgrades/upgrade-pg/) para obtener detalles sobre la compatibilidad de las versiones de PostgreSQL y TimescaleDB.<br><br>Se agregó soporte para las versiones de TimescaleDB:<br>- 2.10 desde Zabbix 6.4.1; <br>- 2.11 desde Zabbix 6.4.4; <br>- 2.12 desde Zabbix 6.4.9; <br>- 2.13 desde Zabbix 6.4.10;<br>- 2.14 since Zabbix 6.4.13.| |*SQLite*|Opcional|3.3.5-3.34.X|SQLite solo es compatible con servidores proxy Zabbix. Requerido si se utiliza SQLite como base de datos proxy Zabbix.| |*smartmontools*|^|7.1 o posterior|Requerido para el agente Zabbix 2.| |*who*|^| |Requerido para el complemento de recuento de usuarios.| |*dpkg*|^| |Requerido para el complemento system.sw.packages.| |*pkgtool*|^| |Requerido para el complemento system.sw.packages.| |*rpm*|^| |Requerido para el complemento system.sw.packages.| |*pacman*|^| |Requerido para el complemento system.sw.packages.|  ::: noteclassic  Aunque Zabbix puede trabajar con bases de datos disponibles en los sistemas operativos, para una mejor experiencia, recomendamos utilizar las bases de datos instaladas desde los repositorios oficiales de los desarrolladores de las bases de datos. :::

en-us	 This class is designed to work with frontend modules.  Object references:\  -   [Module](/manual/api/reference/module/object#module)  Available methods:\  -   [module.create](/manual/api/reference/module/create) - installing new modules -   [module.delete](/manual/api/reference/module/delete) - uninstalling modules -   [module.get](/manual/api/reference/module/get) - retrieving modules -   [module.update](/manual/api/reference/module/update) - updating modules
es	 Esta clase está diseñada para trabajar con módulos de la interfaz de usuario.  Referencias de objetos:\  - [Módulo](/manual/api/reference/module/object#module)  Métodos disponibles:\  - [module.create](/manual/api/reference/module/create) - instalación de nuevos módulos - [module.delete](/manual/api/reference/module/delete) - desinstalación de módulos - [module.get](/manual/api/reference/module/get) - recuperando módulos - [module.update](/manual/api/reference/module/update) - actualización de módulos

en-us	This is a step-by-step tutorial that shows how to create a simple dashboard widget.  ::: noteimportant The minimum required Zabbix version for this tutorial is 6.4.4. :::  You can download all files of this widget as a ZIP archive: [lesson_gauge_chart.zip](../../../../assets/en/devel/modules/examples/demo_widget_gauge.zip).
es	Este es un tutorial paso a paso que muestra cómo crear un widget simple para los tableros.  ::: noteimportant La versión mínima requerida de Zabbix para este tutorial es 6.4.4. :::  Puede descargar todos los archivos de este widget como un archivo ZIP: [lesson_gauge_chart.zip](../../../../assets/en/devel/modules/examples/demo_widget_gauge.zip).

en-us	This is a step-by-step tutorial that shows how to create a simple Zabbix frontend module. You can download all files of this module as a ZIP archive: [MyAddress.zip](../../../../assets/en/devel/modules/examples/MyAddress.zip).
es	Este es un tutorial que muestra el paso a paso para crear un módulo frontend básico de Zabbix. Puede descargar todos los archivos de este módulo en un archivo ZIP:[MiDireccionIP.zip](../../../../assets/en/devel/modules/examples/MiDireccionIP.zip).

en-us	This is a step-by-step tutorial to create a simple loadable plugin for Zabbix agent 2.
es	Este es un tutorial paso a paso para crear un complemento cargable simple para Zabbix agent 2.

en-us	 This page contains navigation links for dashboard widget parameters and possible property values for the respective [dashboard widget field](/manual/api/reference/dashboard/object#dashboard-widget-field) objects.  To see the parameters and property values for each widget, go to individual widget pages for:  -   [Action log](/manual/api/reference/dashboard/widget_fields/action_log) -   [Clock](/manual/api/reference/dashboard/widget_fields/clock) -   [Discovery status](/manual/api/reference/dashboard/widget_fields/discovery_status) -   [Favorite graphs](/manual/api/reference/dashboard/widget_fields/favorite_graphs) -   [Favorite maps](/manual/api/reference/dashboard/widget_fields/favorite_maps) -   [Geomap](/manual/api/reference/dashboard/widget_fields/geomap) -   [Graph](/manual/api/reference/dashboard/widget_fields/graph) -   [Graph (classic)](/manual/api/reference/dashboard/widget_fields/graph_classic) -   [Graph prototype](/manual/api/reference/dashboard/widget_fields/graph_prototype) -   [Host availability](/manual/api/reference/dashboard/widget_fields/host_availability) -   [Item value](/manual/api/reference/dashboard/widget_fields/item_value) -   [Map](/manual/api/reference/dashboard/widget_fields/map) -   [Map navigation tree](/manual/api/reference/dashboard/widget_fields/map_tree) -   [Plain text](/manual/api/reference/dashboard/widget_fields/plain_text) -   [Problem hosts](/manual/api/reference/dashboard/widget_fields/problem_hosts) -   [Problems](/manual/api/reference/dashboard/widget_fields/problems) -   [SLA report](/manual/api/reference/dashboard/widget_fields/sla_report) -   [System information](/manual/api/reference/dashboard/widget_fields/system) -   [Problems by severity](/manual/api/reference/dashboard/widget_fields/problems_severity) -   [Top hosts](/manual/api/reference/dashboard/widget_fields/top_hosts) -   [Trigger overview](/manual/api/reference/dashboard/widget_fields/trigger_overview) -   [URL](/manual/api/reference/dashboard/widget_fields/url) -   [Web monitoring](/manual/api/reference/dashboard/widget_fields/web_monitoring)  Deprecated widgets:  -   [Data overview](/manual/api/reference/dashboard/widget_fields/data_overview)
es	 This page contains navigation links for dashboard widget parameters and possible property values for the respective [dashboard widget field](/manual/api/reference/dashboard/object#dashboard-widget-field) objects.  To see the parameters and property values for each widget, go to individual widget pages for:  -   [Action log](/manual/api/reference/dashboard/widget_fields/action_log) -   [Clock](/manual/api/reference/dashboard/widget_fields/clock) -   [Discovery status](/manual/api/reference/dashboard/widget_fields/discovery_status) -   [Favorite graphs](/manual/api/reference/dashboard/widget_fields/favorite_graphs) -   [Favorite maps](/manual/api/reference/dashboard/widget_fields/favorite_maps) -   [Geomap](/manual/api/reference/dashboard/widget_fields/geomap) -   [Graph](/manual/api/reference/dashboard/widget_fields/graph) -   [Graph (classic)](/manual/api/reference/dashboard/widget_fields/graph_classic) -   [Graph prototype](/manual/api/reference/dashboard/widget_fields/graph_prototype) -   [Host availability](/manual/api/reference/dashboard/widget_fields/host_availability) -   [Item value](/manual/api/reference/dashboard/widget_fields/item_value) -   [Map](/manual/api/reference/dashboard/widget_fields/map) -   [Map navigation tree](/manual/api/reference/dashboard/widget_fields/map_tree) -   [Plain text](/manual/api/reference/dashboard/widget_fields/plain_text) -   [Problem hosts](/manual/api/reference/dashboard/widget_fields/problem_hosts) -   [Problems](/manual/api/reference/dashboard/widget_fields/problems) -   [SLA report](/manual/api/reference/dashboard/widget_fields/sla_report) -   [System information](/manual/api/reference/dashboard/widget_fields/system) -   [Problems by severity](/manual/api/reference/dashboard/widget_fields/problems_severity) -   [Top hosts](/manual/api/reference/dashboard/widget_fields/top_hosts) -   [Trigger overview](/manual/api/reference/dashboard/widget_fields/trigger_overview) -   [URL](/manual/api/reference/dashboard/widget_fields/url) -   [Web monitoring](/manual/api/reference/dashboard/widget_fields/web_monitoring)  Deprecated widgets:  -   [Data overview](/manual/api/reference/dashboard/widget_fields/data_overview)

en-us	# This topic does not exist yet.  We are sorry, the page you are looking for cannot be found. Return to the homepage, try searching, or get [help](https://www.zabbix.com/support).
es	# Este tema aún no existe.   Lo sentimos, no se encontró la página que está buscando. Regrese a la página de inicio, intente una búsqueda u obtenga [ayuda](https://www.zabbix.com/support).

en-us	#### Thread-based preprocessing workers   As the item value preprocessing has been rewritten to use thread-based preprocessing workers, a new [library](/manual/installation/requirements) is now required for Zabbix server/proxy - `libevent_pthreads`.
es	#### Trabajadores de preprocesamiento basados en subprocesos   Como el preprocesamiento del valor de la métrica se ha reescrito para utilizar trabajadores de preprocesamiento basados en subprocesos, ahora se requiere una nueva [librería](/manual/installation/requirements) para el servidor/proxy Zabbix: `libevent_pthreads`.

en-us	#### Thread-based preprocessing workers   The item value preprocessing has been rewritten to use thread-based preprocessing workers for enhanced parallelism and reduced overhead.  This development should help avoid situations when the prolonged preprocessing of one item holds up others.  This change adds a new [required library](/manual/installation/requirements#serverproxy) for Zabbix server/proxy - `libevent_pthreads`.  See also: [Preprocessing details](/manual/config/items/preprocessing/preprocessing_details#item-value-preprocessing)
es	#### Trabajadores de preprocesamiento basados en subprocesos   El preprocesamiento del valor de la métrica se ha reescrito para utilizar trabajadores de preprocesamiento basados en subprocesos para mejorar el paralelismo y reducir los costes generales. Este desarrollo debería ayudar a evitar situaciones en las que el preprocesamiento prolongado de una métrica retrase otros.  Este cambio agrega una nueva [librería requerida](/manual/installation/requirements#serverproxy) para el servidor/proxy Zabbix: `libevent_pthreads`.  Ver también: [Detalles de preprocesamiento](/manual/config/items/preprocessing/preprocessing_details#item-value-preprocessing)

en-us	##### Threads cannot be selected with `cmdline` parameter in `proc.get[]`, `proc.mem[]` and `proc.num[]` items  Let's take as an example one of kernel threads:      $ ps -ef| grep kthreadd     root         2     0  0 09:33 ?        00:00:00 [kthreadd]  It can be selected with process `name` parameter:      $ zabbix_get -s localhost -k 'proc.num[kthreadd,root]'     1  But selection by process `cmdline` parameter does not work:      $ zabbix_get -s localhost -k 'proc.num[,root,,kthreadd]'     0  The reason is that Zabbix agent takes the regular expression specified in `cmdline` parameter and applies it to contents of process `/proc/<pid>/cmdline`. For kernel threads their `/proc/<pid>/cmdline` files are empty. So, `cmdline` parameter never matches.
es	##### Los subprocesos no se pueden seleccionar con el parámetro `cmdline` en los elementos `proc.get[]`, `proc.mem[]` y `proc.num[]`  Tomemos como ejemplo uno de los subprocesos del kernel:      $ ps -ef| grep kthreadd     root  2  0. 0 09:33.  ?  00:00:00 [kthreadd]  Se puede seleccionar con el parámetro `nombre` del proceso:      $ zabbix_get -s localhost -k 'proc.num[kthreadd,root]'1     1  Pero la selección por el parámetro `cmdline` del proceso no funciona:      $ zabbix_get -s localhost -k 'proc.num[,root,,kthreadd]'     0  La razón es que el agente Zabbix toma la expresión regular especificada en el parámetro `cmdline` y lo aplica al contenido del proceso `/proc/<pid>/cmdline`. Para los subprocesos del kernel, sus archivos `/proc/<pid>/cmdline` están vacíos. Entonces, el parámetro `cmdline` nunca coincide.

en-us	##### - Threshold to reach  (**timeleft** only)\ Parameter `threshold` specifies a value the analyzed item has to reach, no difference if from above or from below. Once we have determined f(t) (see below), we should solve equation f(t) = `threshold` and return the root which is closer to now and to the right from now or 999999999999.9999 if there is no such root.  ::: notetip When item values approach the threshold and then cross it, **timeleft** assumes that intersection is already in the past and therefore switches to the next intersection with `threshold` level, if any. Best practice should be to use predictions as a complement to ordinary problem diagnostics, not as a substitution.[^1] :::
es	##### - Umbral a alcanzar  (solo **tiempo restante**)\ El parámetro `umbral` especifica un valor que debe alcanzar el elemento analizado, no hay diferencia si desde arriba o desde abajo. Una vez que hemos determinado f(t) (ver más abajo) deberíamos resolver la ecuación f(t) = `umbral` y devolver el raíz que está más cerca de ahora y a la derecha de ahora o 999999999999.9999 si no existe tal raíz.  ::: nota Cuando los valores de los artículos se acercan al umbral y luego cruzan **timeleft** asume que la intersección ya está en el pasado y por lo tanto, cambia a la siguiente intersección con el nivel 'umbral', si ningún. La mejor práctica debería ser utilizar las predicciones como complemento de diagnósticos de problemas ordinarios, no como una sustitución.[^1] :::

en-us	##### - Time interval  First of all, you should specify the historic period Zabbix should analyze to come up with the prediction. You do it in a familiar way by means of the `time period` parameter and optional time shift like you do it with **avg**, **count**, **delta**, **max**, **min** and **sum** functions.
es	##### - Intervalo de tiempo  En primer lugar, debe especificar el período histórico en el que Zabbix debe analizar para llegar a la predicción. Lo haces de una manera familiar por medio del parámetro 'período de tiempo' y el cambio de tiempo opcional como lo hace con **avg**, **count**, **delta**, **max**, **min** y **sum** funciones