zabbix_export:
  version: '8.0'
  template_groups:
    - uuid: a571c0d144b14fd4a87a9d9b2aa9fcd6
      name: Templates/Applications
    - uuid: c2c162144c2d4c5491c8801193af4945
      name: Templates/Cloud
    - uuid: 36bff6c29af64692839d077febfc7079
      name: 'Templates/Network devices'
    - uuid: 7c2cb727f85b492d88cd56e17127c64d
      name: Templates/SAN
  host_groups:
    - uuid: a571c0d144b14fd4a87a9d9b2aa9fcd6
      name: Applications
    - uuid: 137f19e6e2dc4219b33553b812627bc2
      name: 'Virtual machines'
  templates:
    - uuid: d0571c5f2c204b7ab244843040288a35
      template: 'Acronis Cyber Protect Cloud by HTTP'
      name: 'Acronis Cyber Protect Cloud by HTTP'
      description: |
        Requests Acronis Cyber Protect Cloud API access token and creates host prototype for MSP.
        
        Template uses HTTP item to query Acronis Cyber Protect Cloud API client for authorization.
        
        Read the template documentation prior to using this template.
        
        You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Setup
        
        This is a master template that needs to be assigned to a host, and it will automatically create MSP host prototype, which will monitor Acronis Cyber Protect Cloud metrics.
        
        Before using this template it is required to create a new MSP-level API client for Zabbix to use. To do that, sign into your Acronis Cyber Protect Cloud WEB interface, navigate to `Settings` -> `API clients` and create new API client.
        You will be shown credentials for this API client. These credentials need to be entered in the following host wizard configuration field:
        
        * `API client ID` - enter `Client ID` here;
        
        * `API client secret` - enter `Secret` here;
        
        * `Datacenter URL` - enter `Data center URL`
        
        This is all the configuration needed for this integration.
      vendor:
        name: Zabbix
        version: 8.0-1
      groups:
        - name: Templates/Applications
      items:
        - uuid: bce642c2c6e743ccb618c96f6ca533da
          name: 'Get access token'
          type: HTTP_AGENT
          key: acronis.cpc.account_manager.get_token
          delay: '{$ACRONIS.CPC.AUTH.INTERVAL}'
          history: '0'
          value_type: TEXT
          authtype: BASIC
          username: '{$ACRONIS.CPC.AUTH.CLIENT.ID}'
          password: '{$ACRONIS.CPC.AUTH.SECRET}'
          description: 'Authorizes API user and receives access token.'
          preprocessing:
            - type: JAVASCRIPT
              parameters:
                - |
                  value = JSON.parse(value)
                  
                  var list = []
                  list.push({'scope': value['scope'].split(':')[3], 'access_token': value['access_token']})
                  return JSON.stringify(list);
          timeout: 15s
          url: '{$ACRONIS.CPC.DATACENTER.URL}{$ACRONIS.CPC.PATH.ACCOUNT.MANAGEMENT}/idp/token'
          status_codes: ''
          posts: grant_type=client_credentials
          http_proxy: '{$ACRONIS.CPC.HTTP.PROXY}'
          headers:
            - name: Content-Type
              value: application/x-www-form-urlencoded
            - name: X-Application-Secret
              value: 5619386d-de56-49ec-8508-f5c399d3b9bd
          request_method: POST
          tags:
            - tag: component
              value: authorization
      discovery_rules:
        - uuid: d2c30d84c5f44734bc2f0ef38e99a959
          name: 'Acronis CPC: MSP Discovery'
          type: DEPENDENT
          key: acronis.cpc.lld.msp_discovery
          description: 'Discovers MSP and creates host prototype based on that.'
          host_prototypes:
            - uuid: bbdc747270f64876bc701dd87c27dbbe
              host: 'Acronis CPC MSP {#SCOPE}'
              name: 'Acronis CPC MSP {#SCOPE}'
              group_links:
                - group:
                    name: Applications
              templates:
                - name: 'Acronis Cyber Protect Cloud MSP by HTTP'
              macros:
                - macro: '{$ACRONIS.CPC.ACCESS_TOKEN}'
                  value: '{#ACCESS_TOKEN}'
                  description: 'Acronis CPC API access token.'
                - macro: '{$ACRONIS.CPC.MSP.TENANT.UUID}'
                  value: '{#SCOPE}'
                  description: 'UUID of API client tenant.'
          master_item:
            key: acronis.cpc.account_manager.get_token
          lld_macro_paths:
            - lld_macro: '{#ACCESS_TOKEN}'
              path: $.access_token
            - lld_macro: '{#SCOPE}'
              path: $.scope
      tags:
        - tag: class
          value: software
        - tag: subclass
          value: ai
        - tag: subclass
          value: backup
        - tag: subclass
          value: security
        - tag: target
          value: acronis
        - tag: target
          value: cyber-protect-cloud
      macros:
        - macro: '{$ACRONIS.CPC.AUTH.CLIENT.ID}'
          description: 'Client ID for API user access.'
          config:
            type: TEXT
            priority: '4'
            label: 'API client ID'
            description: 'Client ID for API user access.'
            required: 'YES'
        - macro: '{$ACRONIS.CPC.AUTH.INTERVAL}'
          value: 110m
          description: 'API token regeneration interval, in minutes. By default, Acronis Cyber Protect Cloud tokens expire after 2 hours.'
          config:
            type: TEXT
            priority: '2'
            section_name: Other
            label: 'API token refresh interval (min)'
            description: 'API token regeneration interval, in minutes. By default, Acronis Cyber Protect Cloud tokens expire after 2 hours.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ACRONIS.CPC.AUTH.SECRET}'
          type: SECRET_TEXT
          description: 'Secret for API user access.'
          config:
            type: TEXT
            priority: '5'
            label: 'API client secret'
            description: 'Secret for API user access.'
            required: 'YES'
        - macro: '{$ACRONIS.CPC.DATACENTER.URL}'
          description: 'Acronis Cyber Protect Cloud datacenter URL, e.g., https://eu2-cloud.acronis.com.'
          config:
            type: TEXT
            priority: '1'
            label: 'Datacenter URL'
            description: 'Acronis Cyber Protect Cloud datacenter URL, e.g., https://eu2-cloud.acronis.com.'
            required: 'YES'
        - macro: '{$ACRONIS.CPC.HTTP.PROXY}'
          description: 'Sets the HTTP proxy for the authorization item. Host prototypes will also use this value for HTTP proxy. If this parameter is empty, then no proxy is used.'
          config:
            type: TEXT
            priority: '3'
            section_name: Other
            label: 'HTTP proxy'
            description: 'Sets the HTTP proxy for the authorization item. Host prototypes will also use this value for HTTP proxy. If this parameter is empty, then no proxy is used.'
        - macro: '{$ACRONIS.CPC.PATH.ACCOUNT.MANAGEMENT}'
          value: /api/2
          description: 'Sub-path for the Account Management API.'
          config:
            type: TEXT
            priority: '6'
            label: 'Account management API path'
            description: 'Sub-path for the Account Management API.'
    - uuid: bf3107deff3a4aabab1e1c0ee71a3281
      template: 'Acronis Cyber Protect Cloud MSP by HTTP'
      name: 'Acronis Cyber Protect Cloud MSP by HTTP'
      description: |
        Discovers and monitors alerts, clients, devices using HTTP agent items.
        
        This template receives API token and datacenter URL from parent host, therefore no additional configuration is necessary.
        
        Read the template documentation prior to using this template.
        
        You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Setup
        
        This template is not meant to be used independently. A host with the `Acronis Cyber Protect Cloud by HTTP` template will request API token and automatically create a host prototype with this template assigned to it.
        
        If needed, you can specify an HTTP proxy for the template to use by changing the value of `HTTP proxy` host wizard configuration field.
        
        Device discovery trigger prototypes that check services which have failed to run, have trigger time offset host wizard configuration field:
        
        * `Antimalware scan offset (sec)`
        
        * `Backup run offset (sec)`
        
        * `Vulnerability assessment offset (sec)`
        
        * `Patch management offset (sec)`
        
        Using these macros, their respective triggers can be offset in both directions. For example, if you wish to make
        sure that the trigger fires only when the current time is at least 3 minutes over the next scheduled antimalware
        scan, then set the value of `{$ACRONIS.CPC.OFFSET.SCHEDULED.ANTIMALWARE}` host wizard configuration field to `-180`.
        This is the default behaviour.
      vendor:
        name: Zabbix
        version: 8.0-1
      groups:
        - name: Templates/Applications
      items:
        - uuid: dba9a02767be47819f7012f316723fff
          name: 'Get alerts'
          type: HTTP_AGENT
          key: acronis.cpc.alerts.get
          delay: 5m
          history: '0'
          value_type: TEXT
          description: 'Fetches all alerts.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.items
          timeout: 15s
          url: '{$ACRONIS.CPC.DATACENTER.URL}{$ACRONIS.CPC.PATH.ALERTS}/alerts'
          status_codes: ''
          http_proxy: '{$ACRONIS.CPC.HTTP.PROXY}'
          headers:
            - name: Accept
              value: application/json
            - name: Authorization
              value: 'Bearer {$ACRONIS.CPC.ACCESS_TOKEN}'
            - name: X-Application-Secret
              value: 5619386d-de56-49ec-8508-f5c399d3b9bd
          tags:
            - tag: component
              value: raw
        - uuid: 483f9e040091476ba3857ae2957d83bf
          name: 'Alerts with "critical" severity'
          type: DEPENDENT
          key: acronis.cpc.alerts.severity.crit
          description: 'Gets count of alerts with "critical" severity.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$..[?(@.severity == ''critical'')].length()'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: acronis.cpc.alerts.get
          tags:
            - tag: component
              value: alert
            - tag: component
              value: application
        - uuid: 4fcefc1b66fe4c56b68cf5712aa727e5
          name: 'Alerts with "error" severity'
          type: DEPENDENT
          key: acronis.cpc.alerts.severity.err
          description: 'Gets count of alerts with "error" severity.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$..[?(@.severity == ''error'')].length()'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: acronis.cpc.alerts.get
          tags:
            - tag: component
              value: alert
            - tag: component
              value: application
        - uuid: 06003951452f4687bd0f1c0a395e7a77
          name: 'Alerts with "information" severity'
          type: DEPENDENT
          key: acronis.cpc.alerts.severity.info
          description: 'Gets count of alerts with "information" severity.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$..[?(@.severity == ''information'')].length()'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: acronis.cpc.alerts.get
          tags:
            - tag: component
              value: alert
            - tag: component
              value: application
        - uuid: ca3a1c7649874dfdaf191c7063022498
          name: 'Alerts with "ok" severity'
          type: DEPENDENT
          key: acronis.cpc.alerts.severity.ok
          description: 'Gets count of alerts with "ok" severity.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$..[?(@.severity == ''ok'')].length()'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: acronis.cpc.alerts.get
          tags:
            - tag: component
              value: alert
            - tag: component
              value: application
        - uuid: a4516d8961b3426f859511e1614c4403
          name: 'Alerts with "warning" severity'
          type: DEPENDENT
          key: acronis.cpc.alerts.severity.warn
          description: 'Gets count of alerts with "warning" severity.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$..[?(@.severity == ''warning'')].length()'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: acronis.cpc.alerts.get
          tags:
            - tag: component
              value: alert
            - tag: component
              value: application
        - uuid: 77f25dbbd477458a88f1850701dccc69
          name: 'Get customers'
          type: HTTP_AGENT
          key: acronis.cpc.customers.get
          delay: 5m
          history: '0'
          value_type: TEXT
          description: 'Fetches all customers.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.items
          timeout: 15s
          url: '{$ACRONIS.CPC.DATACENTER.URL}{$ACRONIS.CPC.PATH.ACCOUNT.MANAGEMENT}/tenants'
          query_fields:
            - name: subtree_root_id
              value: '{$ACRONIS.CPC.MSP.TENANT.UUID}'
          status_codes: ''
          http_proxy: '{$ACRONIS.CPC.HTTP.PROXY}'
          headers:
            - name: Accept
              value: application/json
            - name: Authorization
              value: 'Bearer {$ACRONIS.CPC.ACCESS_TOKEN}'
            - name: X-Application-Secret
              value: 5619386d-de56-49ec-8508-f5c399d3b9bd
          tags:
            - tag: component
              value: raw
        - uuid: 81b3d23d30964b88aeb3a0911ba0e487
          name: 'Get devices'
          type: HTTP_AGENT
          key: acronis.cpc.devices.get
          history: '0'
          value_type: TEXT
          description: 'Fetches all devices.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.items
          timeout: 15s
          url: '{$ACRONIS.CPC.DATACENTER.URL}{$ACRONIS.CPC.PATH.RESOURCE.MANAGEMENT}/resources'
          query_fields:
            - name: type
              value: '{$ACRONIS.CPC.DEVICE.RESOURCE.TYPE}'
          status_codes: ''
          http_proxy: '{$ACRONIS.CPC.HTTP.PROXY}'
          headers:
            - name: Accept
              value: application/json
            - name: Authorization
              value: 'Bearer {$ACRONIS.CPC.ACCESS_TOKEN}'
            - name: X-Application-Secret
              value: 5619386d-de56-49ec-8508-f5c399d3b9bd
          tags:
            - tag: component
              value: raw
        - uuid: 3697d34ebbb74b90aa7318321ecc27e5
          name: 'Register integration'
          type: SCRIPT
          key: acronis.cpc.register.integration
          delay: 24h
          history: '0'
          trends: '0'
          params: |
            
            const request_path = '/api/integration_management/v2/status';
            const app_id = '5619386d-de56-49ec-8508-f5c399d3b9bd';
            
            function checkParams(params) {
            	['api_url', 'api_token', 'tenant_uuid'].forEach(function (field) {
            		if (typeof params !== 'object' || typeof params[field] === 'undefined' || params[field] === '') {
            			throw 'Required param is not set: ' + field + '.';
            		}
            	});
            	return params;
            }
            
            function getHttpData(url, register, params, api_token, tenant_uuid) {
            	const request = new HttpRequest();
            
            	request.addHeader('Content-Type: application/json');
            	request.addHeader('Authorization: Bearer ' + api_token);
            	request.addHeader('X-Application-Secret: ' + app_id);
            
            	if (params['http_proxy']) {
            		request.setProxy(params['http_proxy']);
            		Zabbix.log(4, '[ ACRONIS CYBER PROTECT CLOUD API ] Using http proxy: ' + params['http_proxy']);
            	}
            
            	if (!register) {
            		const response = request.get(url + '?tenantID=' + encodeURIComponent(tenant_uuid));
            		Zabbix.log(4, '[ ACRONIS CYBER PROTECT CLOUD API ] [ ' + url + ' ] Received response with status code ' + request.getStatus() + ': ' + response);
            
            		if (request.getStatus() !== 200) {
            			if (typeof (response.error && response.error.message) !== 'undefined') {
            				throw response.error.message;
            			} else {
            				throw 'Failed to receive data: invalid response status code. Check debug log for more information.';
            			}
            		}
            
            		return response;
            
            	} else {
            
            		const request_body = {
            			"application_id": app_id,
            			"module": {
            				"name": "Zabbix integration with Acronis Cyber Protect Cloud",
            				"version": "1.0.0"
            			},
            			"vendor_system": {
            				"name": "Product integrated with Acronis",
            				"version": "23.07"
            			},
            			"events": [
            				{
            					"category": "activation",
            					"action": "activated integration",
            					"activation_event": true
            				}
            			]
            		};
            
            		const response = request.post(url + '?tenantID=' + encodeURIComponent(tenant_uuid), JSON.stringify(request_body));
            		Zabbix.log(4, '[ ACRONIS CYBER PROTECT CLOUD API ] [ ' + url + ' ] Received response with status code ' + request.getStatus() + ': ' + response);
            
            		if (request.getStatus() !== 204) {
            			if (typeof (response.error && response.error.message) !== 'undefined') {
            				throw response.error.message;
            			} else {
            				throw 'Failed to receive data: invalid response status code. Check debug log for more information.';
            			}
            		}
            
            		return 1;
            	}
            }
            
            function parseGetStatusData(http_response) {
            	const data = JSON.parse(http_response);
            	if (data['items']) {
            		data['items'].forEach(function (app) {
            			if (app['application_id'] && app['application_id'] === app_id) {
            				return app['active'];
            			}
            		});
            		return false;
            	} else {
            		throw 'Unexpected data structure in HTTP response.';
            	}
            }
            
            const params = checkParams(JSON.parse(value)),
            	url = params.api_url,
            	api_token = params.api_token,
            	tenant_uuid = params.tenant_uuid;
            
            const current_activation_status = parseGetStatusData(getHttpData(url + request_path, false, params, api_token, tenant_uuid));
            
            if (!current_activation_status) {
            	return getHttpData(url + request_path, true, params, api_token, tenant_uuid);
            } else {
            	return 0;
            }
          description: 'Registers integration on Acronis services.'
          timeout: 30s
          parameters:
            - name: api_token
              value: '{$ACRONIS.CPC.ACCESS_TOKEN}'
            - name: api_url
              value: '{$ACRONIS.CPC.DATACENTER.URL}'
            - name: tenant_uuid
              value: '{$ACRONIS.CPC.MSP.TENANT.UUID}'
          tags:
            - tag: component
              value: raw
      discovery_rules:
        - uuid: ee0d74749b93459ca40e477b31b3aa21
          name: 'Acronis CPC: Alerts discovery'
          type: DEPENDENT
          key: acronis.cpc.alerts.discovery
          filter:
            evaltype: AND
            conditions:
              - macro: '{#CATEGORY}'
                value: '{$ACRONIS.CPC.ALERT.DISCOVERY.CATEGORY.MATCHES}'
              - macro: '{#CATEGORY}'
                value: '{$ACRONIS.CPC.ALERT.DISCOVERY.CATEGORY.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#RESOURCE_NAME}'
                value: '{$ACRONIS.CPC.ALERT.DISCOVERY.RESOURCE.MATCHES}'
              - macro: '{#RESOURCE_NAME}'
                value: '{$ACRONIS.CPC.ALERT.DISCOVERY.RESOURCE.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#SEVERITY}'
                value: '{$ACRONIS.CPC.ALERT.DISCOVERY.SEVERITY.MATCHES}'
              - macro: '{#SEVERITY}'
                value: '{$ACRONIS.CPC.ALERT.DISCOVERY.SEVERITY.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          lifetime: '0'
          description: 'Discovers alerts.'
          item_prototypes:
            - uuid: b298e768dc0447b4b5c29c99a5852453
              name: 'Alert [{#TYPE}]:[{#ALERT_ID}]: Alert severity'
              type: DEPENDENT
              key: 'acronis.cpc.alert.severity[{#ALERT_ID}]'
              description: 'Severity for the alert.'
              valuemap:
                name: 'Alert severity'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$[?(@.id == "{#ALERT_ID}")].severity.first()'
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not find alert severity'
                - type: JAVASCRIPT
                  parameters:
                    - |
                      const idx = [
                      	'ok',
                      	'warning',
                      	'error',
                      	'critical',
                      	'information'
                      ].indexOf(value);
                      return idx !== -1 ? idx : 10;
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: acronis.cpc.alerts.get
              tags:
                - tag: category
                  value: '{#CATEGORY}'
                - tag: component
                  value: alert
                - tag: component
                  value: application
                - tag: resource
                  value: '{#RESOURCE_NAME}'
                - tag: severity
                  value: '{#SEVERITY}'
              trigger_prototypes:
                - uuid: f72a128c289540869ceeb4eb8a32519b
                  expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.alert.severity[{#ALERT_ID}])=3'
                  name: 'Acronis: Alert [{#TYPE}]:[{#ALERT_ID}]: Alert has "critical" severity'
                  event_name: 'Acronis: Alert [{#ALERT_ID}]: "critical" severity'
                  opdata: 'Alert type: {#TYPE}, Current status: {ITEM.LASTVALUE}'
                  priority: HIGH
                  description: 'Alert has "critical" severity.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
                - uuid: 360fcc25d3fe442194ddea76db8157be
                  expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.alert.severity[{#ALERT_ID}])=2'
                  name: 'Acronis: Alert [{#TYPE}]:[{#ALERT_ID}]: Alert has "error" severity'
                  event_name: 'Acronis: Alert [{#ALERT_ID}]: "error" severity'
                  opdata: 'Alert type: {#TYPE}, Current status: {ITEM.LASTVALUE}'
                  priority: AVERAGE
                  description: 'Alert has "error" severity.'
                  manual_close: 'YES'
                  dependencies:
                    - name: 'Acronis: Alert [{#TYPE}]:[{#ALERT_ID}]: Alert has "critical" severity'
                      expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.alert.severity[{#ALERT_ID}])=3'
                  tags:
                    - tag: scope
                      value: notice
                - uuid: 687b26d91e6e448d911663f190328fb4
                  expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.alert.severity[{#ALERT_ID}])=1'
                  name: 'Acronis: Alert [{#TYPE}]:[{#ALERT_ID}]: Alert has "warning" severity'
                  event_name: 'Acronis: Alert [{#ALERT_ID}]: "warning" severity'
                  opdata: 'Alert type: {#TYPE}, Current status: {ITEM.LASTVALUE}'
                  priority: WARNING
                  description: 'Alert has "warning" severity.'
                  manual_close: 'YES'
                  dependencies:
                    - name: 'Acronis: Alert [{#TYPE}]:[{#ALERT_ID}]: Alert has "error" severity'
                      expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.alert.severity[{#ALERT_ID}])=2'
                  tags:
                    - tag: scope
                      value: notice
          master_item:
            key: acronis.cpc.alerts.get
          lld_macro_paths:
            - lld_macro: '{#ALERT_ID}'
              path: $.id
            - lld_macro: '{#CATEGORY}'
              path: $.category
            - lld_macro: '{#RESOURCE_NAME}'
              path: $.details.resourceName
            - lld_macro: '{#SEVERITY}'
              path: $.severity
            - lld_macro: '{#TYPE}'
              path: $.type
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
        - uuid: 4211387734c642f88e236bd588940cc1
          name: 'Acronis CPC: Customer discovery'
          type: DEPENDENT
          key: acronis.cpc.customer.discovery
          filter:
            evaltype: AND
            conditions:
              - macro: '{#KIND}'
                value: '{$ACRONIS.CPC.CUSTOMER.DISCOVERY.KIND.MATCHES}'
              - macro: '{#NAME}'
                value: '{$ACRONIS.CPC.CUSTOMER.DISCOVERY.NAME.MATCHES}'
              - macro: '{#NAME}'
                value: '{$ACRONIS.CPC.CUSTOMER.DISCOVERY.NAME.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovers customers.'
          item_prototypes:
            - uuid: d61dc067880a4317886acd54d0df1da1
              name: 'Customer [{#NAME}]: Enabled status'
              type: DEPENDENT
              key: 'acronis.cpc.customer.status[{#NAME}]'
              description: 'Enabled status for customer (true or false).'
              valuemap:
                name: 'True false'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$[?(@.name == "{#NAME}")].enabled.first()'
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not find customer status'
                - type: BOOL_TO_DECIMAL
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: acronis.cpc.customers.get
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: customer
                - tag: customer
                  value: '{#NAME}'
          master_item:
            key: acronis.cpc.customers.get
          lld_macro_paths:
            - lld_macro: '{#KIND}'
              path: $.kind
            - lld_macro: '{#NAME}'
              path: $.name
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
        - uuid: 67e399a0a6884589adc2618b181024e7
          name: 'Acronis CPC: Device discovery'
          type: DEPENDENT
          key: acronis.cpc.device.discovery
          filter:
            evaltype: AND
            conditions:
              - macro: '{#TENANT_NAME}'
                value: '{$ACRONIS.CPC.DEVICE.DISCOVERY.TENANT.MATCHES}'
              - macro: '{#TENANT_NAME}'
                value: '{$ACRONIS.CPC.DEVICE.DISCOVERY.TENANT.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovers devices.'
          item_prototypes:
            - uuid: 63f8280408c34e029085af75f15c0db3
              name: 'Device [{#NAME}]:[{#ID}]: Agent enabled'
              type: DEPENDENT
              key: 'acronis.cpc.device.agent.enabled[{#NAME}]'
              description: 'Agent status (enabled or disabled) for the device.'
              valuemap:
                name: 'True false'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.context.attributes.[?(@.name == "agent")].kvs.[?(@.key == "enabled")].value.first()'
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse agent status'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
              trigger_prototypes:
                - uuid: 7e33ba82ad90436c88beee8d32a3f29d
                  expression: 'max(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.agent.enabled[{#NAME}],3m) < 1'
                  name: 'Acronis: Device [{#NAME}]:[{#ID}]: Agent disabled'
                  opdata: 'Current score: {ITEM.LASTVALUE}'
                  priority: INFO
                  description: 'Agent for this device is disabled for at least 3 minutes.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
            - uuid: e1eaefb0e0af4793abadb0b3ad20ff4b
              name: 'Device [{#NAME}]:[{#ID}]: Agent online'
              type: DEPENDENT
              key: 'acronis.cpc.device.agent.online[{#NAME}]'
              description: 'Agent reachability for the device.'
              valuemap:
                name: 'True false'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.context.attributes.[?(@.name == "agent")].kvs.[?(@.key == "is_online")].value.first()'
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse agent reachability status'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
            - uuid: 7bc04c3526704b578e2b7561e6c97b6a
              name: 'Device [{#NAME}]:[{#ID}]: Agent version'
              type: DEPENDENT
              key: 'acronis.cpc.device.agent.version[{#NAME}]'
              value_type: CHAR
              description: 'Agent version for the device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.context.attributes.[?(@.name == "agent")].kvs.[?(@.key == "version")].value.first()'
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse agent version'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
            - uuid: d8c3372e05f3480aaa499b143ab47e87
              name: 'Device [{#NAME}]:[{#ID}]: Next machine backup run'
              type: DEPENDENT
              key: 'acronis.cpc.device.backup.next[{#NAME}]'
              units: unixtime
              description: 'Next scheduled machine backup run for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.backup.machine")].next_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
              trigger_prototypes:
                - uuid: 6a2c53a89d7748f89956464849d0b7de
                  expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.backup.next[{#NAME}]) < (now() + {$ACRONIS.CPC.OFFSET.SCHEDULED.BACKUP})'
                  name: 'Acronis: Device [{#NAME}]:[{#ID}]: Scheduled machine backup failed to run'
                  opdata: 'Scheduled: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'Scheduled machine backup failed to run.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
            - uuid: 9fbbfa68438a406d82900d5c8801a756
              name: 'Device [{#NAME}]:[{#ID}]: Previous successful machine backup run'
              type: DEPENDENT
              key: 'acronis.cpc.device.backup.prev.ok[{#NAME}]'
              units: unixtime
              description: 'Previous successful machine backup run for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.backup.machine")].last_success_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
            - uuid: cea527353e34488a92dc5d2c082f6710
              name: 'Device [{#NAME}]:[{#ID}]: Previous machine backup run'
              type: DEPENDENT
              key: 'acronis.cpc.device.backup.prev[{#NAME}]'
              units: unixtime
              description: 'Previous machine backup run for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.backup.machine")].last_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
            - uuid: b45fb50f8caa40438eecfc4482d80fc2
              name: 'Device [{#NAME}]:[{#ID}]: CyberFit score'
              type: DEPENDENT
              key: 'acronis.cpc.device.cyberfit[{#NAME}]'
              value_type: FLOAT
              description: 'Acronis "CyberFit" score for the device. Value of "-1" is assigned if "CyberFit" could not be found for device.'
              valuemap:
                name: 'CyberFit score'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.context.attributes.[?(@.name == "cyberfit")].details.[?(@.key == "cyberfit_score_value")].value.first()'
                  error_handler: CUSTOM_VALUE
                  error_handler_params: '-1'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
              trigger_prototypes:
                - uuid: 0c7edd6256fc48c49316644faef8df0a
                  expression: |
                    min(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.cyberfit[{#NAME}],3m) < {$ACRONIS.CPC.CYBERFIT.HIGH}
                    and
                    max(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.cyberfit[{#NAME}],3m) <> -1
                  name: 'Acronis: Device [{#NAME}]:[{#ID}]: CyberFit score critical'
                  opdata: 'Current score: {ITEM.LASTVALUE}'
                  priority: HIGH
                  description: 'CyberFit score for this device is critical for at least 3 minutes.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
                - uuid: 4c841b8207d642b28dbd365983aac0ec
                  expression: |
                    min(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.cyberfit[{#NAME}],3m) < {$ACRONIS.CPC.CYBERFIT.WARN}
                    and
                    max(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.cyberfit[{#NAME}],3m) <> -1
                  name: 'Acronis: Device [{#NAME}]:[{#ID}]: CyberFit score low'
                  opdata: 'Current score: {ITEM.LASTVALUE}'
                  priority: WARNING
                  description: 'CyberFit score for this device is low for at least 3 minutes.'
                  manual_close: 'YES'
                  dependencies:
                    - name: 'Acronis: Device [{#NAME}]:[{#ID}]: CyberFit score critical'
                      expression: |
                        min(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.cyberfit[{#NAME}],3m) < {$ACRONIS.CPC.CYBERFIT.HIGH}
                        and
                        max(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.cyberfit[{#NAME}],3m) <> -1
                  tags:
                    - tag: scope
                      value: notice
            - uuid: 1f4d019c271c4272b055253d99d90244
              name: 'Device [{#NAME}]:[{#ID}]: Next patch management run'
              type: DEPENDENT
              key: 'acronis.cpc.device.patch.next[{#NAME}]'
              units: unixtime
              description: 'Next scheduled patch management run for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.security.patch_management")].next_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
              trigger_prototypes:
                - uuid: 7f82e95335b746c1a061b0ae811165a7
                  expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.patch.next[{#NAME}]) < (now() + {$ACRONIS.CPC.OFFSET.SCHEDULED.PATCH})'
                  name: 'Acronis: Device [{#NAME}]:[{#ID}]: Scheduled patch management failed to run'
                  opdata: 'Scheduled: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'Scheduled patch management failed to run.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
            - uuid: 8ff39ea389ec4c53aa572074266536da
              name: 'Device [{#NAME}]:[{#ID}]: Previous successful patch management run'
              type: DEPENDENT
              key: 'acronis.cpc.device.patch.prev.ok[{#NAME}]'
              units: unixtime
              description: 'Previous successful patch management run for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.security.patch_management")].last_success_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
            - uuid: 81bc4b10c3484673a76e9bb8e012af26
              name: 'Device [{#NAME}]:[{#ID}]: Previous patch management run'
              type: DEPENDENT
              key: 'acronis.cpc.device.patch.prev[{#NAME}]'
              units: unixtime
              description: 'Previous patch management run for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.security.patch_management")].last_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
            - uuid: 43dc6e6bb7e042149b356fb6b067f0d5
              name: 'Device [{#NAME}]:[{#ID}]: Protection plan name'
              type: DEPENDENT
              key: 'acronis.cpc.device.protection.name[{#NAME}]'
              value_type: CHAR
              description: 'Protection plan name for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.aggregate.names
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse protection plan name'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
            - uuid: 98701aa6f99f48c3a769529b2c3c3123
              name: 'Device [{#NAME}]:[{#ID}]: Next antimalware protection scan'
              type: DEPENDENT
              key: 'acronis.cpc.device.protection.scan.next[{#NAME}]'
              units: unixtime
              description: 'Next scheduled antimalware protection scan for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.security.antimalware_protection")].next_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
              trigger_prototypes:
                - uuid: 75156ffdb1ed4b90b594e50bce8752e5
                  expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.protection.scan.next[{#NAME}]) < (now() + {$ACRONIS.CPC.OFFSET.SCHEDULED.ANTIMALWARE})'
                  name: 'Acronis: Device [{#NAME}]:[{#ID}]: Scheduled antimalware scan failed to run'
                  opdata: 'Scheduled: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'Scheduled antimalware scan failed to run.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
            - uuid: d9510ad24a1a40dfb14313e0e135a247
              name: 'Device [{#NAME}]:[{#ID}]: Previous successful antimalware protection scan'
              type: DEPENDENT
              key: 'acronis.cpc.device.protection.scan.prev.ok[{#NAME}]'
              units: unixtime
              description: 'Previous successful antimalware protection scan for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.security.antimalware_protection")].last_success_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
            - uuid: 684b4a46e4d84a588bd84fac3e6cfc55
              name: 'Device [{#NAME}]:[{#ID}]: Previous antimalware protection scan'
              type: DEPENDENT
              key: 'acronis.cpc.device.protection.scan.prev[{#NAME}]'
              units: unixtime
              description: 'Previous antimalware protection scan for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.security.antimalware_protection")].last_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
            - uuid: e0a94793d31c4cf08f64c0d230134870
              name: 'Device [{#NAME}]:[{#ID}]: Protection status'
              type: DEPENDENT
              key: 'acronis.cpc.device.protection.status[{#NAME}]'
              value_type: CHAR
              description: 'Protection status for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.aggregate.status
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse protection status'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
              trigger_prototypes:
                - uuid: 0c38a47343cb4df4bda534982f344c15
                  expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.protection.status[{#NAME}])="error"'
                  name: 'Acronis: Device [{#NAME}]:[{#ID}]: Protection status "error"'
                  opdata: 'Current status: {ITEM.LASTVALUE}'
                  priority: AVERAGE
                  description: 'Device has "error" protection status.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
                - uuid: 3338e8c43c2149819e0a48156d6ec21a
                  expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.protection.status[{#NAME}])="warning"'
                  name: 'Acronis: Device [{#NAME}]:[{#ID}]: Protection status "warning"'
                  opdata: 'Current status: {ITEM.LASTVALUE}'
                  priority: WARNING
                  description: 'Device has "warning" protection status.'
                  manual_close: 'YES'
                  dependencies:
                    - name: 'Acronis: Device [{#NAME}]:[{#ID}]: Protection status "error"'
                      expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.protection.status[{#NAME}])="error"'
                  tags:
                    - tag: scope
                      value: notice
            - uuid: 20d93972ca2f47af96aed7ee9aa642af
              name: 'Device [{#NAME}]:[{#ID}]: Raw data resources status'
              type: HTTP_AGENT
              key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              history: '0'
              value_type: TEXT
              description: 'Gets statuses for device resources.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.items[0]'
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse resource status data'
              timeout: 15s
              url: '{$ACRONIS.CPC.DATACENTER.URL}{$ACRONIS.CPC.PATH.RESOURCE.MANAGEMENT}/resource_statuses'
              query_fields:
                - name: resource_id
                  value: '{#ID}'
                - name: include_attributes
                  value: 'true'
              status_codes: ''
              http_proxy: '{$ACRONIS.CPC.HTTP.PROXY}'
              headers:
                - name: Accept
                  value: application/json
                - name: Authorization
                  value: 'Bearer {$ACRONIS.CPC.ACCESS_TOKEN}'
                - name: X-Application-Secret
                  value: 5619386d-de56-49ec-8508-f5c399d3b9bd
              tags:
                - tag: component
                  value: raw
            - uuid: e6905aa1998a41cfa0e6fda699558ceb
              name: 'Device [{#NAME}]:[{#ID}]: Next vulnerability assessment'
              type: DEPENDENT
              key: 'acronis.cpc.device.vuln.next[{#NAME}]'
              units: unixtime
              description: 'Next scheduled vulnerability assessment for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.security.vulnerability_assessment")].next_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
              trigger_prototypes:
                - uuid: b71001b751594fc5b4b9b38673133171
                  expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.vuln.next[{#NAME}]) < (now() + {$ACRONIS.CPC.OFFSET.SCHEDULED.VULNERABILITY})'
                  name: 'Acronis: Device [{#NAME}]:[{#ID}]: Scheduled vulnerability assessment failed to run'
                  opdata: 'Scheduled: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'Scheduled vulnerability assessment failed to run.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
            - uuid: 36fb3f57c4ae4f5cad01913a453869dc
              name: 'Device [{#NAME}]:[{#ID}]: Previous successful vulnerability assessment'
              type: DEPENDENT
              key: 'acronis.cpc.device.vuln.prev.ok[{#NAME}]'
              units: unixtime
              description: 'Previous successful vulnerability assessment for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.security.vulnerability_assessment")].last_success_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
            - uuid: 9a45c38169c848fd92b8e6a782ad065b
              name: 'Device [{#NAME}]:[{#ID}]: Previous vulnerability assessment'
              type: DEPENDENT
              key: 'acronis.cpc.device.vuln.prev[{#NAME}]'
              units: unixtime
              description: 'Previous vulnerability assessment for device.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.policies.[?(@.type == "policy.security.vulnerability_assessment")].last_run.first()'
                  error_handler: DISCARD_VALUE
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.floor(Date.parse(value) / 1000);'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'acronis.cpc.device.res.status.raw[{#NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: device
                - tag: resource
                  value: '{#NAME}'
                - tag: tenant
                  value: '{#TENANT_NAME}'
          trigger_prototypes:
            - uuid: f0a9c94a81ef4018a76b73cb98780f1f
              expression: 'max(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.backup.prev.ok[{#NAME}],1m)<>max(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.backup.prev[{#NAME}],1m)'
              name: 'Acronis: Device [{#NAME}]:[{#ID}]: Previous machine backup run not successful'
              opdata: 'Last scan: {ITEM.LASTVALUE2}, Last OK scan: {ITEM.LASTVALUE1}'
              priority: AVERAGE
              description: 'Previous machine backup did not run successfully.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
            - uuid: 5ce3f0bc18cd40878059b48ba436fa6d
              expression: 'max(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.patch.prev.ok[{#NAME}],1m)<>max(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.patch.prev[{#NAME}],1m)'
              name: 'Acronis: Device [{#NAME}]:[{#ID}]: Previous patch management run not successful'
              opdata: 'Last scan: {ITEM.LASTVALUE2}, Last OK scan: {ITEM.LASTVALUE1}'
              priority: AVERAGE
              description: 'Previous patch management run did not run successfully.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
            - uuid: b0341da543c34c9491863a6fb8caea0c
              expression: 'last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.protection.scan.prev.ok[{#NAME}])<>last(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.protection.scan.prev[{#NAME}])'
              name: 'Acronis: Device [{#NAME}]:[{#ID}]: Previous protection scan not successful'
              opdata: 'Last scan: {ITEM.LASTVALUE2}, Last OK scan: {ITEM.LASTVALUE1}'
              priority: AVERAGE
              description: 'Device has "error" protection status.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
            - uuid: 3c0f47531c1a435eb93d01107a6e0b3d
              expression: 'max(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.vuln.prev.ok[{#NAME}],1m)<>max(/Acronis Cyber Protect Cloud MSP by HTTP/acronis.cpc.device.vuln.prev[{#NAME}],1m)'
              name: 'Acronis: Device [{#NAME}]:[{#ID}]: Previous vulnerability assessment not successful'
              opdata: 'Last scan: {ITEM.LASTVALUE2}, Last OK scan: {ITEM.LASTVALUE1}'
              priority: AVERAGE
              description: 'Previous vulnerability assessment did not run successfully.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
          graph_prototypes:
            - uuid: feba1571ed4a47d5a5bbbb16153983b0
              name: 'Device [{#NAME}]:[{#ID}]: CyberFit score'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'Acronis Cyber Protect Cloud MSP by HTTP'
                    key: 'acronis.cpc.device.cyberfit[{#NAME}]'
          master_item:
            key: acronis.cpc.devices.get
          lld_macro_paths:
            - lld_macro: '{#ID}'
              path: $.id
            - lld_macro: '{#NAME}'
              path: $.name
            - lld_macro: '{#TENANT_NAME}'
              path: $.tenant_name
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
      tags:
        - tag: class
          value: software
        - tag: subclass
          value: ai
        - tag: subclass
          value: backup
        - tag: subclass
          value: security
        - tag: target
          value: acronis
        - tag: target
          value: cyber-protect-cloud
      macros:
        - macro: '{$ACRONIS.CPC.ACCESS_TOKEN}'
          type: SECRET_TEXT
          description: 'API access token.'
          config:
            type: TEXT
            priority: '21'
            label: 'API access token'
            required: 'YES'
        - macro: '{$ACRONIS.CPC.ALERT.DISCOVERY.CATEGORY.MATCHES}'
          value: '.*'
          description: 'Sets the alert category regex filter to use in alert discovery for including.'
          config:
            type: TEXT
            priority: '10'
            section_name: Filters
            label: 'Alert category include filter'
            description: 'Sets the alert category regex filter to use in alert discovery for including.'
        - macro: '{$ACRONIS.CPC.ALERT.DISCOVERY.CATEGORY.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the alert category regex filter to use in alert discovery for excluding.'
          config:
            type: TEXT
            priority: '11'
            section_name: Filters
            label: 'Alert category exclude filter'
            description: 'Sets the alert category regex filter to use in alert discovery for excluding.'
        - macro: '{$ACRONIS.CPC.ALERT.DISCOVERY.RESOURCE.MATCHES}'
          value: '.*'
          description: 'Sets the alert resource name regex filter to use in alert discovery for including.'
          config:
            type: TEXT
            priority: '14'
            section_name: Filters
            label: 'Alert resource name include filter'
            description: 'Sets the alert resource name regex filter to use in alert discovery for including.'
        - macro: '{$ACRONIS.CPC.ALERT.DISCOVERY.RESOURCE.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the alert resource name regex filter to use in alert discovery for excluding.'
          config:
            type: TEXT
            priority: '15'
            section_name: Filters
            label: 'Alert resource name exclude filter'
            description: 'Sets the alert resource name regex filter to use in alert discovery for excluding.'
        - macro: '{$ACRONIS.CPC.ALERT.DISCOVERY.SEVERITY.MATCHES}'
          value: '.*'
          description: 'Sets the alert severity regex filter to use in alert discovery for including.'
          config:
            type: TEXT
            priority: '12'
            section_name: Filters
            label: 'Alert severity include filter'
            description: 'Sets the alert severity regex filter to use in alert discovery for including.'
        - macro: '{$ACRONIS.CPC.ALERT.DISCOVERY.SEVERITY.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the alert severity regex filter to use in alert discovery for excluding.'
          config:
            type: TEXT
            priority: '13'
            section_name: Filters
            label: 'Alert severity exclude filter'
            description: 'Sets the alert severity regex filter to use in alert discovery for excluding.'
        - macro: '{$ACRONIS.CPC.CUSTOMER.DISCOVERY.KIND.MATCHES}'
          value: customer
          description: 'Sets the customer name regex filter to use in customer discovery for including.'
          config:
            type: TEXT
            priority: '16'
            section_name: Filters
            label: 'Customer kind include filter'
            description: 'Sets the customer name regex filter to use in customer discovery for including.'
        - macro: '{$ACRONIS.CPC.CUSTOMER.DISCOVERY.NAME.MATCHES}'
          value: '.*'
          description: 'Sets the customer name regex filter to use in customer discovery for including.'
          config:
            type: TEXT
            priority: '17'
            section_name: Filters
            label: 'Customer name include filter'
            description: 'Sets the customer name regex filter to use in customer discovery for including.'
        - macro: '{$ACRONIS.CPC.CUSTOMER.DISCOVERY.NAME.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the customer name regex filter to use in customer discovery for excluding.'
          config:
            type: TEXT
            priority: '18'
            section_name: Filters
            label: 'Customer name exclude filter'
            description: 'Sets the customer name regex filter to use in customer discovery for excluding.'
        - macro: '{$ACRONIS.CPC.CYBERFIT.HIGH}'
          value: '579'
          description: 'CyberFit score threshold for "high" severity trigger.'
          config:
            type: TEXT
            priority: '4'
            section_name: Thresholds
            label: 'CyberFit high threshold'
            description: 'CyberFit score threshold for "high" severity trigger.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ACRONIS.CPC.CYBERFIT.WARN}'
          value: '669'
          description: 'CyberFit score threshold for "warning" severity trigger.'
          config:
            type: TEXT
            priority: '3'
            section_name: Thresholds
            label: 'CyberFit warning threshold'
            description: 'CyberFit score threshold for "warning" severity trigger.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ACRONIS.CPC.DATACENTER.URL}'
          description: 'Acronis Cyber Protect Cloud datacenter URL, e.g., https://eu2-cloud.acronis.com.'
          config:
            type: TEXT
            priority: '1'
            label: 'Datacenter URL'
            description: 'Acronis Cyber Protect Cloud datacenter URL, e.g., https://eu2-cloud.acronis.com.'
            required: 'YES'
        - macro: '{$ACRONIS.CPC.DEVICE.DISCOVERY.TENANT.MATCHES}'
          value: '.*'
          description: 'Sets the tenant name regex filter to use in device discovery for including.'
          config:
            type: TEXT
            priority: '19'
            section_name: Filters
            label: 'Tenant name include filter'
            description: 'Sets the tenant name regex filter to use in device discovery for including.'
        - macro: '{$ACRONIS.CPC.DEVICE.DISCOVERY.TENANT.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the tenant name regex filter to use in device discovery for excluding.'
          config:
            type: TEXT
            priority: '20'
            section_name: Filters
            label: 'Tenant name exclude filter'
            description: 'Sets the tenant name regex filter to use in device discovery for excluding.'
        - macro: '{$ACRONIS.CPC.DEVICE.RESOURCE.TYPE}'
          value: resource.machine
          description: 'Comma separated list of resource types for devices retrieval.'
          config:
            type: TEXT
            priority: '9'
            section_name: Other
            label: 'Device resource types'
            description: 'Comma separated list of resource types for devices retrieval.'
        - macro: '{$ACRONIS.CPC.HTTP.PROXY}'
          description: 'Sets the HTTP proxy for the authorization item. Host prototypes will also use this value for HTTP proxy. If this parameter is empty, then no proxy is used.'
          config:
            type: TEXT
            priority: '2'
            section_name: Other
            label: 'HTTP proxy'
            description: 'Sets the HTTP proxy for the authorization item. Host prototypes will also use this value for HTTP proxy. If this parameter is empty, then no proxy is used.'
        - macro: '{$ACRONIS.CPC.MSP.TENANT.UUID}'
          description: 'UUID for MSP.'
          config:
            type: TEXT
            priority: '26'
            label: 'MSP UUID'
        - macro: '{$ACRONIS.CPC.OFFSET.SCHEDULED.ANTIMALWARE}'
          value: '-180'
          description: 'Offset time in seconds for scheduled antimalware scan trigger check.'
          config:
            type: TEXT
            priority: '5'
            section_name: Thresholds
            label: 'Antimalware scan offset (sec)'
            description: 'Offset time in seconds for scheduled antimalware scan trigger check.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ACRONIS.CPC.OFFSET.SCHEDULED.BACKUP}'
          value: '-180'
          description: 'Offset time in seconds for scheduled backup run trigger check.'
          config:
            type: TEXT
            priority: '6'
            section_name: Thresholds
            label: 'Backup run offset (sec)'
            description: 'Offset time in seconds for scheduled backup run trigger check.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ACRONIS.CPC.OFFSET.SCHEDULED.PATCH}'
          value: '-180'
          description: 'Offset time in seconds for scheduled patch management run trigger check.'
          config:
            type: TEXT
            priority: '8'
            section_name: Thresholds
            label: 'Patch management offset (sec)'
            description: 'Offset time in seconds for scheduled patch management run trigger check.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ACRONIS.CPC.OFFSET.SCHEDULED.VULNERABILITY}'
          value: '-180'
          description: 'Offset time in seconds for scheduled vulnerability assessment run trigger check.'
          config:
            type: TEXT
            priority: '7'
            section_name: Thresholds
            label: 'Vulnerability assessment offset (sec)'
            description: 'Offset time in seconds for scheduled vulnerability assessment run trigger check.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ACRONIS.CPC.PATH.ACCOUNT.MANAGEMENT}'
          value: /api/2
          description: 'Sub-path for the Account Management API.'
          config:
            type: TEXT
            priority: '22'
            label: 'Account Management API path'
            description: 'Sub-path for the Account Management API.'
        - macro: '{$ACRONIS.CPC.PATH.AGENTS}'
          value: /api/agent_manager/v2
          description: 'Sub-path for the Agents API.'
          config:
            type: TEXT
            priority: '25'
            label: 'Agents API path'
            description: 'Sub-path for the Agents API.'
        - macro: '{$ACRONIS.CPC.PATH.ALERTS}'
          value: /api/alert_manager/v1
          description: 'Sub-path for the Alerts API.'
          config:
            type: TEXT
            priority: '24'
            label: 'Alerts API path'
            description: 'Sub-path for the Alerts API.'
        - macro: '{$ACRONIS.CPC.PATH.RESOURCE.MANAGEMENT}'
          value: /api/resource_management/v4
          description: 'Sub-path for the Resource Management API.'
          config:
            type: TEXT
            priority: '23'
            label: 'Resource Management API path'
            description: 'Sub-path for the Resource Management API.'
      dashboards:
        - uuid: 711853342bbe4a5b8d145fc96644d1e5
          name: 'Acronis Cyber Protect Cloud Overview'
          pages:
            - widgets:
                - type: item
                  width: '9'
                  height: '3'
                  hide_header: 'YES'
                  fields:
                    - type: STRING
                      name: bg_color
                      value: 1EA7FD
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: STRING
                      name: description
                      value: '"Information" severity alert count'
                    - type: INTEGER
                      name: desc_size
                      value: '8'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Acronis Cyber Protect Cloud MSP by HTTP'
                        key: acronis.cpc.alerts.severity.info
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '1'
                - type: item
                  'y': '3'
                  width: '9'
                  height: '3'
                  hide_header: 'YES'
                  fields:
                    - type: STRING
                      name: bg_color
                      value: 66BF3C
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: STRING
                      name: description
                      value: '"OK" severity alert count'
                    - type: INTEGER
                      name: desc_size
                      value: '8'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Acronis Cyber Protect Cloud MSP by HTTP'
                        key: acronis.cpc.alerts.severity.ok
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '1'
                - type: item
                  'y': '6'
                  width: '9'
                  height: '3'
                  hide_header: 'YES'
                  fields:
                    - type: STRING
                      name: bg_color
                      value: E69D00
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: STRING
                      name: description
                      value: '"Warning" severity alert count'
                    - type: INTEGER
                      name: desc_size
                      value: '8'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Acronis Cyber Protect Cloud MSP by HTTP'
                        key: acronis.cpc.alerts.severity.warn
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '1'
                - type: item
                  'y': '9'
                  width: '9'
                  height: '3'
                  hide_header: 'YES'
                  fields:
                    - type: STRING
                      name: bg_color
                      value: FF4400
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: STRING
                      name: description
                      value: '"Error" severity alert count'
                    - type: INTEGER
                      name: desc_size
                      value: '8'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Acronis Cyber Protect Cloud MSP by HTTP'
                        key: acronis.cpc.alerts.severity.err
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '1'
                - type: item
                  'y': '12'
                  width: '9'
                  height: '3'
                  hide_header: 'YES'
                  fields:
                    - type: STRING
                      name: bg_color
                      value: E23636
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: STRING
                      name: description
                      value: '"Critical" severity alert count'
                    - type: INTEGER
                      name: desc_size
                      value: '8'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Acronis Cyber Protect Cloud MSP by HTTP'
                        key: acronis.cpc.alerts.severity.crit
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '1'
                - type: graph
                  x: '9'
                  width: '12'
                  height: '6'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'Acronis Cyber Protect Cloud MSP by HTTP'
                        name: 'Acronis CPC: Alerts overview'
                    - type: STRING
                      name: reference
                      value: AAAAA
                - type: graphprototype
                  x: '9'
                  'y': '6'
                  width: '36'
                  height: '9'
                  fields:
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Acronis Cyber Protect Cloud MSP by HTTP'
                        name: 'Device [{#NAME}]:[{#ID}]: CyberFit score'
                    - type: STRING
                      name: reference
                      value: AAAAC
                    - type: INTEGER
                      name: rows
                      value: '2'
                - type: graphprototype
                  x: '21'
                  width: '24'
                  height: '6'
                  fields:
                    - type: ITEM_PROTOTYPE
                      name: itemid.0
                      value:
                        host: 'Acronis Cyber Protect Cloud MSP by HTTP'
                        key: 'acronis.cpc.customer.status[{#NAME}]'
                    - type: STRING
                      name: reference
                      value: AAAAB
                    - type: INTEGER
                      name: source_type
                      value: '3'
                - type: graphprototype
                  x: '45'
                  width: '27'
                  height: '7'
                  fields:
                    - type: ITEM_PROTOTYPE
                      name: itemid.0
                      value:
                        host: 'Acronis Cyber Protect Cloud MSP by HTTP'
                        key: 'acronis.cpc.device.agent.enabled[{#NAME}]'
                    - type: STRING
                      name: reference
                      value: AAAAD
                    - type: INTEGER
                      name: source_type
                      value: '3'
                - type: graphprototype
                  x: '45'
                  'y': '7'
                  width: '27'
                  height: '8'
                  fields:
                    - type: ITEM_PROTOTYPE
                      name: itemid.0
                      value:
                        host: 'Acronis Cyber Protect Cloud MSP by HTTP'
                        key: 'acronis.cpc.device.agent.online[{#NAME}]'
                    - type: STRING
                      name: reference
                      value: AAAAE
                    - type: INTEGER
                      name: source_type
                      value: '3'
      valuemaps:
        - uuid: 0c425866d0ce4412a54b66f215df4cde
          name: 'Alert severity'
          mappings:
            - value: '0'
              newvalue: OK
            - value: '1'
              newvalue: Warning
            - value: '2'
              newvalue: Error
            - value: '3'
              newvalue: Critical
            - value: '4'
              newvalue: Information
            - value: '10'
              newvalue: Unknown
        - uuid: 4a5652b3706a45faa2b86ae652425692
          name: 'CyberFit score'
          mappings:
            - value: '-1'
              newvalue: Unavailable
        - uuid: df45c606a7ef4f49a3101ad135eef1bc
          name: 'True false'
          mappings:
            - value: '0'
              newvalue: 'False'
            - value: '1'
              newvalue: 'True'
    - uuid: 53044571fb864d87af32473e08c76d0b
      template: 'Alcatel Timetra TiMOS by SNMP'
      name: 'Alcatel Timetra TiMOS by SNMP'
      description: |
        Template Net Alcatel Timetra TiMOS
        
        MIBs used:
        EtherLike-MIB
        TIMETRA-SYSTEM-MIB
        HOST-RESOURCES-MIB
        SNMPv2-MIB
        TIMETRA-CHASSIS-MIB
        IF-MIB
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        Template Net Alcatel Timetra TiMOS
        
            MIBs used:
            EtherLike-MIB
            TIMETRA-SYSTEM-MIB
            HOST-RESOURCES-MIB
            SNMPv2-MIB
            TIMETRA-CHASSIS-MIB
            IF-MIB
      vendor:
        name: Zabbix
        version: 8.0-2
      groups:
        - name: 'Templates/Network devices'
      items:
        - uuid: 832b1a2e21904591bc42d5cda9f3df14
          name: 'ICMP ping'
          type: SIMPLE
          key: icmpping
          description: |
            The host accessibility by ICMP ping.
            
            0 - ICMP ping fails;
            1 - ICMP ping successful.
          valuemap:
            name: 'Service state'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 72f8bcb4dfde4d338c31c83b72a36129
              expression: 'max(/Alcatel Timetra TiMOS by SNMP/icmpping,#3)=0'
              name: 'Alcatel TiMOS: Unavailable by ICMP ping'
              priority: HIGH
              description: 'Last three attempts returned timeout. Please check device connectivity.'
              tags:
                - tag: scope
                  value: availability
        - uuid: 959946f1885c4e7fbde7ab7200c60858
          name: 'ICMP loss'
          type: SIMPLE
          key: icmppingloss
          value_type: FLOAT
          units: '%'
          description: 'The percentage of lost packets.'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 0c0a32b98df84c07acbe51caabc8c012
              expression: 'min(/Alcatel Timetra TiMOS by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Alcatel Timetra TiMOS by SNMP/icmppingloss,5m)<100'
              name: 'Alcatel TiMOS: High ICMP ping loss'
              opdata: 'Loss: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'ICMP packets loss detected.'
              dependencies:
                - name: 'Alcatel TiMOS: Unavailable by ICMP ping'
                  expression: 'max(/Alcatel Timetra TiMOS by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: 7f858a8bc36746be89b2e36608cbb643
          name: 'ICMP response time'
          type: SIMPLE
          key: icmppingsec
          value_type: FLOAT
          units: s
          description: 'The ICMP ping response time (in seconds).'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 06fd317938784236b3e17b2b4080925d
              expression: 'avg(/Alcatel Timetra TiMOS by SNMP/icmppingsec,5m)>{$ICMP_RESPONSE_TIME_WARN}'
              name: 'Alcatel TiMOS: High ICMP ping response time'
              opdata: 'Value: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'Average ICMP response time is too high.'
              dependencies:
                - name: 'Alcatel TiMOS: High ICMP ping loss'
                  expression: 'min(/Alcatel Timetra TiMOS by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Alcatel Timetra TiMOS by SNMP/icmppingloss,5m)<100'
                - name: 'Alcatel TiMOS: Unavailable by ICMP ping'
                  expression: 'max(/Alcatel Timetra TiMOS by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: 8f5bdb3fde9142a9892db396c040f8dd
          name: 'SNMP traps (fallback)'
          type: SNMP_TRAP
          key: snmptrap.fallback
          value_type: LOG
          description: 'The item is used to collect all SNMP traps unmatched by other snmptrap items'
          logtimefmt: 'hh:mm:sszyyyy/MM/dd'
          tags:
            - tag: component
              value: network
        - uuid: 0471357a58ff437e835e02175d6e6ca1
          name: 'System contact details'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.4.0]'
          key: 'system.contact[sysContact.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string.
          inventory_link: CONTACT
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: e28cb751b37e42d29be9f0295bd030b6
          name: 'CPU utilization'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.6527.3.1.2.1.1.1.0]'
          key: 'system.cpu.util[sgiCpuUsage.0]'
          value_type: FLOAT
          units: '%'
          description: |
            MIB: TIMETRA-SYSTEM-MIB
            The value of sgiCpuUsage indicates the current CPU utilization for the system.
          tags:
            - tag: component
              value: cpu
          triggers:
            - uuid: 4167b064eb19478da13531f629082ef1
              expression: 'min(/Alcatel Timetra TiMOS by SNMP/system.cpu.util[sgiCpuUsage.0],5m)>{$CPU.UTIL.CRIT}'
              name: 'Alcatel TiMOS: High CPU utilization'
              event_name: 'Alcatel TiMOS: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
              opdata: 'Current utilization: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'The CPU utilization is too high. The system might be slow to respond.'
              tags:
                - tag: scope
                  value: performance
        - uuid: 757c85110dc34eb88265832aba8e7fbf
          name: 'System description'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: 'system.descr[sysDescr.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            A textual description of the entity. This value should
            include the full name and version identification of the system's hardware type, software operating-system, and
            networking software.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 2183a57a2c904632bf813c15610765f7
          name: 'Hardware model name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: system.hw.model
          delay: 1h
          value_type: CHAR
          description: 'MIB: SNMPv2-MIB'
          inventory_link: MODEL
          preprocessing:
            - type: REGEX
              parameters:
                - '^(\w|-|\.|/)+ (\w|-|\.|/)+ (.+) Copyright'
                - \3
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
        - uuid: 3ea3106277c64428950b4a5b6c4aedd0
          name: 'Uptime (hardware)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.25.1.1.0]'
          key: 'system.hw.uptime[hrSystemUptime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: HOST-RESOURCES-MIB
            The amount of time since this host was last initialized. Note that this is different from sysUpTime in the SNMPv2-MIB [RFC1907] because sysUpTime is the uptime of the network management portion of the system.
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
              error_handler: CUSTOM_VALUE
              error_handler_params: '0'
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: 597b68e7ddb8482280122de489424041
          name: 'System location'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.6.0]'
          key: 'system.location[sysLocation.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            Physical location of the node (e.g., `equipment room`, `3rd floor`). If not provided, the value is a zero-length string.
          inventory_link: LOCATION
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 0b1d37d4950d40c79433f47dea9677d4
          name: 'System name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.5.0]'
          key: system.name
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            An administratively-assigned name for this managed node.By convention, this is the node's fully-qualified domain name. If the name is unknown, the value is the zero-length string.
          inventory_link: NAME
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 5f11cacfd4a94cf696897b3f3fa80601
              expression: 'last(/Alcatel Timetra TiMOS by SNMP/system.name,#1)<>last(/Alcatel Timetra TiMOS by SNMP/system.name,#2) and length(last(/Alcatel Timetra TiMOS by SNMP/system.name))>0'
              name: 'Alcatel TiMOS: System name has changed'
              event_name: 'Alcatel TiMOS: System name has changed (new name: {ITEM.VALUE})'
              priority: INFO
              description: 'The name of the system has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
                - tag: scope
                  value: security
        - uuid: e80e3dfbf1a447be87f1b6853c66555b
          name: 'Uptime (network)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.3.0]'
          key: 'system.net.uptime[sysUpTime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: SNMPv2-MIB
            Time (in hundredths of a second) since the network management portion of the system was last re-initialized.
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: f0df5a577f5c46689578302df065a3d6
          name: 'System object ID'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.2.0]'
          key: 'system.objectid[sysObjectID.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determining`what kind of box' is being managed.  For example, if vendor`Flintstones, Inc.' was assigned the subtree1.3.6.1.4.1.4242, it could assign the identifier 1.3.6.1.4.1.4242.1.1 to its `Fred Router'.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 9f1c8827a9ef4948808bac9d76add9a8
          name: 'Operating system'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: 'system.sw.os[sysDescr.0]'
          delay: 1h
          value_type: CHAR
          description: 'MIB: SNMPv2-MIB'
          inventory_link: OS
          preprocessing:
            - type: REGEX
              parameters:
                - ^((\w|-|\.|/)+)
                - \1
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: os
          triggers:
            - uuid: dd5dc3541a3d402c98a60b25d9e48dd6
              expression: 'last(/Alcatel Timetra TiMOS by SNMP/system.sw.os[sysDescr.0],#1)<>last(/Alcatel Timetra TiMOS by SNMP/system.sw.os[sysDescr.0],#2) and length(last(/Alcatel Timetra TiMOS by SNMP/system.sw.os[sysDescr.0]))>0'
              name: 'Alcatel TiMOS: Operating system description has changed'
              priority: INFO
              description: 'The description of the operating system has changed. Possible reasons are that the system has been updated or replaced. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              dependencies:
                - name: 'Alcatel TiMOS: System name has changed'
                  expression: 'last(/Alcatel Timetra TiMOS by SNMP/system.name,#1)<>last(/Alcatel Timetra TiMOS by SNMP/system.name,#2) and length(last(/Alcatel Timetra TiMOS by SNMP/system.name))>0'
              tags:
                - tag: scope
                  value: notice
        - uuid: 3f2769066a184d29afd26047039b633c
          name: 'Available memory'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.6527.3.1.2.1.1.10.0]'
          key: 'vm.memory.available[sgiKbMemoryAvailable.0]'
          units: B
          description: |
            MIB: TIMETRA-SYSTEM-MIB
            The value of sgiKbMemoryAvailable indicates the amount of free memory, in kilobytes, in the overall system that is not allocated to memory pools, but is available in case a memory pool needs to grow.
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '1024'
          tags:
            - tag: component
              value: memory
        - uuid: 9005685cea194d7c9702f19040df7b80
          name: 'Total memory'
          type: CALCULATED
          key: 'vm.memory.total[snmp]'
          units: B
          params: 'last(//vm.memory.available[sgiKbMemoryAvailable.0])+last(//vm.memory.used[sgiKbMemoryUsed.0])'
          description: 'The total memory expressed in bytes.'
          tags:
            - tag: component
              value: memory
        - uuid: f5cd1ed0f61f464f86a97485f833d832
          name: 'Used memory'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.6527.3.1.2.1.1.9.0]'
          key: 'vm.memory.used[sgiKbMemoryUsed.0]'
          units: B
          description: |
            MIB: TIMETRA-SYSTEM-MIB
            The value of sgiKbMemoryUsed indicates the total pre-allocated pool memory, in kilobytes, currently in use on the system.
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '1024'
          tags:
            - tag: component
              value: memory
        - uuid: f223ac289a99469e8861219f4254dea6
          name: 'Memory utilization'
          type: CALCULATED
          key: 'vm.memory.util[vm.memory.util.0]'
          value_type: FLOAT
          units: '%'
          params: 'last(//vm.memory.used[sgiKbMemoryUsed.0])/(last(//vm.memory.available[sgiKbMemoryAvailable.0])+last(//vm.memory.used[sgiKbMemoryUsed.0]))*100'
          description: 'Memory utilization in %.'
          tags:
            - tag: component
              value: memory
          triggers:
            - uuid: a22f13e245b944e991c2c9850a731a3c
              expression: 'min(/Alcatel Timetra TiMOS by SNMP/vm.memory.util[vm.memory.util.0],5m)>{$MEMORY.UTIL.MAX}'
              name: 'Alcatel TiMOS: High memory utilization'
              event_name: 'Alcatel TiMOS: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
              priority: AVERAGE
              description: 'The system is running out of free memory.'
              tags:
                - tag: scope
                  value: capacity
                - tag: scope
                  value: performance
        - uuid: cbcc156906774a109dd3d0cf09c512e9
          name: 'SNMP agent availability'
          type: INTERNAL
          key: 'zabbix[host,snmp,available]'
          description: |
            Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list.
            Possible values:
            0 - not available
            1 - available
            2 - unknown
          valuemap:
            name: zabbix.host.available
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 60187191b268499784a70ef1dfe058ae
              expression: 'max(/Alcatel Timetra TiMOS by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
              name: 'Alcatel TiMOS: No SNMP data collection'
              opdata: 'Current state: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'SNMP is not available for polling. Please check device connectivity and SNMP settings.'
              dependencies:
                - name: 'Alcatel TiMOS: Unavailable by ICMP ping'
                  expression: 'max(/Alcatel Timetra TiMOS by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
      discovery_rules:
        - uuid: fe7fa4ab68b8430c86a3adf6ba2fd048
          name: 'Entity Serial Numbers Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#ENT_NAME},1.3.6.1.4.1.6527.3.1.2.2.1.8.1.8,{#ENT_CLASS},1.3.6.1.4.1.6527.3.1.2.2.1.8.1.7,{#ENT_SN},1.3.6.1.4.1.6527.3.1.2.2.1.8.1.5]'
          key: entity_sn.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#ENT_SN}'
                value: .+
          item_prototypes:
            - uuid: ec087163f366430fbd688390bce17980
              name: '{#ENT_NAME}: Hardware serial number'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6527.3.1.2.2.1.8.1.5.{#SNMPINDEX}]'
              key: 'system.hw.serialnumber[tmnxHwSerialNumber.{#SNMPINDEX}]'
              delay: 1h
              value_type: CHAR
              description: 'MIB: TIMETRA-CHASSIS-MIB'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: system
              trigger_prototypes:
                - uuid: ccdcfdbe1a6243949857c764aed9c9ea
                  expression: 'last(/Alcatel Timetra TiMOS by SNMP/system.hw.serialnumber[tmnxHwSerialNumber.{#SNMPINDEX}],#1)<>last(/Alcatel Timetra TiMOS by SNMP/system.hw.serialnumber[tmnxHwSerialNumber.{#SNMPINDEX}],#2) and length(last(/Alcatel Timetra TiMOS by SNMP/system.hw.serialnumber[tmnxHwSerialNumber.{#SNMPINDEX}]))>0'
                  name: 'Alcatel TiMOS: {#ENT_NAME}: Device has been replaced'
                  event_name: 'Alcatel TiMOS: {#ENT_NAME}: Device has been replaced (new serial number received)'
                  priority: INFO
                  description: 'Device serial number has changed. Acknowledge to close the problem manually.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
        - uuid: 0fa1180b594e401a83927f6c20809a86
          name: 'FAN Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.6527.3.1.2.2.1.4.1.2]'
          key: fan.discovery
          delay: 1h
          filter:
            conditions:
              - macro: '{#SNMPVALUE}'
                value: '[^1]'
          item_prototypes:
            - uuid: be9fb466b33f4d078b6aae15123bc7d6
              name: '#{#SNMPINDEX}: Fan status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6527.3.1.2.2.1.4.1.2.{#SNMPINDEX}]'
              key: 'sensor.fan.status[tmnxChassisFanOperStatus.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: TIMETRA-SYSTEM-MIB
                Current status of the Fan tray.
              valuemap:
                name: 'TIMETRA-CHASSIS-MIB::TmnxDeviceState'
              tags:
                - tag: component
                  value: fan
              trigger_prototypes:
                - uuid: 10f9f5cd2f1b4d09abba3ae48b482eb8
                  expression: 'count(/Alcatel Timetra TiMOS by SNMP/sensor.fan.status[tmnxChassisFanOperStatus.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS}")=1'
                  name: 'Alcatel TiMOS: #{#SNMPINDEX}: Fan is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the fan unit'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
        - uuid: 0caa510db5f54ee5a57c9a40c9d20140
          name: 'Network interfaces discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFADMINSTATUS},1.3.6.1.2.1.2.2.1.7,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2,{#IFTYPE},1.3.6.1.2.1.2.2.1.3]'
          key: net.if.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.MATCHES}'
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.MATCHES}'
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.MATCHES}'
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.MATCHES}'
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.MATCHES}'
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.MATCHES}'
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovering interfaces from IF-MIB.'
          item_prototypes:
            - uuid: cc997c10a3a94fb183bc793367d8da43
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.13.{#SNMPINDEX}]'
              key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of inbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: ddabc629599f43f494b67225ccaef4cd
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.14.{#SNMPINDEX}]'
              key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of inbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: cc041e8f15eb48c098871bfa91c9edef
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits received'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}]'
              key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets received on the interface, including framing characters. This object is a 64-bit version of ifInOctets. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: abdd315e75154954a8d8323a35d42029
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of outbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 91b4d7e0133049049efa24835e00b061
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.20.{#SNMPINDEX}]'
              key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of outbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of outbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: be432b00cdc044c0a1190e31aecc2b2c
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}]'
              key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets transmitted out of the interface, including framing characters. This object is a 64-bit version of ifOutOctets.Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 67971f7787444822b9ee370a3cc2d3ec
              name: 'Interface {#IFNAME}({#IFALIAS}): Speed'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}]'
              key: 'net.if.speed[ifHighSpeed.{#SNMPINDEX}]'
              delay: 5m
              trends: '0'
              units: bps
              description: |
                MIB: IF-MIB
                An estimate of the interface's current bandwidth in units of 1,000,000 bits per second. If this object reports a value of `n' then the speed of the interface is somewhere in the range of `n-500,000' to`n+499,999'.  For interfaces which do not vary in bandwidth or for those where no accurate estimation can be made, this object should contain the nominal bandwidth. For a sub-layer which has no concept of bandwidth, this object should be zero.
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1000000'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 92ac574cd0354d9fa886cfcf0f2f048d
              name: 'Interface {#IFNAME}({#IFALIAS}): Operational status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}]'
              key: 'net.if.status[ifOperStatus.{#SNMPINDEX}]'
              trends: '0'
              description: |
                MIB: IF-MIB
                The current operational state of the interface.
                - The testing(3) state indicates that no operational packet scan be passed
                - If ifAdminStatus is down(2) then ifOperStatus should be down(2)
                - If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic
                - It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection)
                - It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state
                - It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components.
              valuemap:
                name: 'IF-MIB::ifOperStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: a4bcc6d80080415698d8fd323ff5d484
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
                  name: 'Alcatel TiMOS: Interface {#IFNAME}({#IFALIAS}): Link down'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: |
                    This trigger expression works as follows:
                    1. It can be triggered if the operations status is down.
                    2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine the context macro to "0", marking this interface as not important. No new trigger will be fired if this interface is down.
                    3. `{TEMPLATE_NAME:METRIC.diff()}=1` - the trigger fires only if the operational status was up to (1) sometime before (so, does not fire for "eternal off" interfaces.)
                    
                    WARNING: if closed manually - it will not fire again on the next poll, because of .diff.
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 201dd2baef0647f58fbcec0205cce318
              name: 'Interface {#IFNAME}({#IFALIAS}): Interface type'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.3.{#SNMPINDEX}]'
              key: 'net.if.type[ifType.{#SNMPINDEX}]'
              delay: 1h
              trends: '0'
              description: |
                MIB: IF-MIB
                The type of interface.
                Additional values for ifType are assigned by the Internet Assigned Numbers Authority (IANA),
                through updating the syntax of the IANAifType textual convention.
              valuemap:
                name: 'IF-MIB::ifType'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
          trigger_prototypes:
            - uuid: a9467162f7434b8e97cb6645b6a060ae
              expression: |
                change(/Alcatel Timetra TiMOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])<0 and last(/Alcatel Timetra TiMOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
                and (
                last(/Alcatel Timetra TiMOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=6 or
                last(/Alcatel Timetra TiMOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=7 or
                last(/Alcatel Timetra TiMOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=11 or
                last(/Alcatel Timetra TiMOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=62 or
                last(/Alcatel Timetra TiMOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=69 or
                last(/Alcatel Timetra TiMOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=117
                )
                and
                (last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2)
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                (change(/Alcatel Timetra TiMOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 and last(/Alcatel Timetra TiMOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}],#2)>0) or
                (last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2)
              name: 'Alcatel TiMOS: Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before'
              opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
              priority: INFO
              description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              dependencies:
                - name: 'Alcatel TiMOS: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: 27e0b7fcaf664410962dc768e0ef7267
              expression: |
                (avg(/Alcatel Timetra TiMOS by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Alcatel Timetra TiMOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) or
                avg(/Alcatel Timetra TiMOS by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Alcatel Timetra TiMOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])) and
                last(/Alcatel Timetra TiMOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                avg(/Alcatel Timetra TiMOS by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Alcatel Timetra TiMOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) and
                avg(/Alcatel Timetra TiMOS by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Alcatel Timetra TiMOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])
              name: 'Alcatel TiMOS: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage'
              event_name: 'Alcatel TiMOS: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
              opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'The utilization of the network interface is close to its estimated maximum bandwidth.'
              manual_close: 'YES'
              dependencies:
                - name: 'Alcatel TiMOS: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: ee8dccabf5df45b48a503320131b152e
              expression: |
                min(/Alcatel Timetra TiMOS by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
                or min(/Alcatel Timetra TiMOS by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                max(/Alcatel Timetra TiMOS by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
                and max(/Alcatel Timetra TiMOS by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
              name: 'Alcatel TiMOS: Interface {#IFNAME}({#IFALIAS}): High error rate'
              event_name: 'Alcatel TiMOS: Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
              opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'It recovers when it is below 80% of the `{$IF.ERRORS.WARN:"{#IFNAME}"}` threshold.'
              manual_close: 'YES'
              dependencies:
                - name: 'Alcatel TiMOS: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Alcatel Timetra TiMOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
          graph_prototypes:
            - uuid: 58eba6a5a57f49608fb62b9d270e98c6
              name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Alcatel Timetra TiMOS by SNMP'
                    key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
                - sortorder: '1'
                  drawtype: BOLD_LINE
                  color: F63100
                  item:
                    host: 'Alcatel Timetra TiMOS by SNMP'
                    key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
                - sortorder: '2'
                  color: 00611C
                  yaxisside: RIGHT
                  item:
                    host: 'Alcatel Timetra TiMOS by SNMP'
                    key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
                - sortorder: '3'
                  color: F7941D
                  yaxisside: RIGHT
                  item:
                    host: 'Alcatel Timetra TiMOS by SNMP'
                    key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
                - sortorder: '4'
                  color: FC6EA3
                  yaxisside: RIGHT
                  item:
                    host: 'Alcatel Timetra TiMOS by SNMP'
                    key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
                - sortorder: '5'
                  color: 6C59DC
                  yaxisside: RIGHT
                  item:
                    host: 'Alcatel Timetra TiMOS by SNMP'
                    key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
        - uuid: 078d4ad71e014260aa173288492e7f5d
          name: 'EtherLike-MIB Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.2.1.10.7.2.1.19,{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2]'
          key: net.if.duplex.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFOPERSTATUS}'
                value: '1'
              - macro: '{#SNMPVALUE}'
                value: (2|3)
          description: 'Discovering interfaces from IF-MIB and EtherLike-MIB. Interfaces with up(1) Operational Status are discovered.'
          item_prototypes:
            - uuid: f4d62611a75244c29766118b8856d976
              name: 'Interface {#IFNAME}({#IFALIAS}): Duplex status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.10.7.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}]'
              description: |
                MIB: EtherLike-MIB
                The current mode of operation of the MAC
                entity.  'unknown' indicates that the current
                duplex mode could not be determined.
                
                Management control of the duplex mode is
                accomplished through the MAU MIB.  When
                an interface does not support autonegotiation,
                or when autonegotiation is not enabled, the
                duplex mode is controlled using
                ifMauDefaultType.  When autonegotiation is
                supported and enabled, duplex mode is controlled
                using ifMauAutoNegAdvertisedBits.  In either
                case, the currently operating duplex mode is
                reflected both in this object and in ifMauType.
                
                Note that this object provides redundant
                information with ifMauType.  Normally, redundant
                objects are discouraged.  However, in this
                instance, it allows a management application to
                determine the duplex status of an interface
                without having to know every possible value of
                ifMauType.  This was felt to be sufficiently
                valuable to justify the redundancy.
                Reference: [IEEE 802.3 Std.], 30.3.1.1.32,aDuplexStatus.
              valuemap:
                name: 'EtherLike-MIB::dot3StatsDuplexStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: e5d6ba20229044b98ee8cb33e00de8b0
                  expression: 'last(/Alcatel Timetra TiMOS by SNMP/net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}])=2'
                  name: 'Alcatel TiMOS: Interface {#IFNAME}({#IFALIAS}): In half-duplex mode'
                  priority: WARNING
                  description: 'Please check autonegotiation settings and cabling.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: performance
          preprocessing:
            - type: JAVASCRIPT
              parameters:
                - |
                  try {
                  	var data = JSON.parse(value);
                  }
                  catch (error) {
                  	throw 'Failed to parse JSON of EtherLike-MIB discovery.';
                  }
                  var fields = ['{#SNMPVALUE}','{#IFOPERSTATUS}','{#IFALIAS}','{#IFNAME}','{#IFDESCR}'];
                  data.forEach(function (element) {
                  	fields.forEach(function (field) {
                  		element[field] = element[field] || '';
                  	});
                  });
                  return JSON.stringify(data);
        - uuid: f99bcd2eff1349f08ae23f6f9dbd6cfb
          name: 'PSU Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.6527.3.1.2.2.1.5.1.6]'
          key: psu.discovery
          delay: 1h
          item_prototypes:
            - uuid: a52d5ce3437f4f1ca633cc541028ccc7
              name: '#{#SNMPINDEX}: Power supply status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6527.3.1.2.2.1.5.1.6.{#SNMPINDEX}]'
              key: 'sensor.psu.status[tmnxChassisPowerSupply1Status.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: TIMETRA-SYSTEM-MIB
                The overall status of an equipped power supply.
                For AC multiple power supplies, this represents the overall status of the first power supply in the tray (or shelf).
                For any other type, this represents the overall status of the power supply.
                If tmnxChassisPowerSupply1Status is'deviceStateOk', then all monitored statuses are 'deviceStateOk'.
                A value of 'deviceStateFailed' represents a condition where at least one monitored status is in a failed state.
              valuemap:
                name: 'TIMETRA-CHASSIS-MIB::TmnxDeviceState'
              tags:
                - tag: component
                  value: power
              trigger_prototypes:
                - uuid: afbc2020a9f74d6abe52469ac663e057
                  expression: 'count(/Alcatel Timetra TiMOS by SNMP/sensor.psu.status[tmnxChassisPowerSupply1Status.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS}")=1'
                  name: 'Alcatel TiMOS: #{#SNMPINDEX}: Power supply is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the power supply unit for errors'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
            - uuid: b73b01d720c7431085657548d620f76e
              name: '#{#SNMPINDEX}: Power supply status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6527.3.1.2.2.1.5.1.7.{#SNMPINDEX}]'
              key: 'sensor.psu.status[tmnxChassisPowerSupply2Status.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: TIMETRA-SYSTEM-MIB
                The overall status of an equipped power supply.
                For AC multiple power supplies, this represents the overall status of the second power supply in the tray (or shelf).
                For any other type, this field is unused and set to 'deviceNotEquipped'.
                If tmnxChassisPowerSupply2Status is 'deviceStateOk', then all monitored statuses are 'deviceStateOk'.
                A value of 'deviceStateFailed' represents a condition where at least one monitored status is in a failed state.
              valuemap:
                name: 'TIMETRA-CHASSIS-MIB::TmnxDeviceState'
              tags:
                - tag: component
                  value: power
              trigger_prototypes:
                - uuid: fcbc0ef8f55146daaed6be4ccbd324e7
                  expression: 'count(/Alcatel Timetra TiMOS by SNMP/sensor.psu.status[tmnxChassisPowerSupply2Status.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS}")=1'
                  name: 'Alcatel TiMOS: #{#SNMPINDEX}: Power supply is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the power supply unit for errors'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
        - uuid: 6382c9595cb446778d23bb273143b27c
          name: 'Temperature Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.6527.3.1.2.2.1.8.1.8,{#TEMP_SENSOR},1.3.6.1.4.1.6527.3.1.2.2.1.8.1.17]'
          key: temperature.discovery
          delay: 1h
          filter:
            conditions:
              - macro: '{#TEMP_SENSOR}'
                value: '1'
          item_prototypes:
            - uuid: c6a233ce51d44b63963f2345f709e6b3
              name: '{#SNMPVALUE}: Temperature'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6527.3.1.2.2.1.8.1.18.{#SNMPINDEX}]'
              key: 'sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}]'
              delay: 3m
              value_type: FLOAT
              units: °C
              description: |
                MIB: TIMETRA-SYSTEM-MIB
                The current temperature reading in degrees celsius from this hardware component's temperature sensor.  If this component does not contain a temperature sensor, then the value -1 is returned.
              tags:
                - tag: component
                  value: temperature
              trigger_prototypes:
                - uuid: 8f478386378349e7a4e4586c5ba74c78
                  expression: 'avg(/Alcatel Timetra TiMOS by SNMP/sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/Alcatel Timetra TiMOS by SNMP/sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
                  name: 'Alcatel TiMOS: {#SNMPVALUE}: Temperature is above critical threshold'
                  event_name: 'Alcatel TiMOS: {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: HIGH
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: 90ba726922f74d1d971b3f07781fc035
                  expression: 'avg(/Alcatel Timetra TiMOS by SNMP/sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}],5m)>{$TEMP_WARN:"{#SNMPVALUE}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/Alcatel Timetra TiMOS by SNMP/sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}],5m)<{$TEMP_WARN:"{#SNMPVALUE}"}-3'
                  name: 'Alcatel TiMOS: {#SNMPVALUE}: Temperature is above warning threshold'
                  event_name: 'Alcatel TiMOS: {#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:"{#SNMPVALUE}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  dependencies:
                    - name: 'Alcatel TiMOS: {#SNMPVALUE}: Temperature is above critical threshold'
                      expression: 'avg(/Alcatel Timetra TiMOS by SNMP/sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}'
                      recovery_expression: 'max(/Alcatel Timetra TiMOS by SNMP/sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: 6035fc6733614ae1b4ed22c7d73466b0
                  expression: 'avg(/Alcatel Timetra TiMOS by SNMP/sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'min(/Alcatel Timetra TiMOS by SNMP/sensor.temp.value[tmnxHwTemperature.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}+3'
                  name: 'Alcatel TiMOS: {#SNMPVALUE}: Temperature is too low'
                  event_name: 'Alcatel TiMOS: {#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
      tags:
        - tag: class
          value: network
        - tag: target
          value: alcatel
        - tag: target
          value: alcatel-timetra
      macros:
        - macro: '{$CPU.UTIL.CRIT}'
          value: '90'
          config:
            type: TEXT
            priority: '7'
            section_name: Thresholds
            label: 'Threshold for CPU utilization (critical)'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$FAN_CRIT_STATUS}'
          value: '4'
          config:
            type: TEXT
            priority: '5'
            section_name: Thresholds
            label: 'Fan critical status'
        - macro: '{$ICMP_LOSS_WARN}'
          value: '20'
          description: 'Warning threshold of ICMP packet loss in %.'
          config:
            type: TEXT
            priority: '9'
            section_name: Thresholds
            label: 'Threshold of ICMP packet loss'
            description: 'Warning threshold of ICMP packet loss in %. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_RESPONSE_TIME_WARN}'
          value: '0.15'
          description: 'Warning threshold of the average ICMP response time in seconds.'
          config:
            type: TEXT
            priority: '10'
            section_name: Thresholds
            label: 'Threshold of the average ICMP response'
            description: 'Warning threshold of the average ICMP response time in seconds. No less than 0.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.ERRORS.WARN}'
          value: '2'
          description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
          config:
            type: TEXT
            priority: '11'
            section_name: Thresholds
            label: 'Threshold of error packet rate'
            description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '12'
            section_name: Thresholds
            label: 'The threshold in the interface utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IFCONTROL}'
          value: '1'
          config:
            type: TEXT
            priority: '13'
            section_name: Thresholds
            label: 'Interfaces control'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$MEMORY.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '6'
            section_name: Thresholds
            label: 'Threshold for memory utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$NET.IF.IFADMINSTATUS.MATCHES}'
          value: '^.*'
          config:
            type: TEXT
            priority: '18'
            section_name: Filters
            label: 'Filter for network interface by adminstatus'
        - macro: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
          value: ^2$
          description: 'Ignore down(2) administrative status'
          config:
            type: TEXT
            priority: '19'
            section_name: Filters
            label: 'Filter for network interface by adminstatus (exclude)'
        - macro: '{$NET.IF.IFALIAS.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '22'
            section_name: Filters
            label: 'Filter for network interfaces by alias'
        - macro: '{$NET.IF.IFALIAS.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '23'
            section_name: Filters
            label: 'Filter for network interfaces by alias (exclude)'
        - macro: '{$NET.IF.IFDESCR.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '20'
            section_name: Filters
            label: 'Filter for network interfaces by description'
        - macro: '{$NET.IF.IFDESCR.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '21'
            section_name: Filters
            label: 'Filter for network interfaces by description (exclude)'
        - macro: '{$NET.IF.IFNAME.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '14'
            section_name: Filters
            label: 'Filter for network interface by name'
        - macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
          value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9a-z]+$|docker[0-9]+|br-[a-z0-9]{12})'
          description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
          config:
            type: TEXT
            priority: '15'
            section_name: Filters
            label: 'Filter for network interface by name (exclude)'
            description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
        - macro: '{$NET.IF.IFOPERSTATUS.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '16'
            section_name: Filters
            label: 'Filter for network interface by status'
        - macro: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
          value: ^6$
          description: 'Ignore notPresent(6)'
          config:
            type: TEXT
            priority: '17'
            section_name: Filters
            label: 'Filter for network interface by status (exclude)'
        - macro: '{$NET.IF.IFTYPE.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '24'
            section_name: Filters
            label: 'Filter for network interfaces by type'
        - macro: '{$NET.IF.IFTYPE.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '25'
            section_name: Filters
            label: 'Filter for network interfaces by type (exclude)'
        - macro: '{$PSU_CRIT_STATUS}'
          value: '4'
          config:
            type: TEXT
            priority: '4'
            section_name: Thresholds
            label: 'Power supply critical status'
        - macro: '{$SNMP.TIMEOUT}'
          value: 5m
          description: 'Time interval for the SNMP availability trigger.'
          config:
            type: TEXT
            priority: '8'
            section_name: Other
            label: 'Time interval'
            description: 'Time interval for the SNMP availability trigger.'
        - macro: '{$TEMP_CRIT}'
          value: '75'
          config:
            type: TEXT
            priority: '2'
            section_name: Thresholds
            label: 'Threshold for temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_CRIT_LOW}'
          value: '5'
          config:
            type: TEXT
            priority: '1'
            section_name: Thresholds
            label: 'Threshold for low temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_WARN}'
          value: '65'
          config:
            type: TEXT
            priority: '3'
            section_name: Thresholds
            label: 'Threshold for temperature (warning)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
      dashboards:
        - uuid: 2a5bbc386c5a4b04a0494455a6c9e1a7
          name: 'Alcatel Timetra TiMOS: General'
          pages:
            - name: 'Alcatel Timetra TiMOS: General'
              widgets:
                - type: graph
                  name: 'memory utilization'
                  width: '36'
                  height: '5'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'Alcatel Timetra TiMOS by SNMP'
                        name: 'Alcatel Timetra TiMOS: Memory utilization'
                    - type: STRING
                      name: reference
                      value: AAAAA
                - type: graph
                  name: 'cpu utilization'
                  'y': '5'
                  width: '36'
                  height: '5'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'Alcatel Timetra TiMOS by SNMP'
                        name: 'Alcatel Timetra TiMOS: CPU utilization'
                    - type: STRING
                      name: reference
                      value: AAAAC
                - type: graph
                  name: 'memory usage'
                  x: '36'
                  width: '36'
                  height: '5'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'Alcatel Timetra TiMOS by SNMP'
                        name: 'Alcatel Timetra TiMOS: Memory usage'
                    - type: STRING
                      name: reference
                      value: AAAAB
      valuemaps:
        - uuid: b31f48e2216f441daa0b05561ac2ab6a
          name: 'EtherLike-MIB::dot3StatsDuplexStatus'
          mappings:
            - value: '1'
              newvalue: unknown
            - value: '2'
              newvalue: halfDuplex
            - value: '3'
              newvalue: fullDuplex
        - uuid: 0a25bc3fe4dd40f8a08962befa8416d1
          name: 'IF-MIB::ifOperStatus'
          mappings:
            - value: '1'
              newvalue: up
            - value: '2'
              newvalue: down
            - value: '4'
              newvalue: unknown
            - value: '5'
              newvalue: dormant
            - value: '6'
              newvalue: notPresent
            - value: '7'
              newvalue: lowerLayerDown
        - uuid: ce3031283a6d458489747bfbf3696ab6
          name: 'IF-MIB::ifType'
          mappings:
            - value: '1'
              newvalue: other
            - value: '2'
              newvalue: regular1822
            - value: '3'
              newvalue: hdh1822
            - value: '4'
              newvalue: ddnX25
            - value: '5'
              newvalue: rfc877x25
            - value: '6'
              newvalue: ethernetCsmacd
            - value: '7'
              newvalue: iso88023Csmacd
            - value: '8'
              newvalue: iso88024TokenBus
            - value: '9'
              newvalue: iso88025TokenRing
            - value: '10'
              newvalue: iso88026Man
            - value: '11'
              newvalue: starLan
            - value: '12'
              newvalue: proteon10Mbit
            - value: '13'
              newvalue: proteon80Mbit
            - value: '14'
              newvalue: hyperchannel
            - value: '15'
              newvalue: fddi
            - value: '16'
              newvalue: lapb
            - value: '17'
              newvalue: sdlc
            - value: '18'
              newvalue: ds1
            - value: '19'
              newvalue: e1
            - value: '20'
              newvalue: basicISDN
            - value: '21'
              newvalue: primaryISDN
            - value: '22'
              newvalue: propPointToPointSerial
            - value: '23'
              newvalue: ppp
            - value: '24'
              newvalue: softwareLoopback
            - value: '25'
              newvalue: eon
            - value: '26'
              newvalue: ethernet3Mbit
            - value: '27'
              newvalue: nsip
            - value: '28'
              newvalue: slip
            - value: '29'
              newvalue: ultra
            - value: '30'
              newvalue: ds3
            - value: '31'
              newvalue: sip
            - value: '32'
              newvalue: frameRelay
            - value: '33'
              newvalue: rs232
            - value: '34'
              newvalue: para
            - value: '35'
              newvalue: arcnet
            - value: '36'
              newvalue: arcnetPlus
            - value: '37'
              newvalue: atm
            - value: '38'
              newvalue: miox25
            - value: '39'
              newvalue: sonet
            - value: '40'
              newvalue: x25ple
            - value: '41'
              newvalue: iso88022llc
            - value: '42'
              newvalue: localTalk
            - value: '43'
              newvalue: smdsDxi
            - value: '44'
              newvalue: frameRelayService
            - value: '45'
              newvalue: v35
            - value: '46'
              newvalue: hssi
            - value: '47'
              newvalue: hippi
            - value: '48'
              newvalue: modem
            - value: '49'
              newvalue: aal5
            - value: '50'
              newvalue: sonetPath
            - value: '51'
              newvalue: sonetVT
            - value: '52'
              newvalue: smdsIcip
            - value: '53'
              newvalue: propVirtual
            - value: '54'
              newvalue: propMultiplexor
            - value: '55'
              newvalue: ieee80212
            - value: '56'
              newvalue: fibreChannel
            - value: '57'
              newvalue: hippiInterface
            - value: '58'
              newvalue: frameRelayInterconnect
            - value: '59'
              newvalue: aflane8023
            - value: '60'
              newvalue: aflane8025
            - value: '61'
              newvalue: cctEmul
            - value: '62'
              newvalue: fastEther
            - value: '63'
              newvalue: isdn
            - value: '64'
              newvalue: v11
            - value: '65'
              newvalue: v36
            - value: '66'
              newvalue: g703at64k
            - value: '67'
              newvalue: g703at2mb
            - value: '68'
              newvalue: qllc
            - value: '69'
              newvalue: fastEtherFX
            - value: '70'
              newvalue: channel
            - value: '71'
              newvalue: ieee80211
            - value: '72'
              newvalue: ibm370parChan
            - value: '73'
              newvalue: escon
            - value: '74'
              newvalue: dlsw
            - value: '75'
              newvalue: isdns
            - value: '76'
              newvalue: isdnu
            - value: '77'
              newvalue: lapd
            - value: '78'
              newvalue: ipSwitch
            - value: '79'
              newvalue: rsrb
            - value: '80'
              newvalue: atmLogical
            - value: '81'
              newvalue: ds0
            - value: '82'
              newvalue: ds0Bundle
            - value: '83'
              newvalue: bsc
            - value: '84'
              newvalue: async
            - value: '85'
              newvalue: cnr
            - value: '86'
              newvalue: iso88025Dtr
            - value: '87'
              newvalue: eplrs
            - value: '88'
              newvalue: arap
            - value: '89'
              newvalue: propCnls
            - value: '90'
              newvalue: hostPad
            - value: '91'
              newvalue: termPad
            - value: '92'
              newvalue: frameRelayMPI
            - value: '93'
              newvalue: x213
            - value: '94'
              newvalue: adsl
            - value: '95'
              newvalue: radsl
            - value: '96'
              newvalue: sdsl
            - value: '97'
              newvalue: vdsl
            - value: '98'
              newvalue: iso88025CRFPInt
            - value: '99'
              newvalue: myrinet
            - value: '100'
              newvalue: voiceEM
            - value: '101'
              newvalue: voiceFXO
            - value: '102'
              newvalue: voiceFXS
            - value: '103'
              newvalue: voiceEncap
            - value: '104'
              newvalue: voiceOverIp
            - value: '105'
              newvalue: atmDxi
            - value: '106'
              newvalue: atmFuni
            - value: '107'
              newvalue: atmIma
            - value: '108'
              newvalue: pppMultilinkBundle
            - value: '109'
              newvalue: ipOverCdlc
            - value: '110'
              newvalue: ipOverClaw
            - value: '111'
              newvalue: stackToStack
            - value: '112'
              newvalue: virtualIpAddress
            - value: '113'
              newvalue: mpc
            - value: '114'
              newvalue: ipOverAtm
            - value: '115'
              newvalue: iso88025Fiber
            - value: '116'
              newvalue: tdlc
            - value: '117'
              newvalue: gigabitEthernet
            - value: '118'
              newvalue: hdlc
            - value: '119'
              newvalue: lapf
            - value: '120'
              newvalue: v37
            - value: '121'
              newvalue: x25mlp
            - value: '122'
              newvalue: x25huntGroup
            - value: '123'
              newvalue: trasnpHdlc
            - value: '124'
              newvalue: interleave
            - value: '125'
              newvalue: fast
            - value: '126'
              newvalue: ip
            - value: '127'
              newvalue: docsCableMaclayer
            - value: '128'
              newvalue: docsCableDownstream
            - value: '129'
              newvalue: docsCableUpstream
            - value: '130'
              newvalue: a12MppSwitch
            - value: '131'
              newvalue: tunnel
            - value: '132'
              newvalue: coffee
            - value: '133'
              newvalue: ces
            - value: '134'
              newvalue: atmSubInterface
            - value: '135'
              newvalue: l2vlan
            - value: '136'
              newvalue: l3ipvlan
            - value: '137'
              newvalue: l3ipxvlan
            - value: '138'
              newvalue: digitalPowerline
            - value: '139'
              newvalue: mediaMailOverIp
            - value: '140'
              newvalue: dtm
            - value: '141'
              newvalue: dcn
            - value: '142'
              newvalue: ipForward
            - value: '143'
              newvalue: msdsl
            - value: '144'
              newvalue: ieee1394
            - value: '145'
              newvalue: if-gsn
            - value: '146'
              newvalue: dvbRccMacLayer
            - value: '147'
              newvalue: dvbRccDownstream
            - value: '148'
              newvalue: dvbRccUpstream
            - value: '149'
              newvalue: atmVirtual
            - value: '150'
              newvalue: mplsTunnel
            - value: '151'
              newvalue: srp
            - value: '152'
              newvalue: voiceOverAtm
            - value: '153'
              newvalue: voiceOverFrameRelay
            - value: '154'
              newvalue: idsl
            - value: '155'
              newvalue: compositeLink
            - value: '156'
              newvalue: ss7SigLink
            - value: '157'
              newvalue: propWirelessP2P
            - value: '158'
              newvalue: frForward
            - value: '159'
              newvalue: rfc1483
            - value: '160'
              newvalue: usb
            - value: '161'
              newvalue: ieee8023adLag
            - value: '162'
              newvalue: bgppolicyaccounting
            - value: '163'
              newvalue: frf16MfrBundle
            - value: '164'
              newvalue: h323Gatekeeper
            - value: '165'
              newvalue: h323Proxy
            - value: '166'
              newvalue: mpls
            - value: '167'
              newvalue: mfSigLink
            - value: '168'
              newvalue: hdsl2
            - value: '169'
              newvalue: shdsl
            - value: '170'
              newvalue: ds1FDL
            - value: '171'
              newvalue: pos
            - value: '172'
              newvalue: dvbAsiIn
            - value: '173'
              newvalue: dvbAsiOut
            - value: '174'
              newvalue: plc
            - value: '175'
              newvalue: nfas
            - value: '176'
              newvalue: tr008
            - value: '177'
              newvalue: gr303RDT
            - value: '178'
              newvalue: gr303IDT
            - value: '179'
              newvalue: isup
            - value: '180'
              newvalue: propDocsWirelessMaclayer
            - value: '181'
              newvalue: propDocsWirelessDownstream
            - value: '182'
              newvalue: propDocsWirelessUpstream
            - value: '183'
              newvalue: hiperlan2
            - value: '184'
              newvalue: propBWAp2Mp
            - value: '185'
              newvalue: sonetOverheadChannel
            - value: '186'
              newvalue: digitalWrapperOverheadChannel
            - value: '187'
              newvalue: aal2
            - value: '188'
              newvalue: radioMAC
            - value: '189'
              newvalue: atmRadio
            - value: '190'
              newvalue: imt
            - value: '191'
              newvalue: mvl
            - value: '192'
              newvalue: reachDSL
            - value: '193'
              newvalue: frDlciEndPt
            - value: '194'
              newvalue: atmVciEndPt
            - value: '195'
              newvalue: opticalChannel
            - value: '196'
              newvalue: opticalTransport
            - value: '197'
              newvalue: propAtm
            - value: '198'
              newvalue: voiceOverCable
            - value: '199'
              newvalue: infiniband
            - value: '200'
              newvalue: teLink
            - value: '201'
              newvalue: q2931
            - value: '202'
              newvalue: virtualTg
            - value: '203'
              newvalue: sipTg
            - value: '204'
              newvalue: sipSig
            - value: '205'
              newvalue: docsCableUpstreamChannel
            - value: '206'
              newvalue: econet
            - value: '207'
              newvalue: pon155
            - value: '208'
              newvalue: pon622
            - value: '209'
              newvalue: bridge
            - value: '210'
              newvalue: linegroup
            - value: '211'
              newvalue: voiceEMFGD
            - value: '212'
              newvalue: voiceFGDEANA
            - value: '213'
              newvalue: voiceDID
            - value: '214'
              newvalue: mpegTransport
            - value: '215'
              newvalue: sixToFour
            - value: '216'
              newvalue: gtp
            - value: '217'
              newvalue: pdnEtherLoop1
            - value: '218'
              newvalue: pdnEtherLoop2
            - value: '219'
              newvalue: opticalChannelGroup
            - value: '220'
              newvalue: homepna
            - value: '221'
              newvalue: gfp
            - value: '222'
              newvalue: ciscoISLvlan
            - value: '223'
              newvalue: actelisMetaLOOP
            - value: '224'
              newvalue: fcipLink
            - value: '225'
              newvalue: rpr
            - value: '226'
              newvalue: qam
            - value: '227'
              newvalue: lmp
            - value: '228'
              newvalue: cblVectaStar
            - value: '229'
              newvalue: docsCableMCmtsDownstream
            - value: '230'
              newvalue: adsl2
            - value: '231'
              newvalue: macSecControlledIF
            - value: '232'
              newvalue: macSecUncontrolledIF
            - value: '233'
              newvalue: aviciOpticalEther
            - value: '234'
              newvalue: atmbond
            - value: '235'
              newvalue: voiceFGDOS
            - value: '236'
              newvalue: mocaVersion1
            - value: '237'
              newvalue: ieee80216WMAN
            - value: '238'
              newvalue: adsl2plus
            - value: '239'
              newvalue: dvbRcsMacLayer
            - value: '240'
              newvalue: dvbTdm
            - value: '241'
              newvalue: dvbRcsTdma
            - value: '242'
              newvalue: x86Laps
            - value: '243'
              newvalue: wwanPP
            - value: '244'
              newvalue: wwanPP2
            - value: '245'
              newvalue: voiceEBS
            - value: '246'
              newvalue: ifPwType
            - value: '247'
              newvalue: ilan
            - value: '248'
              newvalue: pip
            - value: '249'
              newvalue: aluELP
            - value: '250'
              newvalue: gpon
            - value: '251'
              newvalue: vdsl2
            - value: '252'
              newvalue: capwapDot11Profile
            - value: '253'
              newvalue: capwapDot11Bss
            - value: '254'
              newvalue: capwapWtpVirtualRadio
            - value: '255'
              newvalue: bits
            - value: '256'
              newvalue: docsCableUpstreamRfPort
            - value: '257'
              newvalue: cableDownstreamRfPort
            - value: '258'
              newvalue: vmwareVirtualNic
            - value: '259'
              newvalue: ieee802154
            - value: '260'
              newvalue: otnOdu
            - value: '261'
              newvalue: otnOtu
            - value: '262'
              newvalue: ifVfiType
            - value: '263'
              newvalue: g9981
            - value: '264'
              newvalue: g9982
            - value: '265'
              newvalue: g9983
            - value: '266'
              newvalue: aluEpon
            - value: '267'
              newvalue: aluEponOnu
            - value: '268'
              newvalue: aluEponPhysicalUni
            - value: '269'
              newvalue: aluEponLogicalLink
            - value: '270'
              newvalue: aluGponOnu
            - value: '271'
              newvalue: aluGponPhysicalUni
            - value: '272'
              newvalue: vmwareNicTeam
            - value: '277'
              newvalue: docsOfdmDownstream
            - value: '278'
              newvalue: docsOfdmaUpstream
            - value: '279'
              newvalue: gfast
            - value: '280'
              newvalue: sdci
            - value: '281'
              newvalue: xboxWireless
            - value: '282'
              newvalue: fastdsl
            - value: '283'
              newvalue: docsCableScte55d1FwdOob
            - value: '284'
              newvalue: docsCableScte55d1RetOob
            - value: '285'
              newvalue: docsCableScte55d2DsOob
            - value: '286'
              newvalue: docsCableScte55d2UsOob
            - value: '287'
              newvalue: docsCableNdf
            - value: '288'
              newvalue: docsCableNdr
            - value: '289'
              newvalue: ptm
            - value: '290'
              newvalue: ghn
        - uuid: 2d7b52f7709c460597a1ff44c1e39a1b
          name: 'Service state'
          mappings:
            - value: '0'
              newvalue: Down
            - value: '1'
              newvalue: Up
        - uuid: 95a194271a584008a81564fd80189c5a
          name: 'TIMETRA-CHASSIS-MIB::TmnxDeviceState'
          mappings:
            - value: '1'
              newvalue: deviceStateUnknown
            - value: '2'
              newvalue: deviceNotEquipped
            - value: '3'
              newvalue: deviceStateOk
            - value: '4'
              newvalue: deviceStateFailed
            - value: '5'
              newvalue: deviceStateOutOfService
        - uuid: 03dcc409833146f6a1678df8b1311c40
          name: zabbix.host.available
          mappings:
            - value: '0'
              newvalue: 'not available'
            - value: '1'
              newvalue: available
            - value: '2'
              newvalue: unknown
    - uuid: 6ecfb7083ddf45f183ab4be50cfba37a
      template: 'Brocade_Foundry Nonstackable by SNMP'
      name: 'Brocade_Foundry Nonstackable by SNMP'
      description: |
        Template Net Brocade Foundry Nonstackable
        
        MIBs used:
        FOUNDRY-SN-AGENT-MIB
        HOST-RESOURCES-MIB
        SNMPv2-MIB
        IF-MIB
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Overview
        
        For devices(old Foundry devices, MLXe and so on) that doesn't support Stackable SNMP Tables: snChasFan2Table, snChasPwrSupply2Table,snAgentTemp2Table -
        FOUNDRY-SN-AGENT-MIB::snChasFanTable, snChasPwrSupplyTable,snAgentTempTable are used instead.
        For example:
        The objects in table snChasPwrSupply2Table is not supported on the NetIron and the FastIron SX devices.
        snChasFan2Table is not supported on the NetIron devices.
        snAgentTemp2Table is not supported on old versions of MLXe.
      vendor:
        name: Zabbix
        version: 8.0-2
      groups:
        - name: 'Templates/Network devices'
      items:
        - uuid: b77f1a0ffd4c4b6d870eda4b573b4d13
          name: 'ICMP ping'
          type: SIMPLE
          key: icmpping
          description: |
            The host accessibility by ICMP ping.
            
            0 - ICMP ping fails;
            1 - ICMP ping successful.
          valuemap:
            name: 'Service state'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 3e93707bfbed4541a90548f64b2dfc18
              expression: 'max(/Brocade_Foundry Nonstackable by SNMP/icmpping,#3)=0'
              name: 'Brocade Nonstackable: Unavailable by ICMP ping'
              priority: HIGH
              description: 'Last three attempts returned timeout. Please check device connectivity.'
              tags:
                - tag: scope
                  value: availability
        - uuid: 6e20f516917f40bca4a53ed015e065d2
          name: 'ICMP loss'
          type: SIMPLE
          key: icmppingloss
          value_type: FLOAT
          units: '%'
          description: 'The percentage of lost packets.'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 3f3500c666bb47208115b6ca43fc8458
              expression: 'min(/Brocade_Foundry Nonstackable by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Brocade_Foundry Nonstackable by SNMP/icmppingloss,5m)<100'
              name: 'Brocade Nonstackable: High ICMP ping loss'
              opdata: 'Loss: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'ICMP packets loss detected.'
              dependencies:
                - name: 'Brocade Nonstackable: Unavailable by ICMP ping'
                  expression: 'max(/Brocade_Foundry Nonstackable by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: c2888004f9e84640a088f891f8b0703d
          name: 'ICMP response time'
          type: SIMPLE
          key: icmppingsec
          value_type: FLOAT
          units: s
          description: 'The ICMP ping response time (in seconds).'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: e1bcb2ad662f4e4fb0ff67f0f1fc39e5
              expression: 'avg(/Brocade_Foundry Nonstackable by SNMP/icmppingsec,5m)>{$ICMP_RESPONSE_TIME_WARN}'
              name: 'Brocade Nonstackable: High ICMP ping response time'
              opdata: 'Value: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'Average ICMP response time is too high.'
              dependencies:
                - name: 'Brocade Nonstackable: High ICMP ping loss'
                  expression: 'min(/Brocade_Foundry Nonstackable by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Brocade_Foundry Nonstackable by SNMP/icmppingloss,5m)<100'
                - name: 'Brocade Nonstackable: Unavailable by ICMP ping'
                  expression: 'max(/Brocade_Foundry Nonstackable by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: 2d0b064b0fd74361ac1c32cdea2c1123
          name: 'SNMP traps (fallback)'
          type: SNMP_TRAP
          key: snmptrap.fallback
          value_type: LOG
          description: 'The item is used to collect all SNMP traps unmatched by other snmptrap items'
          logtimefmt: 'hh:mm:sszyyyy/MM/dd'
          tags:
            - tag: component
              value: network
        - uuid: d0561cc5be67434088c1e591a577d7e3
          name: 'System contact details'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.4.0]'
          key: 'system.contact[sysContact.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string.
          inventory_link: CONTACT
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 2083ecbada4344b4b26dba0145694d7e
          name: 'CPU utilization'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.1991.1.1.2.1.52.0]'
          key: 'system.cpu.util[snAgGblCpuUtil1MinAvg.0]'
          value_type: FLOAT
          units: '%'
          description: |
            MIB: FOUNDRY-SN-AGENT-MIB
            The statistics collection of 1 minute CPU utilization.
          tags:
            - tag: component
              value: cpu
          triggers:
            - uuid: bf59d38703f44bcb9497dcbda684b071
              expression: 'min(/Brocade_Foundry Nonstackable by SNMP/system.cpu.util[snAgGblCpuUtil1MinAvg.0],5m)>{$CPU.UTIL.CRIT}'
              name: 'Brocade Nonstackable: High CPU utilization'
              event_name: 'Brocade Nonstackable: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
              opdata: 'Current utilization: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'The CPU utilization is too high. The system might be slow to respond.'
              tags:
                - tag: scope
                  value: performance
        - uuid: 9f49220f80c04e2e98ecf3ec5fa53c2e
          name: 'System description'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: 'system.descr[sysDescr.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            A textual description of the entity. This value should
            include the full name and version identification of the system's hardware type, software operating-system, and
            networking software.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 4f58884d810a416ea321dd622c876d06
          name: 'Firmware version'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.1991.1.1.2.1.11.0]'
          key: system.hw.firmware
          delay: 1h
          value_type: CHAR
          description: |
            MIB: FOUNDRY-SN-AGENT-MIB
            The version of the running software in the form'major.minor.maintenance[letters]'
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: fbe1f9d9286046bbb15fe89ec1dcc87d
              expression: 'last(/Brocade_Foundry Nonstackable by SNMP/system.hw.firmware,#1)<>last(/Brocade_Foundry Nonstackable by SNMP/system.hw.firmware,#2) and length(last(/Brocade_Foundry Nonstackable by SNMP/system.hw.firmware))>0'
              name: 'Brocade Nonstackable: Firmware has changed'
              opdata: 'Current value: {ITEM.LASTVALUE1}'
              priority: INFO
              description: 'Firmware version has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
        - uuid: 7d8b9dc153c4408c99a707a9b4d57647
          name: 'Hardware serial number'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.1991.1.1.1.1.2.0]'
          key: system.hw.serialnumber
          delay: 1h
          value_type: CHAR
          description: 'MIB: FOUNDRY-SN-AGENT-MIB'
          inventory_link: SERIALNO_A
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 2bb9d8927e464842a55b89be412adcc4
              expression: 'last(/Brocade_Foundry Nonstackable by SNMP/system.hw.serialnumber,#1)<>last(/Brocade_Foundry Nonstackable by SNMP/system.hw.serialnumber,#2) and length(last(/Brocade_Foundry Nonstackable by SNMP/system.hw.serialnumber))>0'
              name: 'Brocade Nonstackable: Device has been replaced'
              event_name: 'Brocade Nonstackable: Device has been replaced (new serial number received)'
              priority: INFO
              description: 'Device serial number has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
        - uuid: 78b57ca2787948cb8b92604f2a0fdccc
          name: 'Uptime (hardware)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.25.1.1.0]'
          key: 'system.hw.uptime[hrSystemUptime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: HOST-RESOURCES-MIB
            The amount of time since this host was last initialized. Note that this is different from sysUpTime in the SNMPv2-MIB [RFC1907] because sysUpTime is the uptime of the network management portion of the system.
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
              error_handler: CUSTOM_VALUE
              error_handler_params: '0'
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: 3accd01dca984406990051338ce3f269
          name: 'System location'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.6.0]'
          key: 'system.location[sysLocation.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            Physical location of the node (e.g., `equipment room`, `3rd floor`). If not provided, the value is a zero-length string.
          inventory_link: LOCATION
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 0d27ffcf928949188fbe1994b6b4dcbb
          name: 'System name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.5.0]'
          key: system.name
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            An administratively-assigned name for this managed node.By convention, this is the node's fully-qualified domain name. If the name is unknown, the value is the zero-length string.
          inventory_link: NAME
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: ee0c67c575cb4b01bc3733d719baac4f
              expression: 'last(/Brocade_Foundry Nonstackable by SNMP/system.name,#1)<>last(/Brocade_Foundry Nonstackable by SNMP/system.name,#2) and length(last(/Brocade_Foundry Nonstackable by SNMP/system.name))>0'
              name: 'Brocade Nonstackable: System name has changed'
              event_name: 'Brocade Nonstackable: System name has changed (new name: {ITEM.VALUE})'
              priority: INFO
              description: 'The name of the system has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
                - tag: scope
                  value: security
        - uuid: 3a534079085747b0916da05afdfafba0
          name: 'Uptime (network)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.3.0]'
          key: 'system.net.uptime[sysUpTime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: SNMPv2-MIB
            Time (in hundredths of a second) since the network management portion of the system was last re-initialized.
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: 702517f6c1024b3c8860a63c9cd57367
          name: 'System object ID'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.2.0]'
          key: 'system.objectid[sysObjectID.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determining`what kind of box' is being managed.  For example, if vendor`Flintstones, Inc.' was assigned the subtree1.3.6.1.4.1.4242, it could assign the identifier 1.3.6.1.4.1.4242.1.1 to its `Fred Router'.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 1e1b82a4271d4e159315e74547bea34e
          name: 'Memory utilization'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.1991.1.1.2.1.53.0]'
          key: 'vm.memory.util[snAgGblDynMemUtil.0]'
          value_type: FLOAT
          units: '%'
          description: |
            MIB: FOUNDRY-SN-AGENT-MIB
            The system dynamic memory utilization, in unit of percentage.
            Deprecated: Refer to snAgSystemDRAMUtil.
            For NI platforms, refer to snAgentBrdMemoryUtil100thPercent.
          tags:
            - tag: component
              value: memory
          triggers:
            - uuid: 07bba62d70fa4e7b81f82fc44036ce6e
              expression: 'min(/Brocade_Foundry Nonstackable by SNMP/vm.memory.util[snAgGblDynMemUtil.0],5m)>{$MEMORY.UTIL.MAX}'
              name: 'Brocade Nonstackable: High memory utilization'
              event_name: 'Brocade Nonstackable: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
              priority: AVERAGE
              description: 'The system is running out of free memory.'
              tags:
                - tag: scope
                  value: capacity
                - tag: scope
                  value: performance
        - uuid: b782df60263e4302b83f66e920ac217f
          name: 'SNMP agent availability'
          type: INTERNAL
          key: 'zabbix[host,snmp,available]'
          description: |
            Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list.
            Possible values:
            0 - not available
            1 - available
            2 - unknown
          valuemap:
            name: zabbix.host.available
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: fb3168f6539c4a55b5aab3efbcad117d
              expression: 'max(/Brocade_Foundry Nonstackable by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
              name: 'Brocade Nonstackable: No SNMP data collection'
              opdata: 'Current state: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'SNMP is not available for polling. Please check device connectivity and SNMP settings.'
              dependencies:
                - name: 'Brocade Nonstackable: Unavailable by ICMP ping'
                  expression: 'max(/Brocade_Foundry Nonstackable by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
      discovery_rules:
        - uuid: cb46b61100c8456098a85b1e48644146
          name: 'FAN Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#FAN_INDEX},1.3.6.1.4.1.1991.1.1.1.3.1.1.1]'
          key: fan.discovery
          delay: 1h
          description: 'snChasFanTable: A table of each fan information. Only installed fan appears in a table row.'
          item_prototypes:
            - uuid: 9edc2a34faa84e908b33259d495b5da1
              name: 'Fan {#FAN_INDEX}: Fan status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.1991.1.1.1.3.1.1.3.{#SNMPINDEX}]'
              key: 'sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: 'MIB: FOUNDRY-SN-AGENT-MIB'
              valuemap:
                name: 'FOUNDRY-SN-AGENT-MIB::snChasFanOperStatus'
              tags:
                - tag: component
                  value: fan
              trigger_prototypes:
                - uuid: dfb8d67a8b0c4128aff9d1643e40afc0
                  expression: 'count(/Brocade_Foundry Nonstackable by SNMP/sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS}")=1'
                  name: 'Brocade Nonstackable: Fan {#FAN_INDEX}: Fan is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the fan unit'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: 74ef51062e194213bbf61f747624313c
                  expression: 'count(/Brocade_Foundry Nonstackable by SNMP/sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}],#1,"ne","{$FAN_OK_STATUS}")=1'
                  name: 'Brocade Nonstackable: Fan {#FAN_INDEX}: Fan is not in normal state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: INFO
                  description: 'Please check the fan unit'
                  dependencies:
                    - name: 'Brocade Nonstackable: Fan {#FAN_INDEX}: Fan is in critical state'
                      expression: 'count(/Brocade_Foundry Nonstackable by SNMP/sensor.fan.status[snChasFanOperStatus.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS}")=1'
                  tags:
                    - tag: scope
                      value: notice
        - uuid: 1b7d06dba8fb4869812e95417c05ec25
          name: 'Network interfaces discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFADMINSTATUS},1.3.6.1.2.1.2.2.1.7,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2,{#IFTYPE},1.3.6.1.2.1.2.2.1.3]'
          key: net.if.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.MATCHES}'
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.MATCHES}'
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.MATCHES}'
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.MATCHES}'
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.MATCHES}'
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.MATCHES}'
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovering interfaces from IF-MIB.'
          item_prototypes:
            - uuid: c01ebcc6ef2a4af3bc1a541a8e7ea348
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.13.{#SNMPINDEX}]'
              key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of inbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: de91b80675624e889349e90fef603e9f
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.14.{#SNMPINDEX}]'
              key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of inbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 2b169ba2d5a44d85ae78b32261cd6852
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits received'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}]'
              key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets received on the interface, including framing characters. This object is a 64-bit version of ifInOctets. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: eb286f99f6f1495bbff1f888dfdbfad6
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of outbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 1e16a6f28fe3455b9c37c8d842102ace
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.20.{#SNMPINDEX}]'
              key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of outbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of outbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 24fb27f79bfc4cde8081ffe55cf945c5
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}]'
              key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets transmitted out of the interface, including framing characters. This object is a 64-bit version of ifOutOctets.Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 2cff6fcf8aaa486aa0b7d26d71a928f1
              name: 'Interface {#IFNAME}({#IFALIAS}): Speed'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}]'
              key: 'net.if.speed[ifHighSpeed.{#SNMPINDEX}]'
              delay: 5m
              trends: '0'
              units: bps
              description: |
                MIB: IF-MIB
                An estimate of the interface's current bandwidth in units of 1,000,000 bits per second. If this object reports a value of `n' then the speed of the interface is somewhere in the range of `n-500,000' to`n+499,999'.  For interfaces which do not vary in bandwidth or for those where no accurate estimation can be made, this object should contain the nominal bandwidth. For a sub-layer which has no concept of bandwidth, this object should be zero.
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1000000'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 23402859e08647d8bdb39ca8f39daf3b
              name: 'Interface {#IFNAME}({#IFALIAS}): Operational status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}]'
              key: 'net.if.status[ifOperStatus.{#SNMPINDEX}]'
              trends: '0'
              description: |
                MIB: IF-MIB
                The current operational state of the interface.
                - The testing(3) state indicates that no operational packet scan be passed
                - If ifAdminStatus is down(2) then ifOperStatus should be down(2)
                - If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic
                - It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection)
                - It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state
                - It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components.
              valuemap:
                name: 'IF-MIB::ifOperStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: 3455100ce855445ab3806379fbdc0bbf
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
                  name: 'Brocade Nonstackable: Interface {#IFNAME}({#IFALIAS}): Link down'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: |
                    This trigger expression works as follows:
                    1. It can be triggered if the operations status is down.
                    2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine the context macro to "0", marking this interface as not important. No new trigger will be fired if this interface is down.
                    3. `{TEMPLATE_NAME:METRIC.diff()}=1` - the trigger fires only if the operational status was up to (1) sometime before (so, does not fire for "eternal off" interfaces.)
                    
                    WARNING: if closed manually - it will not fire again on the next poll, because of .diff.
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 9657eee8f64d4bbe934cfb03f047caa7
              name: 'Interface {#IFNAME}({#IFALIAS}): Interface type'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.3.{#SNMPINDEX}]'
              key: 'net.if.type[ifType.{#SNMPINDEX}]'
              delay: 1h
              trends: '0'
              description: |
                MIB: IF-MIB
                The type of interface.
                Additional values for ifType are assigned by the Internet Assigned Numbers Authority (IANA),
                through updating the syntax of the IANAifType textual convention.
              valuemap:
                name: 'IF-MIB::ifType'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
          trigger_prototypes:
            - uuid: e5f54206b19f4f589229c7137365351c
              expression: |
                change(/Brocade_Foundry Nonstackable by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])<0 and last(/Brocade_Foundry Nonstackable by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
                and (
                last(/Brocade_Foundry Nonstackable by SNMP/net.if.type[ifType.{#SNMPINDEX}])=6 or
                last(/Brocade_Foundry Nonstackable by SNMP/net.if.type[ifType.{#SNMPINDEX}])=7 or
                last(/Brocade_Foundry Nonstackable by SNMP/net.if.type[ifType.{#SNMPINDEX}])=11 or
                last(/Brocade_Foundry Nonstackable by SNMP/net.if.type[ifType.{#SNMPINDEX}])=62 or
                last(/Brocade_Foundry Nonstackable by SNMP/net.if.type[ifType.{#SNMPINDEX}])=69 or
                last(/Brocade_Foundry Nonstackable by SNMP/net.if.type[ifType.{#SNMPINDEX}])=117
                )
                and
                (last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2)
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                (change(/Brocade_Foundry Nonstackable by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 and last(/Brocade_Foundry Nonstackable by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}],#2)>0) or
                (last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2)
              name: 'Brocade Nonstackable: Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before'
              opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
              priority: INFO
              description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              dependencies:
                - name: 'Brocade Nonstackable: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: 093696611acd4d75b00e83ce5b11df35
              expression: |
                (avg(/Brocade_Foundry Nonstackable by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Brocade_Foundry Nonstackable by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) or
                avg(/Brocade_Foundry Nonstackable by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Brocade_Foundry Nonstackable by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])) and
                last(/Brocade_Foundry Nonstackable by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                avg(/Brocade_Foundry Nonstackable by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Brocade_Foundry Nonstackable by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) and
                avg(/Brocade_Foundry Nonstackable by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Brocade_Foundry Nonstackable by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])
              name: 'Brocade Nonstackable: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage'
              event_name: 'Brocade Nonstackable: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
              opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'The utilization of the network interface is close to its estimated maximum bandwidth.'
              manual_close: 'YES'
              dependencies:
                - name: 'Brocade Nonstackable: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: 5337b53e473248719eb502428a4bcc38
              expression: |
                min(/Brocade_Foundry Nonstackable by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
                or min(/Brocade_Foundry Nonstackable by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                max(/Brocade_Foundry Nonstackable by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
                and max(/Brocade_Foundry Nonstackable by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
              name: 'Brocade Nonstackable: Interface {#IFNAME}({#IFALIAS}): High error rate'
              event_name: 'Brocade Nonstackable: Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
              opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'It recovers when it is below 80% of the `{$IF.ERRORS.WARN:"{#IFNAME}"}` threshold.'
              manual_close: 'YES'
              dependencies:
                - name: 'Brocade Nonstackable: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Brocade_Foundry Nonstackable by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
          graph_prototypes:
            - uuid: 96d099e3a5c142ce8c3bc1e88cb65d5e
              name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Brocade_Foundry Nonstackable by SNMP'
                    key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
                - sortorder: '1'
                  drawtype: BOLD_LINE
                  color: F63100
                  item:
                    host: 'Brocade_Foundry Nonstackable by SNMP'
                    key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
                - sortorder: '2'
                  color: 00611C
                  yaxisside: RIGHT
                  item:
                    host: 'Brocade_Foundry Nonstackable by SNMP'
                    key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
                - sortorder: '3'
                  color: F7941D
                  yaxisside: RIGHT
                  item:
                    host: 'Brocade_Foundry Nonstackable by SNMP'
                    key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
                - sortorder: '4'
                  color: FC6EA3
                  yaxisside: RIGHT
                  item:
                    host: 'Brocade_Foundry Nonstackable by SNMP'
                    key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
                - sortorder: '5'
                  color: 6C59DC
                  yaxisside: RIGHT
                  item:
                    host: 'Brocade_Foundry Nonstackable by SNMP'
                    key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
        - uuid: 9ea01b3ce15248868f1ced0b38bf1245
          name: 'PSU Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#PSU_INDEX},1.3.6.1.4.1.1991.1.1.1.2.1.1.1]'
          key: psu.discovery
          delay: 1h
          description: 'snChasPwrSupplyTable: A table of each power supply information. Only installed power supply appears in a table row.'
          item_prototypes:
            - uuid: 47e7c7bb4c27483bb4dd458b5a2d2c1e
              name: 'PSU {#PSU_INDEX}: Power supply status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.1991.1.1.1.2.1.1.3.{#SNMPINDEX}]'
              key: 'sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: 'MIB: FOUNDRY-SN-AGENT-MIB'
              valuemap:
                name: 'FOUNDRY-SN-AGENT-MIB::snChasPwrSupplyOperStatus'
              tags:
                - tag: component
                  value: power
              trigger_prototypes:
                - uuid: fbe256ab504b4cb98fec650972d5c41a
                  expression: 'count(/Brocade_Foundry Nonstackable by SNMP/sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS}")=1'
                  name: 'Brocade Nonstackable: PSU {#PSU_INDEX}: Power supply is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the power supply unit for errors'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: 6163e41576734f469146bc818b2856a2
                  expression: 'count(/Brocade_Foundry Nonstackable by SNMP/sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}],#1,"ne","{$PSU_OK_STATUS}")=1'
                  name: 'Brocade Nonstackable: PSU {#PSU_INDEX}: Power supply is not in normal state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: INFO
                  description: 'Please check the power supply unit for errors'
                  dependencies:
                    - name: 'Brocade Nonstackable: PSU {#PSU_INDEX}: Power supply is in critical state'
                      expression: 'count(/Brocade_Foundry Nonstackable by SNMP/sensor.psu.status[snChasPwrSupplyOperStatus.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS}")=1'
                  tags:
                    - tag: scope
                      value: notice
        - uuid: 5b62e90cfc5549d4b189158499b3d9fb
          name: 'Temperature Discovery Chassis'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.1991.1.1.1.1.18]'
          key: temp.chassis.discovery
          delay: 1h
          description: 'Since temperature of the chassis is not available on all Brocade/Foundry hardware, this LLD is here to avoid unsupported items.'
          item_prototypes:
            - uuid: 699f30c8feee47cf8bf3da4d10f2c8aa
              name: 'Chassis #{#SNMPINDEX}: Temperature'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.1991.1.1.1.1.18.{#SNMPINDEX}]'
              key: 'sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}]'
              delay: 3m
              value_type: FLOAT
              units: °C
              description: |
                MIB: FOUNDRY-SN-AGENT-MIB
                Temperature of the chassis. Each unit is 0.5 degrees Celsius.
                Only management module built with temperature sensor hardware is applicable.
                For those non-applicable management module, it returns no-such-name.
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '0.5'
              tags:
                - tag: component
                  value: temperature
              trigger_prototypes:
                - uuid: cae73cf7a78f4963ab1718446ceeb6f4
                  expression: 'avg(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"Chassis"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"Chassis"}-3'
                  name: 'Brocade Nonstackable: Chassis #{#SNMPINDEX}: Temperature is above critical threshold'
                  event_name: 'Brocade Nonstackable: Chassis #{#SNMPINDEX}: Temperature is above critical threshold: >{$TEMP_CRIT:"Chassis"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: HIGH
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: 66c4f9fd59f043a782dd8fea11b90451
                  expression: 'avg(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}],5m)>{$TEMP_WARN:"Chassis"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}],5m)<{$TEMP_WARN:"Chassis"}-3'
                  name: 'Brocade Nonstackable: Chassis #{#SNMPINDEX}: Temperature is above warning threshold'
                  event_name: 'Brocade Nonstackable: Chassis #{#SNMPINDEX}: Temperature is above warning threshold: >{$TEMP_WARN:"Chassis"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  dependencies:
                    - name: 'Brocade Nonstackable: Chassis #{#SNMPINDEX}: Temperature is above critical threshold'
                      expression: 'avg(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"Chassis"}'
                      recovery_expression: 'max(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"Chassis"}-3'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: 2895da8297fc457da88ea136e61fb8d9
                  expression: 'avg(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"Chassis"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'min(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snChasActualTemperature.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"Chassis"}+3'
                  name: 'Brocade Nonstackable: Chassis #{#SNMPINDEX}: Temperature is too low'
                  event_name: 'Brocade Nonstackable: Chassis #{#SNMPINDEX}: Temperature is too low: <{$TEMP_CRIT_LOW:"Chassis"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
        - uuid: 44a84963c9d04fc5a82415602ec8db33
          name: 'Temperature Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SENSOR_DESCR},1.3.6.1.4.1.1991.1.1.2.13.1.1.3]'
          key: temp.discovery
          delay: 1h
          description: 'snAgentTempTable:Table to list temperatures of the modules in the device. This table is applicable to only those modules with temperature sensors.'
          item_prototypes:
            - uuid: c181349497cc4d2dbaf43f51712278df
              name: '{#SENSOR_DESCR}: Temperature'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.1991.1.1.2.13.1.1.4.{#SNMPINDEX}]'
              key: 'sensor.temp.value[snAgentTempValue.{#SNMPINDEX}]'
              delay: 3m
              value_type: FLOAT
              units: °C
              description: |
                MIB: FOUNDRY-SN-AGENT-MIB
                Temperature of the sensor represented by this row. Each unit is 0.5 degrees Celsius.
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '0.5'
              tags:
                - tag: component
                  value: temperature
              trigger_prototypes:
                - uuid: bace15be86774bb4a46ca491b3b53516
                  expression: 'avg(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snAgentTempValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SENSOR_DESCR}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snAgentTempValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SENSOR_DESCR}"}-3'
                  name: 'Brocade Nonstackable: {#SENSOR_DESCR}: Temperature is above critical threshold'
                  event_name: 'Brocade Nonstackable: {#SENSOR_DESCR}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SENSOR_DESCR}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: HIGH
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: 3687c8a7e88949fb9953049fb0f5e54d
                  expression: 'avg(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snAgentTempValue.{#SNMPINDEX}],5m)>{$TEMP_WARN:"{#SENSOR_DESCR}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snAgentTempValue.{#SNMPINDEX}],5m)<{$TEMP_WARN:"{#SENSOR_DESCR}"}-3'
                  name: 'Brocade Nonstackable: {#SENSOR_DESCR}: Temperature is above warning threshold'
                  event_name: 'Brocade Nonstackable: {#SENSOR_DESCR}: Temperature is above warning threshold: >{$TEMP_WARN:"{#SENSOR_DESCR}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  dependencies:
                    - name: 'Brocade Nonstackable: {#SENSOR_DESCR}: Temperature is above critical threshold'
                      expression: 'avg(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snAgentTempValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SENSOR_DESCR}"}'
                      recovery_expression: 'max(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snAgentTempValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SENSOR_DESCR}"}-3'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: fbe5f29b241248b4b4bff5d55fcc2180
                  expression: 'avg(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snAgentTempValue.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"{#SENSOR_DESCR}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'min(/Brocade_Foundry Nonstackable by SNMP/sensor.temp.value[snAgentTempValue.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"{#SENSOR_DESCR}"}+3'
                  name: 'Brocade Nonstackable: {#SENSOR_DESCR}: Temperature is too low'
                  event_name: 'Brocade Nonstackable: {#SENSOR_DESCR}: Temperature is too low: <{$TEMP_CRIT_LOW:"{#SENSOR_DESCR}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
      tags:
        - tag: class
          value: network
        - tag: target
          value: brocade
        - tag: target
          value: brocade-foundry
      macros:
        - macro: '{$CPU.UTIL.CRIT}'
          value: '90'
          config:
            type: TEXT
            priority: '8'
            section_name: Thresholds
            label: 'Threshold for CPU utilization (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$FAN_CRIT_STATUS}'
          value: '3'
          config:
            type: TEXT
            priority: '5'
            section_name: Other
            label: 'Fan critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$FAN_OK_STATUS}'
          value: '2'
          config:
            type: TEXT
            priority: '7'
            section_name: Other
            label: 'Fan OK status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_LOSS_WARN}'
          value: '20'
          description: 'Warning threshold of ICMP packet loss in %.'
          config:
            type: TEXT
            priority: '11'
            section_name: Thresholds
            label: 'Threshold of ICMP packet loss'
            description: 'Warning threshold of ICMP packet loss in %. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_RESPONSE_TIME_WARN}'
          value: '0.15'
          description: 'Warning threshold of the average ICMP response time in seconds.'
          config:
            type: TEXT
            priority: '12'
            section_name: Thresholds
            label: 'Threshold of the average ICMP response'
            description: 'Warning threshold of the average ICMP response time in seconds. No less than 0.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.ERRORS.WARN}'
          value: '2'
          description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
          config:
            type: TEXT
            priority: '13'
            section_name: Thresholds
            label: 'Threshold of error packet rate'
            description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '14'
            section_name: Thresholds
            label: 'The threshold in the interface utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IFCONTROL}'
          value: '1'
          config:
            type: TEXT
            priority: '15'
            section_name: Thresholds
            label: 'Interfaces control'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$MEMORY.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '9'
            section_name: Thresholds
            label: 'Threshold for memory utilization'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$NET.IF.IFADMINSTATUS.MATCHES}'
          value: '^.*'
          config:
            type: TEXT
            priority: '20'
            section_name: Filters
            label: 'Filter for network interface by adminstatus'
        - macro: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
          value: ^2$
          description: 'Ignore down(2) administrative status'
          config:
            type: TEXT
            priority: '21'
            section_name: Filters
            label: 'Filter for network interface by adminstatus (exclude)'
        - macro: '{$NET.IF.IFALIAS.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '24'
            section_name: Filters
            label: 'Filter for network interfaces by alias'
        - macro: '{$NET.IF.IFALIAS.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '25'
            section_name: Filters
            label: 'Filter for network interfaces by alias (exclude)'
        - macro: '{$NET.IF.IFDESCR.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '22'
            section_name: Filters
            label: 'Filter for network interfaces by description'
        - macro: '{$NET.IF.IFDESCR.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '23'
            section_name: Filters
            label: 'Filter for network interfaces by description (exclude)'
        - macro: '{$NET.IF.IFNAME.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '16'
            section_name: Filters
            label: 'Filter for network interface by name'
        - macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
          value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9a-z]+$|docker[0-9]+|br-[a-z0-9]{12})'
          description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
          config:
            type: TEXT
            priority: '17'
            section_name: Filters
            label: 'Filter for network interface by name (exclude)'
            description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
        - macro: '{$NET.IF.IFOPERSTATUS.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '18'
            section_name: Filters
            label: 'Filter for network interface by status'
        - macro: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
          value: ^6$
          description: 'Ignore notPresent(6)'
          config:
            type: TEXT
            priority: '19'
            section_name: Filters
            label: 'Filter for network interface by status (exclude)'
        - macro: '{$NET.IF.IFTYPE.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '26'
            section_name: Filters
            label: 'Filter for network interfaces by type'
        - macro: '{$NET.IF.IFTYPE.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '27'
            section_name: Filters
            label: 'Filter for network interfaces by type (exclude)'
        - macro: '{$PSU_CRIT_STATUS}'
          value: '3'
          config:
            type: TEXT
            priority: '4'
            section_name: Other
            label: 'Power supply critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$PSU_OK_STATUS}'
          value: '2'
          config:
            type: TEXT
            priority: '6'
            section_name: Other
            label: 'Power supply OK status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$SNMP.TIMEOUT}'
          value: 5m
          description: 'Time interval for the SNMP availability trigger.'
          config:
            type: TEXT
            priority: '10'
            section_name: Other
            label: 'Time interval'
            description: 'Time interval for the SNMP availability trigger.'
        - macro: '{$TEMP_CRIT}'
          value: '75'
          config:
            type: TEXT
            priority: '2'
            section_name: Thresholds
            label: 'Threshold for temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_CRIT_LOW}'
          value: '5'
          config:
            type: TEXT
            priority: '1'
            section_name: Thresholds
            label: 'Threshold for low temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_WARN}'
          value: '65'
          config:
            type: TEXT
            priority: '3'
            section_name: Thresholds
            label: 'Threshold for temperature (warning)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
      dashboards:
        - uuid: 881c7f5e3dc444f988b314bdb810cb6c
          name: 'Brocade: General'
          pages:
            - name: 'Brocade: General'
              widgets:
                - type: graph
                  name: 'Memory utilization'
                  width: '36'
                  height: '5'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'Brocade_Foundry Nonstackable by SNMP'
                        name: 'Brocade: Memory utilization'
                    - type: STRING
                      name: reference
                      value: AAAAA
                - type: graph
                  name: 'CPU utilization'
                  x: '36'
                  width: '36'
                  height: '5'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'Brocade_Foundry Nonstackable by SNMP'
                        name: 'Brocade: CPU utilization'
                    - type: STRING
                      name: reference
                      value: AAAAB
      valuemaps:
        - uuid: d457efd8cee74f168bd88f4fb2376142
          name: 'FOUNDRY-SN-AGENT-MIB::snChasFanOperStatus'
          mappings:
            - value: '1'
              newvalue: other
            - value: '2'
              newvalue: normal
            - value: '3'
              newvalue: failure
        - uuid: fe1c4f9f35a34b6189110fc95e21b086
          name: 'FOUNDRY-SN-AGENT-MIB::snChasPwrSupplyOperStatus'
          mappings:
            - value: '1'
              newvalue: other
            - value: '2'
              newvalue: normal
            - value: '3'
              newvalue: failure
        - uuid: 1b40ba5987784986bb25aa9dfa2d1e81
          name: 'IF-MIB::ifOperStatus'
          mappings:
            - value: '1'
              newvalue: up
            - value: '2'
              newvalue: down
            - value: '4'
              newvalue: unknown
            - value: '5'
              newvalue: dormant
            - value: '6'
              newvalue: notPresent
            - value: '7'
              newvalue: lowerLayerDown
        - uuid: 5a55c0fddcc9450eb3e07b76cc73f8ee
          name: 'IF-MIB::ifType'
          mappings:
            - value: '1'
              newvalue: other
            - value: '2'
              newvalue: regular1822
            - value: '3'
              newvalue: hdh1822
            - value: '4'
              newvalue: ddnX25
            - value: '5'
              newvalue: rfc877x25
            - value: '6'
              newvalue: ethernetCsmacd
            - value: '7'
              newvalue: iso88023Csmacd
            - value: '8'
              newvalue: iso88024TokenBus
            - value: '9'
              newvalue: iso88025TokenRing
            - value: '10'
              newvalue: iso88026Man
            - value: '11'
              newvalue: starLan
            - value: '12'
              newvalue: proteon10Mbit
            - value: '13'
              newvalue: proteon80Mbit
            - value: '14'
              newvalue: hyperchannel
            - value: '15'
              newvalue: fddi
            - value: '16'
              newvalue: lapb
            - value: '17'
              newvalue: sdlc
            - value: '18'
              newvalue: ds1
            - value: '19'
              newvalue: e1
            - value: '20'
              newvalue: basicISDN
            - value: '21'
              newvalue: primaryISDN
            - value: '22'
              newvalue: propPointToPointSerial
            - value: '23'
              newvalue: ppp
            - value: '24'
              newvalue: softwareLoopback
            - value: '25'
              newvalue: eon
            - value: '26'
              newvalue: ethernet3Mbit
            - value: '27'
              newvalue: nsip
            - value: '28'
              newvalue: slip
            - value: '29'
              newvalue: ultra
            - value: '30'
              newvalue: ds3
            - value: '31'
              newvalue: sip
            - value: '32'
              newvalue: frameRelay
            - value: '33'
              newvalue: rs232
            - value: '34'
              newvalue: para
            - value: '35'
              newvalue: arcnet
            - value: '36'
              newvalue: arcnetPlus
            - value: '37'
              newvalue: atm
            - value: '38'
              newvalue: miox25
            - value: '39'
              newvalue: sonet
            - value: '40'
              newvalue: x25ple
            - value: '41'
              newvalue: iso88022llc
            - value: '42'
              newvalue: localTalk
            - value: '43'
              newvalue: smdsDxi
            - value: '44'
              newvalue: frameRelayService
            - value: '45'
              newvalue: v35
            - value: '46'
              newvalue: hssi
            - value: '47'
              newvalue: hippi
            - value: '48'
              newvalue: modem
            - value: '49'
              newvalue: aal5
            - value: '50'
              newvalue: sonetPath
            - value: '51'
              newvalue: sonetVT
            - value: '52'
              newvalue: smdsIcip
            - value: '53'
              newvalue: propVirtual
            - value: '54'
              newvalue: propMultiplexor
            - value: '55'
              newvalue: ieee80212
            - value: '56'
              newvalue: fibreChannel
            - value: '57'
              newvalue: hippiInterface
            - value: '58'
              newvalue: frameRelayInterconnect
            - value: '59'
              newvalue: aflane8023
            - value: '60'
              newvalue: aflane8025
            - value: '61'
              newvalue: cctEmul
            - value: '62'
              newvalue: fastEther
            - value: '63'
              newvalue: isdn
            - value: '64'
              newvalue: v11
            - value: '65'
              newvalue: v36
            - value: '66'
              newvalue: g703at64k
            - value: '67'
              newvalue: g703at2mb
            - value: '68'
              newvalue: qllc
            - value: '69'
              newvalue: fastEtherFX
            - value: '70'
              newvalue: channel
            - value: '71'
              newvalue: ieee80211
            - value: '72'
              newvalue: ibm370parChan
            - value: '73'
              newvalue: escon
            - value: '74'
              newvalue: dlsw
            - value: '75'
              newvalue: isdns
            - value: '76'
              newvalue: isdnu
            - value: '77'
              newvalue: lapd
            - value: '78'
              newvalue: ipSwitch
            - value: '79'
              newvalue: rsrb
            - value: '80'
              newvalue: atmLogical
            - value: '81'
              newvalue: ds0
            - value: '82'
              newvalue: ds0Bundle
            - value: '83'
              newvalue: bsc
            - value: '84'
              newvalue: async
            - value: '85'
              newvalue: cnr
            - value: '86'
              newvalue: iso88025Dtr
            - value: '87'
              newvalue: eplrs
            - value: '88'
              newvalue: arap
            - value: '89'
              newvalue: propCnls
            - value: '90'
              newvalue: hostPad
            - value: '91'
              newvalue: termPad
            - value: '92'
              newvalue: frameRelayMPI
            - value: '93'
              newvalue: x213
            - value: '94'
              newvalue: adsl
            - value: '95'
              newvalue: radsl
            - value: '96'
              newvalue: sdsl
            - value: '97'
              newvalue: vdsl
            - value: '98'
              newvalue: iso88025CRFPInt
            - value: '99'
              newvalue: myrinet
            - value: '100'
              newvalue: voiceEM
            - value: '101'
              newvalue: voiceFXO
            - value: '102'
              newvalue: voiceFXS
            - value: '103'
              newvalue: voiceEncap
            - value: '104'
              newvalue: voiceOverIp
            - value: '105'
              newvalue: atmDxi
            - value: '106'
              newvalue: atmFuni
            - value: '107'
              newvalue: atmIma
            - value: '108'
              newvalue: pppMultilinkBundle
            - value: '109'
              newvalue: ipOverCdlc
            - value: '110'
              newvalue: ipOverClaw
            - value: '111'
              newvalue: stackToStack
            - value: '112'
              newvalue: virtualIpAddress
            - value: '113'
              newvalue: mpc
            - value: '114'
              newvalue: ipOverAtm
            - value: '115'
              newvalue: iso88025Fiber
            - value: '116'
              newvalue: tdlc
            - value: '117'
              newvalue: gigabitEthernet
            - value: '118'
              newvalue: hdlc
            - value: '119'
              newvalue: lapf
            - value: '120'
              newvalue: v37
            - value: '121'
              newvalue: x25mlp
            - value: '122'
              newvalue: x25huntGroup
            - value: '123'
              newvalue: trasnpHdlc
            - value: '124'
              newvalue: interleave
            - value: '125'
              newvalue: fast
            - value: '126'
              newvalue: ip
            - value: '127'
              newvalue: docsCableMaclayer
            - value: '128'
              newvalue: docsCableDownstream
            - value: '129'
              newvalue: docsCableUpstream
            - value: '130'
              newvalue: a12MppSwitch
            - value: '131'
              newvalue: tunnel
            - value: '132'
              newvalue: coffee
            - value: '133'
              newvalue: ces
            - value: '134'
              newvalue: atmSubInterface
            - value: '135'
              newvalue: l2vlan
            - value: '136'
              newvalue: l3ipvlan
            - value: '137'
              newvalue: l3ipxvlan
            - value: '138'
              newvalue: digitalPowerline
            - value: '139'
              newvalue: mediaMailOverIp
            - value: '140'
              newvalue: dtm
            - value: '141'
              newvalue: dcn
            - value: '142'
              newvalue: ipForward
            - value: '143'
              newvalue: msdsl
            - value: '144'
              newvalue: ieee1394
            - value: '145'
              newvalue: if-gsn
            - value: '146'
              newvalue: dvbRccMacLayer
            - value: '147'
              newvalue: dvbRccDownstream
            - value: '148'
              newvalue: dvbRccUpstream
            - value: '149'
              newvalue: atmVirtual
            - value: '150'
              newvalue: mplsTunnel
            - value: '151'
              newvalue: srp
            - value: '152'
              newvalue: voiceOverAtm
            - value: '153'
              newvalue: voiceOverFrameRelay
            - value: '154'
              newvalue: idsl
            - value: '155'
              newvalue: compositeLink
            - value: '156'
              newvalue: ss7SigLink
            - value: '157'
              newvalue: propWirelessP2P
            - value: '158'
              newvalue: frForward
            - value: '159'
              newvalue: rfc1483
            - value: '160'
              newvalue: usb
            - value: '161'
              newvalue: ieee8023adLag
            - value: '162'
              newvalue: bgppolicyaccounting
            - value: '163'
              newvalue: frf16MfrBundle
            - value: '164'
              newvalue: h323Gatekeeper
            - value: '165'
              newvalue: h323Proxy
            - value: '166'
              newvalue: mpls
            - value: '167'
              newvalue: mfSigLink
            - value: '168'
              newvalue: hdsl2
            - value: '169'
              newvalue: shdsl
            - value: '170'
              newvalue: ds1FDL
            - value: '171'
              newvalue: pos
            - value: '172'
              newvalue: dvbAsiIn
            - value: '173'
              newvalue: dvbAsiOut
            - value: '174'
              newvalue: plc
            - value: '175'
              newvalue: nfas
            - value: '176'
              newvalue: tr008
            - value: '177'
              newvalue: gr303RDT
            - value: '178'
              newvalue: gr303IDT
            - value: '179'
              newvalue: isup
            - value: '180'
              newvalue: propDocsWirelessMaclayer
            - value: '181'
              newvalue: propDocsWirelessDownstream
            - value: '182'
              newvalue: propDocsWirelessUpstream
            - value: '183'
              newvalue: hiperlan2
            - value: '184'
              newvalue: propBWAp2Mp
            - value: '185'
              newvalue: sonetOverheadChannel
            - value: '186'
              newvalue: digitalWrapperOverheadChannel
            - value: '187'
              newvalue: aal2
            - value: '188'
              newvalue: radioMAC
            - value: '189'
              newvalue: atmRadio
            - value: '190'
              newvalue: imt
            - value: '191'
              newvalue: mvl
            - value: '192'
              newvalue: reachDSL
            - value: '193'
              newvalue: frDlciEndPt
            - value: '194'
              newvalue: atmVciEndPt
            - value: '195'
              newvalue: opticalChannel
            - value: '196'
              newvalue: opticalTransport
            - value: '197'
              newvalue: propAtm
            - value: '198'
              newvalue: voiceOverCable
            - value: '199'
              newvalue: infiniband
            - value: '200'
              newvalue: teLink
            - value: '201'
              newvalue: q2931
            - value: '202'
              newvalue: virtualTg
            - value: '203'
              newvalue: sipTg
            - value: '204'
              newvalue: sipSig
            - value: '205'
              newvalue: docsCableUpstreamChannel
            - value: '206'
              newvalue: econet
            - value: '207'
              newvalue: pon155
            - value: '208'
              newvalue: pon622
            - value: '209'
              newvalue: bridge
            - value: '210'
              newvalue: linegroup
            - value: '211'
              newvalue: voiceEMFGD
            - value: '212'
              newvalue: voiceFGDEANA
            - value: '213'
              newvalue: voiceDID
            - value: '214'
              newvalue: mpegTransport
            - value: '215'
              newvalue: sixToFour
            - value: '216'
              newvalue: gtp
            - value: '217'
              newvalue: pdnEtherLoop1
            - value: '218'
              newvalue: pdnEtherLoop2
            - value: '219'
              newvalue: opticalChannelGroup
            - value: '220'
              newvalue: homepna
            - value: '221'
              newvalue: gfp
            - value: '222'
              newvalue: ciscoISLvlan
            - value: '223'
              newvalue: actelisMetaLOOP
            - value: '224'
              newvalue: fcipLink
            - value: '225'
              newvalue: rpr
            - value: '226'
              newvalue: qam
            - value: '227'
              newvalue: lmp
            - value: '228'
              newvalue: cblVectaStar
            - value: '229'
              newvalue: docsCableMCmtsDownstream
            - value: '230'
              newvalue: adsl2
            - value: '231'
              newvalue: macSecControlledIF
            - value: '232'
              newvalue: macSecUncontrolledIF
            - value: '233'
              newvalue: aviciOpticalEther
            - value: '234'
              newvalue: atmbond
            - value: '235'
              newvalue: voiceFGDOS
            - value: '236'
              newvalue: mocaVersion1
            - value: '237'
              newvalue: ieee80216WMAN
            - value: '238'
              newvalue: adsl2plus
            - value: '239'
              newvalue: dvbRcsMacLayer
            - value: '240'
              newvalue: dvbTdm
            - value: '241'
              newvalue: dvbRcsTdma
            - value: '242'
              newvalue: x86Laps
            - value: '243'
              newvalue: wwanPP
            - value: '244'
              newvalue: wwanPP2
            - value: '245'
              newvalue: voiceEBS
            - value: '246'
              newvalue: ifPwType
            - value: '247'
              newvalue: ilan
            - value: '248'
              newvalue: pip
            - value: '249'
              newvalue: aluELP
            - value: '250'
              newvalue: gpon
            - value: '251'
              newvalue: vdsl2
            - value: '252'
              newvalue: capwapDot11Profile
            - value: '253'
              newvalue: capwapDot11Bss
            - value: '254'
              newvalue: capwapWtpVirtualRadio
            - value: '255'
              newvalue: bits
            - value: '256'
              newvalue: docsCableUpstreamRfPort
            - value: '257'
              newvalue: cableDownstreamRfPort
            - value: '258'
              newvalue: vmwareVirtualNic
            - value: '259'
              newvalue: ieee802154
            - value: '260'
              newvalue: otnOdu
            - value: '261'
              newvalue: otnOtu
            - value: '262'
              newvalue: ifVfiType
            - value: '263'
              newvalue: g9981
            - value: '264'
              newvalue: g9982
            - value: '265'
              newvalue: g9983
            - value: '266'
              newvalue: aluEpon
            - value: '267'
              newvalue: aluEponOnu
            - value: '268'
              newvalue: aluEponPhysicalUni
            - value: '269'
              newvalue: aluEponLogicalLink
            - value: '270'
              newvalue: aluGponOnu
            - value: '271'
              newvalue: aluGponPhysicalUni
            - value: '272'
              newvalue: vmwareNicTeam
            - value: '277'
              newvalue: docsOfdmDownstream
            - value: '278'
              newvalue: docsOfdmaUpstream
            - value: '279'
              newvalue: gfast
            - value: '280'
              newvalue: sdci
            - value: '281'
              newvalue: xboxWireless
            - value: '282'
              newvalue: fastdsl
            - value: '283'
              newvalue: docsCableScte55d1FwdOob
            - value: '284'
              newvalue: docsCableScte55d1RetOob
            - value: '285'
              newvalue: docsCableScte55d2DsOob
            - value: '286'
              newvalue: docsCableScte55d2UsOob
            - value: '287'
              newvalue: docsCableNdf
            - value: '288'
              newvalue: docsCableNdr
            - value: '289'
              newvalue: ptm
            - value: '290'
              newvalue: ghn
        - uuid: ac73622b29f54d21aa6bcbac5a783599
          name: 'Service state'
          mappings:
            - value: '0'
              newvalue: Down
            - value: '1'
              newvalue: Up
        - uuid: f74856688e9444bd93951f0c246ae483
          name: zabbix.host.available
          mappings:
            - value: '0'
              newvalue: 'not available'
            - value: '1'
              newvalue: available
            - value: '2'
              newvalue: unknown
    - uuid: d3176749a5274264938f487cd89d17eb
      template: 'D-Link DES_DGS Switch by SNMP'
      name: 'D-Link DES_DGS Switch by SNMP'
      description: |
        Template D-Link DES_DGS Switch
        
        MIBs used:
        EQUIPMENT-MIB
        IF-MIB
        DLINK-AGENT-MIB
        EtherLike-MIB
        HOST-RESOURCES-MIB
        SNMPv2-MIB
        ENTITY-MIB
        
        Known Issues:
        
          Description: D-Link reports missing PSU as fail(4)
          Version: Firmware: 1.73R008,hardware revision: B1
          Device: DGS-3420-26SC Gigabit Ethernet Switch
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Overview
        
        This template is designed for the effortless deployment of D-Link DES_DGS Switch monitoring by Zabbix via SNMP and doesn't require any external scripts.
        
        ###  Known Issues:
        
        Description: D-Link reports missing PSU as fail(4)
          - version: Firmware: 1.73R008,hardware revision: B1
          - device: DGS-3420-26SC Gigabit Ethernet Switch
      vendor:
        name: Zabbix
        version: 8.0-2
      groups:
        - name: 'Templates/Network devices'
      items:
        - uuid: 09fada9334444d18b149b2fa0e39ac76
          name: 'ICMP ping'
          type: SIMPLE
          key: icmpping
          description: |
            The host accessibility by ICMP ping.
            
            0 - ICMP ping fails;
            1 - ICMP ping successful.
          valuemap:
            name: 'Service state'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 5d134da7ad044ab591e1b96e1dca1641
              expression: 'max(/D-Link DES_DGS Switch by SNMP/icmpping,#3)=0'
              name: 'D-Link DES_DGS Switch: Unavailable by ICMP ping'
              priority: HIGH
              description: 'Last three attempts returned timeout. Please check device connectivity.'
              tags:
                - tag: scope
                  value: availability
        - uuid: 1c2d54095100404c8e03b179f5df1761
          name: 'ICMP loss'
          type: SIMPLE
          key: icmppingloss
          value_type: FLOAT
          units: '%'
          description: 'The percentage of lost packets.'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 9c48d97b5d4a4668ad382e1d0d9c8e87
              expression: 'min(/D-Link DES_DGS Switch by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/D-Link DES_DGS Switch by SNMP/icmppingloss,5m)<100'
              name: 'D-Link DES_DGS Switch: High ICMP ping loss'
              opdata: 'Loss: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'ICMP packets loss detected.'
              dependencies:
                - name: 'D-Link DES_DGS Switch: Unavailable by ICMP ping'
                  expression: 'max(/D-Link DES_DGS Switch by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: 3f66e84f94254655add99a1152225df7
          name: 'ICMP response time'
          type: SIMPLE
          key: icmppingsec
          value_type: FLOAT
          units: s
          description: 'The ICMP ping response time (in seconds).'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 3959884457a7420a9a9007c550d9b886
              expression: 'avg(/D-Link DES_DGS Switch by SNMP/icmppingsec,5m)>{$ICMP_RESPONSE_TIME_WARN}'
              name: 'D-Link DES_DGS Switch: High ICMP ping response time'
              opdata: 'Value: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'Average ICMP response time is too high.'
              dependencies:
                - name: 'D-Link DES_DGS Switch: High ICMP ping loss'
                  expression: 'min(/D-Link DES_DGS Switch by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/D-Link DES_DGS Switch by SNMP/icmppingloss,5m)<100'
                - name: 'D-Link DES_DGS Switch: Unavailable by ICMP ping'
                  expression: 'max(/D-Link DES_DGS Switch by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: c7c836a53c134dcda931ef9dba401f35
          name: 'SNMP traps (fallback)'
          type: SNMP_TRAP
          key: snmptrap.fallback
          value_type: LOG
          description: 'The item is used to collect all SNMP traps unmatched by other snmptrap items'
          logtimefmt: 'hh:mm:sszyyyy/MM/dd'
          tags:
            - tag: component
              value: network
        - uuid: 29ee9181892b49a081299688f8c47798
          name: 'System contact details'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.4.0]'
          key: 'system.contact[sysContact.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string.
          inventory_link: CONTACT
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 9d265ce34e9344c6875497e7ed0ebc89
          name: 'CPU utilization'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.171.12.1.1.6.2.0]'
          key: 'system.cpu.util[agentCPUutilizationIn1min.0]'
          value_type: FLOAT
          units: '%'
          description: |
            MIB: DLINK-AGENT-MIB
            The unit of time is 1 minute. The value will be between 0% (idle) and 100%(very busy).
          tags:
            - tag: component
              value: cpu
          triggers:
            - uuid: 621c4933fd9c4b78aae1eedada7ffedf
              expression: 'min(/D-Link DES_DGS Switch by SNMP/system.cpu.util[agentCPUutilizationIn1min.0],5m)>{$CPU.UTIL.CRIT}'
              name: 'D-Link DES_DGS Switch: High CPU utilization'
              event_name: 'D-Link DES_DGS Switch: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
              opdata: 'Current utilization: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'The CPU utilization is too high. The system might be slow to respond.'
              tags:
                - tag: scope
                  value: performance
        - uuid: 188e1d65459f40a48c3bc0f444024a00
          name: 'System description'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: 'system.descr[sysDescr.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            A textual description of the entity. This value should
            include the full name and version identification of the system's hardware type, software operating-system, and
            networking software.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 8e6d4c6568c54aeeb745c5ba43945174
          name: 'Firmware version'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.47.1.1.1.1.9.1]'
          key: system.hw.firmware
          delay: 1h
          value_type: CHAR
          description: 'MIB: ENTITY-MIB'
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 40a2ad291ded4bf9bc72adc2b8653b98
              expression: 'last(/D-Link DES_DGS Switch by SNMP/system.hw.firmware,#1)<>last(/D-Link DES_DGS Switch by SNMP/system.hw.firmware,#2) and length(last(/D-Link DES_DGS Switch by SNMP/system.hw.firmware))>0'
              name: 'D-Link DES_DGS Switch: Firmware has changed'
              opdata: 'Current value: {ITEM.LASTVALUE1}'
              priority: INFO
              description: 'Firmware version has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
        - uuid: cc6cdf26ee0f4c5682c956c0ac741898
          name: 'Hardware model name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: system.hw.model
          delay: 1h
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            A textual description of the entity.  This value should
            include the full name and version identification of the system's hardware type, software operating-system, and
            networking software.
          inventory_link: MODEL
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
        - uuid: 3dd0e86421b5410f9c34680650a0d9a5
          name: 'Hardware serial number'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.171.12.1.1.12.0]'
          key: system.hw.serialnumber
          delay: 1h
          value_type: CHAR
          description: |
            MIB: DLINK-AGENT-MIB
            A text string containing the serial number of this device.
          inventory_link: SERIALNO_A
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 3aa2e47f4b8145b8a5e4f67b0987ca2b
              expression: 'last(/D-Link DES_DGS Switch by SNMP/system.hw.serialnumber,#1)<>last(/D-Link DES_DGS Switch by SNMP/system.hw.serialnumber,#2) and length(last(/D-Link DES_DGS Switch by SNMP/system.hw.serialnumber))>0'
              name: 'D-Link DES_DGS Switch: Device has been replaced'
              event_name: 'D-Link DES_DGS Switch: Device has been replaced (new serial number received)'
              priority: INFO
              description: 'Device serial number has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
        - uuid: e4706d07b0824ccb8f4ee7ccec10a388
          name: 'Uptime (hardware)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.25.1.1.0]'
          key: 'system.hw.uptime[hrSystemUptime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: HOST-RESOURCES-MIB
            The amount of time since this host was last initialized. Note that this is different from sysUpTime in the SNMPv2-MIB [RFC1907] because sysUpTime is the uptime of the network management portion of the system.
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
              error_handler: CUSTOM_VALUE
              error_handler_params: '0'
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: 06e2bd7f602140f49685ae8dbfa44660
          name: 'Hardware version(revision)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.47.1.1.1.1.8.1]'
          key: system.hw.version
          delay: 1h
          value_type: CHAR
          description: 'MIB: ENTITY-MIB'
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
        - uuid: 22473cfba211477ab8fbbb52c814de0d
          name: 'System location'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.6.0]'
          key: 'system.location[sysLocation.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            Physical location of the node (e.g., `equipment room`, `3rd floor`). If not provided, the value is a zero-length string.
          inventory_link: LOCATION
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 38d68b0f6cd4445b966ead7e7301ae86
          name: 'System name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.5.0]'
          key: system.name
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            An administratively-assigned name for this managed node.By convention, this is the node's fully-qualified domain name. If the name is unknown, the value is the zero-length string.
          inventory_link: NAME
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 91e1a9f579c64954a89b6efbf6b523dd
              expression: 'last(/D-Link DES_DGS Switch by SNMP/system.name,#1)<>last(/D-Link DES_DGS Switch by SNMP/system.name,#2) and length(last(/D-Link DES_DGS Switch by SNMP/system.name))>0'
              name: 'D-Link DES_DGS Switch: System name has changed'
              event_name: 'D-Link DES_DGS Switch: System name has changed (new name: {ITEM.VALUE})'
              priority: INFO
              description: 'The name of the system has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
                - tag: scope
                  value: security
        - uuid: 5ca0653d792d42d1aebba51b36d5cf31
          name: 'Uptime (network)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.3.0]'
          key: 'system.net.uptime[sysUpTime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: SNMPv2-MIB
            Time (in hundredths of a second) since the network management portion of the system was last re-initialized.
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: 5697ce18530b44f5a7e342344ecfe89a
          name: 'System object ID'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.2.0]'
          key: 'system.objectid[sysObjectID.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determining`what kind of box' is being managed.  For example, if vendor`Flintstones, Inc.' was assigned the subtree1.3.6.1.4.1.4242, it could assign the identifier 1.3.6.1.4.1.4242.1.1 to its `Fred Router'.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 459f95874d194c7da40752f0336034be
          name: 'SNMP agent availability'
          type: INTERNAL
          key: 'zabbix[host,snmp,available]'
          description: |
            Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list.
            Possible values:
            0 - not available
            1 - available
            2 - unknown
          valuemap:
            name: zabbix.host.available
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 2b56c7cfef454441863d2f7cc01a330f
              expression: 'max(/D-Link DES_DGS Switch by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
              name: 'D-Link DES_DGS Switch: No SNMP data collection'
              opdata: 'Current state: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'SNMP is not available for polling. Please check device connectivity and SNMP settings.'
              dependencies:
                - name: 'D-Link DES_DGS Switch: Unavailable by ICMP ping'
                  expression: 'max(/D-Link DES_DGS Switch by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
      discovery_rules:
        - uuid: 8e7fe508f2ee4304a6097cabaf93b44f
          name: 'FAN Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.171.12.11.1.7.1.2,{#STATUS},1.3.6.1.4.1.171.12.11.1.7.1.3]'
          key: fan.discovery
          delay: 1h
          filter:
            conditions:
              - macro: '{#STATUS}'
                value: '[^0]'
          description: 'swFanID of EQUIPMENT-MIB::swFanTable'
          item_prototypes:
            - uuid: 9fec4303859d411db13a470374862232
              name: '#{#SNMPVALUE}: Fan status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.171.12.11.1.7.1.3.{#SNMPINDEX}]'
              key: 'sensor.fan.status[swFanStatus.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: EQUIPMENT-MIB
                Indicates the current fan status.
                speed-0     : If the fan function is normal and the fan does not spin            due to the temperature not  reaching the threshold, the status of the fan is speed 0.
                speed-low   : Fan spin using the lowest speed.
                speed-middle: Fan spin using the middle speed.
                speed-high  : Fan spin using the highest speed.
              valuemap:
                name: 'EQUIPMENT-MIB::swFanStatus'
              tags:
                - tag: component
                  value: fan
              trigger_prototypes:
                - uuid: e8cb2d8bc3ee44c58c5111d3ead41d1b
                  expression: 'count(/D-Link DES_DGS Switch by SNMP/sensor.fan.status[swFanStatus.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS}")=1'
                  name: 'D-Link DES_DGS Switch: #{#SNMPVALUE}: Fan is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the fan unit'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
        - uuid: 0e1d87089c084979ade1f58cdedd42f8
          name: 'Memory Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.171.12.1.1.9.1.1]'
          key: memory.discovery
          delay: 1h
          item_prototypes:
            - uuid: ec82ef56dce54315a905721bd0cabaa6
              name: '#{#SNMPVALUE}: Memory utilization'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.171.12.1.1.9.1.4.{#SNMPINDEX}]'
              key: 'vm.memory.util[agentDRAMutilization.{#SNMPINDEX}]'
              value_type: FLOAT
              units: '%'
              description: |
                MIB: DLINK-AGENT-MIB
                The percentage of used DRAM memory of the total DRAM memory available.The value will be between 0%(idle) and 100%(very busy)
              tags:
                - tag: component
                  value: memory
              trigger_prototypes:
                - uuid: 29352d2cb80f47d98ca6c6d6d366a29f
                  expression: 'min(/D-Link DES_DGS Switch by SNMP/vm.memory.util[agentDRAMutilization.{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX}'
                  name: 'D-Link DES_DGS Switch: #{#SNMPVALUE}: High memory utilization'
                  event_name: 'D-Link DES_DGS Switch: #{#SNMPVALUE}: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
                  priority: AVERAGE
                  description: 'The system is running out of free memory.'
                  tags:
                    - tag: scope
                      value: capacity
                    - tag: scope
                      value: performance
          graph_prototypes:
            - uuid: 769bb6f6d6cd455fbbcd1e75e44d24ec
              name: '#{#SNMPVALUE}: Memory utilization'
              ymin_type_1: FIXED
              ymax_type_1: FIXED
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'D-Link DES_DGS Switch by SNMP'
                    key: 'vm.memory.util[agentDRAMutilization.{#SNMPINDEX}]'
        - uuid: 86c7d09fe6bc4a93b634230290bcf851
          name: 'Network interfaces discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFADMINSTATUS},1.3.6.1.2.1.2.2.1.7,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2,{#IFTYPE},1.3.6.1.2.1.2.2.1.3]'
          key: net.if.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.MATCHES}'
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.MATCHES}'
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.MATCHES}'
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.MATCHES}'
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.MATCHES}'
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.MATCHES}'
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovering interfaces from IF-MIB.'
          item_prototypes:
            - uuid: c0ce842d655a4bbba3759c557d8fba27
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.13.{#SNMPINDEX}]'
              key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of inbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 05ac64b0b74e4e048bbf86c077f23d40
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.14.{#SNMPINDEX}]'
              key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of inbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: b80ca5f6547b42cba3b873fe58448988
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits received'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}]'
              key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets received on the interface, including framing characters. This object is a 64-bit version of ifInOctets. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: b2eafe0414924c82879bf9f389e7936f
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of outbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 151f1946a56d4ce7b7fe30d2e92f97ef
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.20.{#SNMPINDEX}]'
              key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of outbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of outbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: e9ff8b57e89c4dc787f35ea8dd9c3040
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}]'
              key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets transmitted out of the interface, including framing characters. This object is a 64-bit version of ifOutOctets.Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: fd5324614a554b20bead9a9300c3b800
              name: 'Interface {#IFNAME}({#IFALIAS}): Speed'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}]'
              key: 'net.if.speed[ifHighSpeed.{#SNMPINDEX}]'
              delay: 5m
              trends: '0'
              units: bps
              description: |
                MIB: IF-MIB
                An estimate of the interface's current bandwidth in units of 1,000,000 bits per second. If this object reports a value of `n' then the speed of the interface is somewhere in the range of `n-500,000' to`n+499,999'.  For interfaces which do not vary in bandwidth or for those where no accurate estimation can be made, this object should contain the nominal bandwidth. For a sub-layer which has no concept of bandwidth, this object should be zero.
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1000000'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: b3f4568fbaed497aaf2ebcbfc1a385a6
              name: 'Interface {#IFNAME}({#IFALIAS}): Operational status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}]'
              key: 'net.if.status[ifOperStatus.{#SNMPINDEX}]'
              trends: '0'
              description: |
                MIB: IF-MIB
                The current operational state of the interface.
                - The testing(3) state indicates that no operational packet scan be passed
                - If ifAdminStatus is down(2) then ifOperStatus should be down(2)
                - If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic
                - It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection)
                - It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state
                - It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components.
              valuemap:
                name: 'IF-MIB::ifOperStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: 6a8f2b5cd5ec4b8a9e5d35f551a756e0
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
                  name: 'D-Link DES_DGS Switch: Interface {#IFNAME}({#IFALIAS}): Link down'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: |
                    This trigger expression works as follows:
                    1. It can be triggered if the operations status is down.
                    2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine the context macro to "0", marking this interface as not important. No new trigger will be fired if this interface is down.
                    3. `{TEMPLATE_NAME:METRIC.diff()}=1` - the trigger fires only if the operational status was up to (1) sometime before (so, does not fire for "eternal off" interfaces.)
                    
                    WARNING: if closed manually - it will not fire again on the next poll, because of .diff.
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 2c8eadb9d69f4adb833f01bed8e18531
              name: 'Interface {#IFNAME}({#IFALIAS}): Interface type'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.3.{#SNMPINDEX}]'
              key: 'net.if.type[ifType.{#SNMPINDEX}]'
              delay: 1h
              trends: '0'
              description: |
                MIB: IF-MIB
                The type of interface.
                Additional values for ifType are assigned by the Internet Assigned Numbers Authority (IANA),
                through updating the syntax of the IANAifType textual convention.
              valuemap:
                name: 'IF-MIB::ifType'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
          trigger_prototypes:
            - uuid: e645a0cf5e4f47a5af03f0108070d4e4
              expression: |
                change(/D-Link DES_DGS Switch by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])<0 and last(/D-Link DES_DGS Switch by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
                and (
                last(/D-Link DES_DGS Switch by SNMP/net.if.type[ifType.{#SNMPINDEX}])=6 or
                last(/D-Link DES_DGS Switch by SNMP/net.if.type[ifType.{#SNMPINDEX}])=7 or
                last(/D-Link DES_DGS Switch by SNMP/net.if.type[ifType.{#SNMPINDEX}])=11 or
                last(/D-Link DES_DGS Switch by SNMP/net.if.type[ifType.{#SNMPINDEX}])=62 or
                last(/D-Link DES_DGS Switch by SNMP/net.if.type[ifType.{#SNMPINDEX}])=69 or
                last(/D-Link DES_DGS Switch by SNMP/net.if.type[ifType.{#SNMPINDEX}])=117
                )
                and
                (last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2)
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                (change(/D-Link DES_DGS Switch by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 and last(/D-Link DES_DGS Switch by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}],#2)>0) or
                (last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2)
              name: 'D-Link DES_DGS Switch: Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before'
              opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
              priority: INFO
              description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              dependencies:
                - name: 'D-Link DES_DGS Switch: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: 8afaa3fc79404673880795d7d7dbabd8
              expression: |
                (avg(/D-Link DES_DGS Switch by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/D-Link DES_DGS Switch by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) or
                avg(/D-Link DES_DGS Switch by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/D-Link DES_DGS Switch by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])) and
                last(/D-Link DES_DGS Switch by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                avg(/D-Link DES_DGS Switch by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/D-Link DES_DGS Switch by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) and
                avg(/D-Link DES_DGS Switch by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/D-Link DES_DGS Switch by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])
              name: 'D-Link DES_DGS Switch: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage'
              event_name: 'D-Link DES_DGS Switch: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
              opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'The utilization of the network interface is close to its estimated maximum bandwidth.'
              manual_close: 'YES'
              dependencies:
                - name: 'D-Link DES_DGS Switch: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: 28ae5085f4ab432ea281658f1439ada1
              expression: |
                min(/D-Link DES_DGS Switch by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
                or min(/D-Link DES_DGS Switch by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                max(/D-Link DES_DGS Switch by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
                and max(/D-Link DES_DGS Switch by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
              name: 'D-Link DES_DGS Switch: Interface {#IFNAME}({#IFALIAS}): High error rate'
              event_name: 'D-Link DES_DGS Switch: Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
              opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'It recovers when it is below 80% of the `{$IF.ERRORS.WARN:"{#IFNAME}"}` threshold.'
              manual_close: 'YES'
              dependencies:
                - name: 'D-Link DES_DGS Switch: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/D-Link DES_DGS Switch by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
          graph_prototypes:
            - uuid: 5742d0a3c579424e951c8b48f626fe4e
              name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'D-Link DES_DGS Switch by SNMP'
                    key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
                - sortorder: '1'
                  drawtype: BOLD_LINE
                  color: F63100
                  item:
                    host: 'D-Link DES_DGS Switch by SNMP'
                    key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
                - sortorder: '2'
                  color: 00611C
                  yaxisside: RIGHT
                  item:
                    host: 'D-Link DES_DGS Switch by SNMP'
                    key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
                - sortorder: '3'
                  color: F7941D
                  yaxisside: RIGHT
                  item:
                    host: 'D-Link DES_DGS Switch by SNMP'
                    key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
                - sortorder: '4'
                  color: FC6EA3
                  yaxisside: RIGHT
                  item:
                    host: 'D-Link DES_DGS Switch by SNMP'
                    key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
                - sortorder: '5'
                  color: 6C59DC
                  yaxisside: RIGHT
                  item:
                    host: 'D-Link DES_DGS Switch by SNMP'
                    key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
        - uuid: eb78fe16041440cb95d98ae01d53007d
          name: 'EtherLike-MIB Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.2.1.10.7.2.1.19,{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2]'
          key: net.if.duplex.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFOPERSTATUS}'
                value: '1'
              - macro: '{#SNMPVALUE}'
                value: (2|3)
          description: 'Discovering interfaces from IF-MIB and EtherLike-MIB. Interfaces with up(1) Operational Status are discovered.'
          item_prototypes:
            - uuid: 986a658678e2465997ad152317f6cf34
              name: 'Interface {#IFNAME}({#IFALIAS}): Duplex status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.10.7.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}]'
              description: |
                MIB: EtherLike-MIB
                The current mode of operation of the MAC
                entity.  'unknown' indicates that the current
                duplex mode could not be determined.
                
                Management control of the duplex mode is
                accomplished through the MAU MIB.  When
                an interface does not support autonegotiation,
                or when autonegotiation is not enabled, the
                duplex mode is controlled using
                ifMauDefaultType.  When autonegotiation is
                supported and enabled, duplex mode is controlled
                using ifMauAutoNegAdvertisedBits.  In either
                case, the currently operating duplex mode is
                reflected both in this object and in ifMauType.
                
                Note that this object provides redundant
                information with ifMauType.  Normally, redundant
                objects are discouraged.  However, in this
                instance, it allows a management application to
                determine the duplex status of an interface
                without having to know every possible value of
                ifMauType.  This was felt to be sufficiently
                valuable to justify the redundancy.
                Reference: [IEEE 802.3 Std.], 30.3.1.1.32,aDuplexStatus.
              valuemap:
                name: 'EtherLike-MIB::dot3StatsDuplexStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: d68607dce04f429ab8cd7e8adb5b60f1
                  expression: 'last(/D-Link DES_DGS Switch by SNMP/net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}])=2'
                  name: 'D-Link DES_DGS Switch: Interface {#IFNAME}({#IFALIAS}): In half-duplex mode'
                  priority: WARNING
                  description: 'Please check autonegotiation settings and cabling.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: performance
          preprocessing:
            - type: JAVASCRIPT
              parameters:
                - |
                  try {
                  	var data = JSON.parse(value);
                  }
                  catch (error) {
                  	throw 'Failed to parse JSON of EtherLike-MIB discovery.';
                  }
                  var fields = ['{#SNMPVALUE}','{#IFOPERSTATUS}','{#IFALIAS}','{#IFNAME}','{#IFDESCR}'];
                  data.forEach(function (element) {
                  	fields.forEach(function (field) {
                  		element[field] = element[field] || '';
                  	});
                  });
                  return JSON.stringify(data);
        - uuid: 57ec484412604bf091a2b8a5be1dff3e
          name: 'PSU Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.171.12.11.1.6.1.2,{#STATUS},1.3.6.1.4.1.171.12.11.1.6.1.3]'
          key: psu.discovery
          delay: 1h
          filter:
            conditions:
              - macro: '{#STATUS}'
                value: '[^0]'
          description: 'swPowerID of EQUIPMENT-MIB::swPowerTable'
          item_prototypes:
            - uuid: 7e87cca325f94ac091723f4dcef5ef26
              name: '#{#SNMPVALUE}: Power supply status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.171.12.11.1.6.1.3.{#SNMPINDEX}]'
              key: 'sensor.psu.status[swPowerStatus.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: EQUIPMENT-MIB
                Indicates the current power status.
                lowVoltage : The voltage of the power unit is too low.
                overCurrent: The current of the power unit is too high.
                working    : The power unit is working normally.
                fail       : The power unit has failed.
                connect    : The power unit is connected but not powered on.
                disconnect : The power unit is not connected.
              valuemap:
                name: 'EQUIPMENT-MIB::swPowerStatus'
              tags:
                - tag: component
                  value: power
              trigger_prototypes:
                - uuid: aabaa197e62649cd929353f131c3fa00
                  expression: 'count(/D-Link DES_DGS Switch by SNMP/sensor.psu.status[swPowerStatus.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS}")=1'
                  name: 'D-Link DES_DGS Switch: #{#SNMPVALUE}: Power supply is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the power supply unit for errors'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
        - uuid: 17702e5430f943fc9ebeefdbdd363e58
          name: 'Temperature Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.171.12.11.1.8.1.1]'
          key: temperature.discovery
          delay: 1h
          item_prototypes:
            - uuid: a84312b0296a432a948e6065c20749f1
              name: '#{#SNMPVALUE}: Temperature'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.171.12.11.1.8.1.2.{#SNMPINDEX}]'
              key: 'sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}]'
              delay: 3m
              value_type: FLOAT
              units: °C
              description: |
                MIB: EQUIPMENT-MIB
                The shelf current temperature.
              tags:
                - tag: component
                  value: temperature
              trigger_prototypes:
                - uuid: 0cbd0c61e07245af863a19f296f38195
                  expression: 'avg(/D-Link DES_DGS Switch by SNMP/sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/D-Link DES_DGS Switch by SNMP/sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
                  name: 'D-Link DES_DGS Switch: #{#SNMPVALUE}: Temperature is above critical threshold'
                  event_name: 'D-Link DES_DGS Switch: #{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: HIGH
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: bc0c87dbf83e49dab264e9f2bf1bb418
                  expression: 'avg(/D-Link DES_DGS Switch by SNMP/sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}],5m)>{$TEMP_WARN:"{#SNMPVALUE}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/D-Link DES_DGS Switch by SNMP/sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}],5m)<{$TEMP_WARN:"{#SNMPVALUE}"}-3'
                  name: 'D-Link DES_DGS Switch: #{#SNMPVALUE}: Temperature is above warning threshold'
                  event_name: 'D-Link DES_DGS Switch: #{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:"{#SNMPVALUE}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  dependencies:
                    - name: 'D-Link DES_DGS Switch: #{#SNMPVALUE}: Temperature is above critical threshold'
                      expression: 'avg(/D-Link DES_DGS Switch by SNMP/sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}'
                      recovery_expression: 'max(/D-Link DES_DGS Switch by SNMP/sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: 8d93aea3774d4a3bbd98127273c648d1
                  expression: 'avg(/D-Link DES_DGS Switch by SNMP/sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'min(/D-Link DES_DGS Switch by SNMP/sensor.temp.value[swTemperatureCurrent.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}+3'
                  name: 'D-Link DES_DGS Switch: #{#SNMPVALUE}: Temperature is too low'
                  event_name: 'D-Link DES_DGS Switch: #{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
      tags:
        - tag: class
          value: network
        - tag: target
          value: des-dgs
        - tag: target
          value: dlink
      macros:
        - macro: '{$CPU.UTIL.CRIT}'
          value: '90'
          config:
            type: TEXT
            priority: '1'
            section_name: Thresholds
            label: 'Threshold for CPU utilization (critical)'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$FAN_CRIT_STATUS}'
          value: '2'
          config:
            type: TEXT
            priority: '4'
            section_name: Other
            label: 'Fan critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_LOSS_WARN}'
          value: '20'
          description: 'Warning threshold of ICMP packet loss in %.'
          config:
            type: TEXT
            priority: '9'
            section_name: Thresholds
            label: 'Threshold of ICMP packet loss'
            description: 'Warning threshold of ICMP packet loss in %. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_RESPONSE_TIME_WARN}'
          value: '0.15'
          description: 'Warning threshold of the average ICMP response time in seconds.'
          config:
            type: TEXT
            priority: '10'
            section_name: Thresholds
            label: 'Threshold of the average ICMP response'
            description: 'Warning threshold of the average ICMP response time in seconds. No less than 0.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.ERRORS.WARN}'
          value: '2'
          description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
          config:
            type: TEXT
            priority: '11'
            section_name: Thresholds
            label: 'Threshold of error packet rate'
            description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '12'
            section_name: Thresholds
            label: 'The threshold in the interface utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IFCONTROL}'
          value: '1'
          config:
            type: TEXT
            priority: '13'
            section_name: Thresholds
            label: 'Interfaces control'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$MEMORY.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '7'
            section_name: Thresholds
            label: 'Threshold for memory utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$NET.IF.IFADMINSTATUS.MATCHES}'
          value: '^.*'
          config:
            type: TEXT
            priority: '18'
            section_name: Filters
            label: 'Filter for network interface by adminstatus'
        - macro: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
          value: ^2$
          description: 'Ignore down(2) administrative status'
          config:
            type: TEXT
            priority: '19'
            section_name: Filters
            label: 'Filter for network interface by adminstatus (exclude)'
        - macro: '{$NET.IF.IFALIAS.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '22'
            section_name: Filters
            label: 'Filter for network interfaces by alias'
        - macro: '{$NET.IF.IFALIAS.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '23'
            section_name: Filters
            label: 'Filter for network interfaces by alias (exclude)'
        - macro: '{$NET.IF.IFDESCR.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '20'
            section_name: Filters
            label: 'Filter for network interfaces by description'
        - macro: '{$NET.IF.IFDESCR.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '21'
            section_name: Filters
            label: 'Filter for network interfaces by description (exclude)'
        - macro: '{$NET.IF.IFNAME.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '14'
            section_name: Filters
            label: 'Filter for network interface by name'
        - macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
          value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9a-z]+$|docker[0-9]+|br-[a-z0-9]{12})'
          description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
          config:
            type: TEXT
            priority: '15'
            section_name: Filters
            label: 'Filter for network interface by name (exclude)'
            description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
        - macro: '{$NET.IF.IFOPERSTATUS.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '16'
            section_name: Filters
            label: 'Filter for network interface by status'
        - macro: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
          value: ^6$
          description: 'Ignore notPresent(6)'
          config:
            type: TEXT
            priority: '17'
            section_name: Filters
            label: 'Filter for network interface by status (exclude)'
        - macro: '{$NET.IF.IFTYPE.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '24'
            section_name: Filters
            label: 'Filter for network interfaces by type'
        - macro: '{$NET.IF.IFTYPE.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '25'
            section_name: Filters
            label: 'Filter for network interfaces by type (exclude)'
        - macro: '{$PSU_CRIT_STATUS}'
          value: '4'
          config:
            type: TEXT
            priority: '3'
            section_name: Other
            label: 'Power supply critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$SNMP.TIMEOUT}'
          value: 5m
          description: 'Time interval for the SNMP availability trigger.'
          config:
            type: TEXT
            priority: '8'
            section_name: Other
            label: 'Time interval'
            description: 'Time interval for the SNMP availability trigger.'
        - macro: '{$TEMP_CRIT}'
          value: '75'
          config:
            type: TEXT
            priority: '5'
            section_name: Thresholds
            label: 'Threshold for temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_CRIT_LOW}'
          value: '5'
          config:
            type: TEXT
            priority: '2'
            section_name: Thresholds
            label: 'Threshold for low temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_WARN}'
          value: '65'
          config:
            type: TEXT
            priority: '6'
            section_name: Thresholds
            label: 'Threshold for temperature (warning)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
      dashboards:
        - uuid: 46b0449a409740cabef1f03f10b5e453
          name: 'Network interfaces'
          pages:
            - widgets:
                - type: graphprototype
                  width: '72'
                  height: '5'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'D-Link DES_DGS Switch by SNMP'
                        name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
                    - type: STRING
                      name: reference
                      value: AAAAA
      valuemaps:
        - uuid: e7ab460cf1bf4fca8afc22566257fc3a
          name: 'EQUIPMENT-MIB::swFanStatus'
          mappings:
            - value: '0'
              newvalue: other
            - value: '1'
              newvalue: working
            - value: '2'
              newvalue: fail
            - value: '3'
              newvalue: speed-0
            - value: '4'
              newvalue: speed-low
            - value: '5'
              newvalue: speed-middle
            - value: '6'
              newvalue: speed-high
        - uuid: a46e6b21933f4aa7be17f9f11b1356ee
          name: 'EQUIPMENT-MIB::swPowerStatus'
          mappings:
            - value: '0'
              newvalue: other
            - value: '1'
              newvalue: lowVoltage
            - value: '2'
              newvalue: overCurrent
            - value: '3'
              newvalue: working
            - value: '4'
              newvalue: fail
            - value: '5'
              newvalue: connect
            - value: '6'
              newvalue: disconnect
        - uuid: a5032b272e4c4208b16ce190833103b0
          name: 'EtherLike-MIB::dot3StatsDuplexStatus'
          mappings:
            - value: '1'
              newvalue: unknown
            - value: '2'
              newvalue: halfDuplex
            - value: '3'
              newvalue: fullDuplex
        - uuid: 2bdac31f40b04baaa131ebedde8d5077
          name: 'IF-MIB::ifOperStatus'
          mappings:
            - value: '1'
              newvalue: up
            - value: '2'
              newvalue: down
            - value: '4'
              newvalue: unknown
            - value: '5'
              newvalue: dormant
            - value: '6'
              newvalue: notPresent
            - value: '7'
              newvalue: lowerLayerDown
        - uuid: d050b91fbb5c406b8b59e4e66d3c783e
          name: 'IF-MIB::ifType'
          mappings:
            - value: '1'
              newvalue: other
            - value: '2'
              newvalue: regular1822
            - value: '3'
              newvalue: hdh1822
            - value: '4'
              newvalue: ddnX25
            - value: '5'
              newvalue: rfc877x25
            - value: '6'
              newvalue: ethernetCsmacd
            - value: '7'
              newvalue: iso88023Csmacd
            - value: '8'
              newvalue: iso88024TokenBus
            - value: '9'
              newvalue: iso88025TokenRing
            - value: '10'
              newvalue: iso88026Man
            - value: '11'
              newvalue: starLan
            - value: '12'
              newvalue: proteon10Mbit
            - value: '13'
              newvalue: proteon80Mbit
            - value: '14'
              newvalue: hyperchannel
            - value: '15'
              newvalue: fddi
            - value: '16'
              newvalue: lapb
            - value: '17'
              newvalue: sdlc
            - value: '18'
              newvalue: ds1
            - value: '19'
              newvalue: e1
            - value: '20'
              newvalue: basicISDN
            - value: '21'
              newvalue: primaryISDN
            - value: '22'
              newvalue: propPointToPointSerial
            - value: '23'
              newvalue: ppp
            - value: '24'
              newvalue: softwareLoopback
            - value: '25'
              newvalue: eon
            - value: '26'
              newvalue: ethernet3Mbit
            - value: '27'
              newvalue: nsip
            - value: '28'
              newvalue: slip
            - value: '29'
              newvalue: ultra
            - value: '30'
              newvalue: ds3
            - value: '31'
              newvalue: sip
            - value: '32'
              newvalue: frameRelay
            - value: '33'
              newvalue: rs232
            - value: '34'
              newvalue: para
            - value: '35'
              newvalue: arcnet
            - value: '36'
              newvalue: arcnetPlus
            - value: '37'
              newvalue: atm
            - value: '38'
              newvalue: miox25
            - value: '39'
              newvalue: sonet
            - value: '40'
              newvalue: x25ple
            - value: '41'
              newvalue: iso88022llc
            - value: '42'
              newvalue: localTalk
            - value: '43'
              newvalue: smdsDxi
            - value: '44'
              newvalue: frameRelayService
            - value: '45'
              newvalue: v35
            - value: '46'
              newvalue: hssi
            - value: '47'
              newvalue: hippi
            - value: '48'
              newvalue: modem
            - value: '49'
              newvalue: aal5
            - value: '50'
              newvalue: sonetPath
            - value: '51'
              newvalue: sonetVT
            - value: '52'
              newvalue: smdsIcip
            - value: '53'
              newvalue: propVirtual
            - value: '54'
              newvalue: propMultiplexor
            - value: '55'
              newvalue: ieee80212
            - value: '56'
              newvalue: fibreChannel
            - value: '57'
              newvalue: hippiInterface
            - value: '58'
              newvalue: frameRelayInterconnect
            - value: '59'
              newvalue: aflane8023
            - value: '60'
              newvalue: aflane8025
            - value: '61'
              newvalue: cctEmul
            - value: '62'
              newvalue: fastEther
            - value: '63'
              newvalue: isdn
            - value: '64'
              newvalue: v11
            - value: '65'
              newvalue: v36
            - value: '66'
              newvalue: g703at64k
            - value: '67'
              newvalue: g703at2mb
            - value: '68'
              newvalue: qllc
            - value: '69'
              newvalue: fastEtherFX
            - value: '70'
              newvalue: channel
            - value: '71'
              newvalue: ieee80211
            - value: '72'
              newvalue: ibm370parChan
            - value: '73'
              newvalue: escon
            - value: '74'
              newvalue: dlsw
            - value: '75'
              newvalue: isdns
            - value: '76'
              newvalue: isdnu
            - value: '77'
              newvalue: lapd
            - value: '78'
              newvalue: ipSwitch
            - value: '79'
              newvalue: rsrb
            - value: '80'
              newvalue: atmLogical
            - value: '81'
              newvalue: ds0
            - value: '82'
              newvalue: ds0Bundle
            - value: '83'
              newvalue: bsc
            - value: '84'
              newvalue: async
            - value: '85'
              newvalue: cnr
            - value: '86'
              newvalue: iso88025Dtr
            - value: '87'
              newvalue: eplrs
            - value: '88'
              newvalue: arap
            - value: '89'
              newvalue: propCnls
            - value: '90'
              newvalue: hostPad
            - value: '91'
              newvalue: termPad
            - value: '92'
              newvalue: frameRelayMPI
            - value: '93'
              newvalue: x213
            - value: '94'
              newvalue: adsl
            - value: '95'
              newvalue: radsl
            - value: '96'
              newvalue: sdsl
            - value: '97'
              newvalue: vdsl
            - value: '98'
              newvalue: iso88025CRFPInt
            - value: '99'
              newvalue: myrinet
            - value: '100'
              newvalue: voiceEM
            - value: '101'
              newvalue: voiceFXO
            - value: '102'
              newvalue: voiceFXS
            - value: '103'
              newvalue: voiceEncap
            - value: '104'
              newvalue: voiceOverIp
            - value: '105'
              newvalue: atmDxi
            - value: '106'
              newvalue: atmFuni
            - value: '107'
              newvalue: atmIma
            - value: '108'
              newvalue: pppMultilinkBundle
            - value: '109'
              newvalue: ipOverCdlc
            - value: '110'
              newvalue: ipOverClaw
            - value: '111'
              newvalue: stackToStack
            - value: '112'
              newvalue: virtualIpAddress
            - value: '113'
              newvalue: mpc
            - value: '114'
              newvalue: ipOverAtm
            - value: '115'
              newvalue: iso88025Fiber
            - value: '116'
              newvalue: tdlc
            - value: '117'
              newvalue: gigabitEthernet
            - value: '118'
              newvalue: hdlc
            - value: '119'
              newvalue: lapf
            - value: '120'
              newvalue: v37
            - value: '121'
              newvalue: x25mlp
            - value: '122'
              newvalue: x25huntGroup
            - value: '123'
              newvalue: trasnpHdlc
            - value: '124'
              newvalue: interleave
            - value: '125'
              newvalue: fast
            - value: '126'
              newvalue: ip
            - value: '127'
              newvalue: docsCableMaclayer
            - value: '128'
              newvalue: docsCableDownstream
            - value: '129'
              newvalue: docsCableUpstream
            - value: '130'
              newvalue: a12MppSwitch
            - value: '131'
              newvalue: tunnel
            - value: '132'
              newvalue: coffee
            - value: '133'
              newvalue: ces
            - value: '134'
              newvalue: atmSubInterface
            - value: '135'
              newvalue: l2vlan
            - value: '136'
              newvalue: l3ipvlan
            - value: '137'
              newvalue: l3ipxvlan
            - value: '138'
              newvalue: digitalPowerline
            - value: '139'
              newvalue: mediaMailOverIp
            - value: '140'
              newvalue: dtm
            - value: '141'
              newvalue: dcn
            - value: '142'
              newvalue: ipForward
            - value: '143'
              newvalue: msdsl
            - value: '144'
              newvalue: ieee1394
            - value: '145'
              newvalue: if-gsn
            - value: '146'
              newvalue: dvbRccMacLayer
            - value: '147'
              newvalue: dvbRccDownstream
            - value: '148'
              newvalue: dvbRccUpstream
            - value: '149'
              newvalue: atmVirtual
            - value: '150'
              newvalue: mplsTunnel
            - value: '151'
              newvalue: srp
            - value: '152'
              newvalue: voiceOverAtm
            - value: '153'
              newvalue: voiceOverFrameRelay
            - value: '154'
              newvalue: idsl
            - value: '155'
              newvalue: compositeLink
            - value: '156'
              newvalue: ss7SigLink
            - value: '157'
              newvalue: propWirelessP2P
            - value: '158'
              newvalue: frForward
            - value: '159'
              newvalue: rfc1483
            - value: '160'
              newvalue: usb
            - value: '161'
              newvalue: ieee8023adLag
            - value: '162'
              newvalue: bgppolicyaccounting
            - value: '163'
              newvalue: frf16MfrBundle
            - value: '164'
              newvalue: h323Gatekeeper
            - value: '165'
              newvalue: h323Proxy
            - value: '166'
              newvalue: mpls
            - value: '167'
              newvalue: mfSigLink
            - value: '168'
              newvalue: hdsl2
            - value: '169'
              newvalue: shdsl
            - value: '170'
              newvalue: ds1FDL
            - value: '171'
              newvalue: pos
            - value: '172'
              newvalue: dvbAsiIn
            - value: '173'
              newvalue: dvbAsiOut
            - value: '174'
              newvalue: plc
            - value: '175'
              newvalue: nfas
            - value: '176'
              newvalue: tr008
            - value: '177'
              newvalue: gr303RDT
            - value: '178'
              newvalue: gr303IDT
            - value: '179'
              newvalue: isup
            - value: '180'
              newvalue: propDocsWirelessMaclayer
            - value: '181'
              newvalue: propDocsWirelessDownstream
            - value: '182'
              newvalue: propDocsWirelessUpstream
            - value: '183'
              newvalue: hiperlan2
            - value: '184'
              newvalue: propBWAp2Mp
            - value: '185'
              newvalue: sonetOverheadChannel
            - value: '186'
              newvalue: digitalWrapperOverheadChannel
            - value: '187'
              newvalue: aal2
            - value: '188'
              newvalue: radioMAC
            - value: '189'
              newvalue: atmRadio
            - value: '190'
              newvalue: imt
            - value: '191'
              newvalue: mvl
            - value: '192'
              newvalue: reachDSL
            - value: '193'
              newvalue: frDlciEndPt
            - value: '194'
              newvalue: atmVciEndPt
            - value: '195'
              newvalue: opticalChannel
            - value: '196'
              newvalue: opticalTransport
            - value: '197'
              newvalue: propAtm
            - value: '198'
              newvalue: voiceOverCable
            - value: '199'
              newvalue: infiniband
            - value: '200'
              newvalue: teLink
            - value: '201'
              newvalue: q2931
            - value: '202'
              newvalue: virtualTg
            - value: '203'
              newvalue: sipTg
            - value: '204'
              newvalue: sipSig
            - value: '205'
              newvalue: docsCableUpstreamChannel
            - value: '206'
              newvalue: econet
            - value: '207'
              newvalue: pon155
            - value: '208'
              newvalue: pon622
            - value: '209'
              newvalue: bridge
            - value: '210'
              newvalue: linegroup
            - value: '211'
              newvalue: voiceEMFGD
            - value: '212'
              newvalue: voiceFGDEANA
            - value: '213'
              newvalue: voiceDID
            - value: '214'
              newvalue: mpegTransport
            - value: '215'
              newvalue: sixToFour
            - value: '216'
              newvalue: gtp
            - value: '217'
              newvalue: pdnEtherLoop1
            - value: '218'
              newvalue: pdnEtherLoop2
            - value: '219'
              newvalue: opticalChannelGroup
            - value: '220'
              newvalue: homepna
            - value: '221'
              newvalue: gfp
            - value: '222'
              newvalue: ciscoISLvlan
            - value: '223'
              newvalue: actelisMetaLOOP
            - value: '224'
              newvalue: fcipLink
            - value: '225'
              newvalue: rpr
            - value: '226'
              newvalue: qam
            - value: '227'
              newvalue: lmp
            - value: '228'
              newvalue: cblVectaStar
            - value: '229'
              newvalue: docsCableMCmtsDownstream
            - value: '230'
              newvalue: adsl2
            - value: '231'
              newvalue: macSecControlledIF
            - value: '232'
              newvalue: macSecUncontrolledIF
            - value: '233'
              newvalue: aviciOpticalEther
            - value: '234'
              newvalue: atmbond
            - value: '235'
              newvalue: voiceFGDOS
            - value: '236'
              newvalue: mocaVersion1
            - value: '237'
              newvalue: ieee80216WMAN
            - value: '238'
              newvalue: adsl2plus
            - value: '239'
              newvalue: dvbRcsMacLayer
            - value: '240'
              newvalue: dvbTdm
            - value: '241'
              newvalue: dvbRcsTdma
            - value: '242'
              newvalue: x86Laps
            - value: '243'
              newvalue: wwanPP
            - value: '244'
              newvalue: wwanPP2
            - value: '245'
              newvalue: voiceEBS
            - value: '246'
              newvalue: ifPwType
            - value: '247'
              newvalue: ilan
            - value: '248'
              newvalue: pip
            - value: '249'
              newvalue: aluELP
            - value: '250'
              newvalue: gpon
            - value: '251'
              newvalue: vdsl2
            - value: '252'
              newvalue: capwapDot11Profile
            - value: '253'
              newvalue: capwapDot11Bss
            - value: '254'
              newvalue: capwapWtpVirtualRadio
            - value: '255'
              newvalue: bits
            - value: '256'
              newvalue: docsCableUpstreamRfPort
            - value: '257'
              newvalue: cableDownstreamRfPort
            - value: '258'
              newvalue: vmwareVirtualNic
            - value: '259'
              newvalue: ieee802154
            - value: '260'
              newvalue: otnOdu
            - value: '261'
              newvalue: otnOtu
            - value: '262'
              newvalue: ifVfiType
            - value: '263'
              newvalue: g9981
            - value: '264'
              newvalue: g9982
            - value: '265'
              newvalue: g9983
            - value: '266'
              newvalue: aluEpon
            - value: '267'
              newvalue: aluEponOnu
            - value: '268'
              newvalue: aluEponPhysicalUni
            - value: '269'
              newvalue: aluEponLogicalLink
            - value: '270'
              newvalue: aluGponOnu
            - value: '271'
              newvalue: aluGponPhysicalUni
            - value: '272'
              newvalue: vmwareNicTeam
            - value: '277'
              newvalue: docsOfdmDownstream
            - value: '278'
              newvalue: docsOfdmaUpstream
            - value: '279'
              newvalue: gfast
            - value: '280'
              newvalue: sdci
            - value: '281'
              newvalue: xboxWireless
            - value: '282'
              newvalue: fastdsl
            - value: '283'
              newvalue: docsCableScte55d1FwdOob
            - value: '284'
              newvalue: docsCableScte55d1RetOob
            - value: '285'
              newvalue: docsCableScte55d2DsOob
            - value: '286'
              newvalue: docsCableScte55d2UsOob
            - value: '287'
              newvalue: docsCableNdf
            - value: '288'
              newvalue: docsCableNdr
            - value: '289'
              newvalue: ptm
            - value: '290'
              newvalue: ghn
        - uuid: 1012a8cf8ce34825aae3ffbb36ee1313
          name: 'Service state'
          mappings:
            - value: '0'
              newvalue: Down
            - value: '1'
              newvalue: Up
        - uuid: 93ebe10df982453aa98621c1f1d070f9
          name: zabbix.host.available
          mappings:
            - value: '0'
              newvalue: 'not available'
            - value: '1'
              newvalue: available
            - value: '2'
              newvalue: unknown
    - uuid: e5ec7acc7efc4ac491b6fa552ab077ae
      template: 'Dell Force S-Series by SNMP'
      name: 'Dell Force S-Series by SNMP'
      description: |
        Template Dell Force S-Series
        
        MIBs used:
        F10-S-SERIES-CHASSIS-MIB
        EtherLike-MIB
        HOST-RESOURCES-MIB
        SNMPv2-MIB
        IF-MIB
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Overview
        
        These high performance and low latency Gigabit Ethernet switches deliver the critical functionality that advanced data center network edges demand.
      vendor:
        name: Zabbix
        version: 8.0-2
      groups:
        - name: 'Templates/Network devices'
      items:
        - uuid: 3853e6ef8cbf4e59a64422659f66bbb7
          name: 'ICMP ping'
          type: SIMPLE
          key: icmpping
          description: |
            The host accessibility by ICMP ping.
            
            0 - ICMP ping fails;
            1 - ICMP ping successful.
          valuemap:
            name: 'Service state'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: f186488b337f4b1b8971992e8118d9cc
              expression: 'max(/Dell Force S-Series by SNMP/icmpping,#3)=0'
              name: 'Dell Force S-Series: Unavailable by ICMP ping'
              priority: HIGH
              description: 'Last three attempts returned timeout. Please check device connectivity.'
              tags:
                - tag: scope
                  value: availability
        - uuid: ef0432ffcf0546bf82177193866861cf
          name: 'ICMP loss'
          type: SIMPLE
          key: icmppingloss
          value_type: FLOAT
          units: '%'
          description: 'The percentage of lost packets.'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 46798adec54c47a38cb599773767a2a7
              expression: 'min(/Dell Force S-Series by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Dell Force S-Series by SNMP/icmppingloss,5m)<100'
              name: 'Dell Force S-Series: High ICMP ping loss'
              opdata: 'Loss: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'ICMP packets loss detected.'
              dependencies:
                - name: 'Dell Force S-Series: Unavailable by ICMP ping'
                  expression: 'max(/Dell Force S-Series by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: 9b56a2a725bf4632bc28c6a5d0c3d64b
          name: 'ICMP response time'
          type: SIMPLE
          key: icmppingsec
          value_type: FLOAT
          units: s
          description: 'The ICMP ping response time (in seconds).'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 04828676081147b4bfad0ad03385986e
              expression: 'avg(/Dell Force S-Series by SNMP/icmppingsec,5m)>{$ICMP_RESPONSE_TIME_WARN}'
              name: 'Dell Force S-Series: High ICMP ping response time'
              opdata: 'Value: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'Average ICMP response time is too high.'
              dependencies:
                - name: 'Dell Force S-Series: High ICMP ping loss'
                  expression: 'min(/Dell Force S-Series by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Dell Force S-Series by SNMP/icmppingloss,5m)<100'
                - name: 'Dell Force S-Series: Unavailable by ICMP ping'
                  expression: 'max(/Dell Force S-Series by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: ba8178338b0e41ac97b0265f98b90770
          name: 'SNMP traps (fallback)'
          type: SNMP_TRAP
          key: snmptrap.fallback
          value_type: LOG
          description: 'The item is used to collect all SNMP traps unmatched by other snmptrap items'
          logtimefmt: 'hh:mm:sszyyyy/MM/dd'
          tags:
            - tag: component
              value: network
        - uuid: d4df70f2c5f04ad2b7f1b4e8ab9a9993
          name: 'System contact details'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.4.0]'
          key: 'system.contact[sysContact.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string.
          inventory_link: CONTACT
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 804476e771374e22b8767f90f271654a
          name: 'System description'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: 'system.descr[sysDescr.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            A textual description of the entity. This value should
            include the full name and version identification of the system's hardware type, software operating-system, and
            networking software.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 5297253edb09463e8fdb6f1905e4f494
          name: 'Uptime (hardware)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.25.1.1.0]'
          key: 'system.hw.uptime[hrSystemUptime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: HOST-RESOURCES-MIB
            The amount of time since this host was last initialized. Note that this is different from sysUpTime in the SNMPv2-MIB [RFC1907] because sysUpTime is the uptime of the network management portion of the system.
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
              error_handler: CUSTOM_VALUE
              error_handler_params: '0'
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: f3d1970fc4404b4fa50a855433681105
          name: 'System location'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.6.0]'
          key: 'system.location[sysLocation.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            Physical location of the node (e.g., `equipment room`, `3rd floor`). If not provided, the value is a zero-length string.
          inventory_link: LOCATION
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: a36cccdaf24c4e82801ebb44eaa5e25a
          name: 'System name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.5.0]'
          key: system.name
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            An administratively-assigned name for this managed node.By convention, this is the node's fully-qualified domain name. If the name is unknown, the value is the zero-length string.
          inventory_link: NAME
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 2dc35c5813b042fd96f2ebc53f565799
              expression: 'last(/Dell Force S-Series by SNMP/system.name,#1)<>last(/Dell Force S-Series by SNMP/system.name,#2) and length(last(/Dell Force S-Series by SNMP/system.name))>0'
              name: 'Dell Force S-Series: System name has changed'
              event_name: 'Dell Force S-Series: System name has changed (new name: {ITEM.VALUE})'
              priority: INFO
              description: 'The name of the system has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
                - tag: scope
                  value: security
        - uuid: 26a0a117545f4b17986f0b48996fec47
          name: 'Uptime (network)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.3.0]'
          key: 'system.net.uptime[sysUpTime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: SNMPv2-MIB
            Time (in hundredths of a second) since the network management portion of the system was last re-initialized.
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: 651059497914431f827ad82a982e139b
          name: 'System object ID'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.2.0]'
          key: 'system.objectid[sysObjectID.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determining`what kind of box' is being managed.  For example, if vendor`Flintstones, Inc.' was assigned the subtree1.3.6.1.4.1.4242, it could assign the identifier 1.3.6.1.4.1.4242.1.1 to its `Fred Router'.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 7ce4f98cdc6741bbb03f6e2ea03432c4
          name: 'SNMP agent availability'
          type: INTERNAL
          key: 'zabbix[host,snmp,available]'
          description: |
            Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list.
            Possible values:
            0 - not available
            1 - available
            2 - unknown
          valuemap:
            name: zabbix.host.available
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: da99689aa1394d17af5008e5678915bc
              expression: 'max(/Dell Force S-Series by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
              name: 'Dell Force S-Series: No SNMP data collection'
              opdata: 'Current state: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'SNMP is not available for polling. Please check device connectivity and SNMP settings.'
              dependencies:
                - name: 'Dell Force S-Series: Unavailable by ICMP ping'
                  expression: 'max(/Dell Force S-Series by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
      discovery_rules:
        - uuid: f35cb754ebd748b7842c67461264f48d
          name: 'FAN Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.6027.3.10.1.2.4.1.1]'
          key: fan.discovery
          delay: 1h
          item_prototypes:
            - uuid: c916b4658e914e93af13b4fe7b58138e
              name: 'Fan {#SNMPVALUE}: Fan status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6027.3.10.1.2.4.1.2.{#SNMPINDEX}]'
              key: 'sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: F10-S-SERIES-CHASSIS-MIB
                The status of the fan tray {#SNMPVALUE}.
              valuemap:
                name: 'F10-S-SERIES-CHASSIS-MIB::chSysFanTrayOperStatus'
              tags:
                - tag: component
                  value: fan
              trigger_prototypes:
                - uuid: aecc6fdd58404347b3074b0c1db63f09
                  expression: 'count(/Dell Force S-Series by SNMP/sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS}")=1'
                  name: 'Dell Force S-Series: Fan {#SNMPVALUE}: Fan is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the fan unit'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: a53271304dcf418aa5afdaa145436b70
                  expression: 'count(/Dell Force S-Series by SNMP/sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}],#1,"ne","{$FAN_OK_STATUS}")=1'
                  name: 'Dell Force S-Series: Fan {#SNMPVALUE}: Fan is not in normal state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: INFO
                  description: 'Please check the fan unit'
                  dependencies:
                    - name: 'Dell Force S-Series: Fan {#SNMPVALUE}: Fan is in critical state'
                      expression: 'count(/Dell Force S-Series by SNMP/sensor.fan.status[chSysFanTrayOperStatus.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS}")=1'
                  tags:
                    - tag: scope
                      value: notice
        - uuid: ff38ddf97a2a47c88ad93d590dedc22a
          name: 'CPU and Memory and Flash Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.6027.3.10.1.2.9.1.1]'
          key: module.discovery
          delay: 1h
          item_prototypes:
            - uuid: f2f0febdd3c14d77a47461c22b883bb5
              name: '#{#SNMPINDEX}: CPU utilization'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6027.3.10.1.2.9.1.3.{#SNMPINDEX}]'
              key: 'system.cpu.util[chStackUnitCpuUtil1Min.{#SNMPINDEX}]'
              value_type: FLOAT
              units: '%'
              description: |
                MIB: F10-S-SERIES-CHASSIS-MIB
                CPU utilization in percentage for last 1 minute.
              tags:
                - tag: component
                  value: cpu
              trigger_prototypes:
                - uuid: 002c0f19cfe54fe08da2183654752470
                  expression: 'min(/Dell Force S-Series by SNMP/system.cpu.util[chStackUnitCpuUtil1Min.{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}'
                  name: 'Dell Force S-Series: #{#SNMPINDEX}: High CPU utilization'
                  event_name: 'Dell Force S-Series: #{#SNMPINDEX}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
                  opdata: 'Current utilization: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'The CPU utilization is too high. The system might be slow to respond.'
                  tags:
                    - tag: scope
                      value: performance
            - uuid: 3571d6508f07442983936fdcc2ba733f
              name: '#{#SNMPINDEX}: Memory utilization'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6027.3.10.1.2.9.1.5.{#SNMPINDEX}]'
              key: 'vm.memory.util[chStackUnitMemUsageUtil.{#SNMPINDEX}]'
              value_type: FLOAT
              units: '%'
              description: |
                MIB: F10-S-SERIES-CHASSIS-MIB
                Total memory usage in percentage.
              tags:
                - tag: component
                  value: memory
              trigger_prototypes:
                - uuid: 41baaaa2eb6246b7982ac76928fbd0f8
                  expression: 'min(/Dell Force S-Series by SNMP/vm.memory.util[chStackUnitMemUsageUtil.{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX}'
                  name: 'Dell Force S-Series: #{#SNMPINDEX}: High memory utilization'
                  event_name: 'Dell Force S-Series: #{#SNMPINDEX}: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
                  priority: AVERAGE
                  description: 'The system is running out of free memory.'
                  tags:
                    - tag: scope
                      value: capacity
                    - tag: scope
                      value: performance
          graph_prototypes:
            - uuid: d5ec0b9ce1f04b0abd0b4bfe6aa28f6b
              name: '#{#SNMPINDEX}: CPU utilization'
              ymin_type_1: FIXED
              ymax_type_1: FIXED
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Dell Force S-Series by SNMP'
                    key: 'system.cpu.util[chStackUnitCpuUtil1Min.{#SNMPINDEX}]'
            - uuid: 69c63b7fb65347cc9301b02e1f9cd45e
              name: '#{#SNMPINDEX}: Memory utilization'
              ymin_type_1: FIXED
              ymax_type_1: FIXED
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Dell Force S-Series by SNMP'
                    key: 'vm.memory.util[chStackUnitMemUsageUtil.{#SNMPINDEX}]'
        - uuid: 620805730ede4c7281a1c736fcfeb130
          name: 'Network interfaces discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFADMINSTATUS},1.3.6.1.2.1.2.2.1.7,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2,{#IFTYPE},1.3.6.1.2.1.2.2.1.3]'
          key: net.if.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.MATCHES}'
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.MATCHES}'
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.MATCHES}'
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.MATCHES}'
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.MATCHES}'
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.MATCHES}'
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovering interfaces from IF-MIB.'
          item_prototypes:
            - uuid: 2130b9e384b14fd7909d421c7756284a
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.13.{#SNMPINDEX}]'
              key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of inbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 5a61f0168e034e8baf6794cf5cc5ce70
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.14.{#SNMPINDEX}]'
              key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of inbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 19e183dbf814471e885f2fef4b84e759
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits received'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}]'
              key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets received on the interface, including framing characters. This object is a 64-bit version of ifInOctets. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 26135962ebd246ce82b3d101e7eb92a4
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of outbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: e3b1efbafa204424b0a61cf877ad168b
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.20.{#SNMPINDEX}]'
              key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of outbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of outbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 6994853a31054989b1e0fc25420f88b1
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}]'
              key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets transmitted out of the interface, including framing characters. This object is a 64-bit version of ifOutOctets.Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: cd36f7b9176349d1a5b69c7eef672986
              name: 'Interface {#IFNAME}({#IFALIAS}): Speed'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}]'
              key: 'net.if.speed[ifHighSpeed.{#SNMPINDEX}]'
              delay: 5m
              trends: '0'
              units: bps
              description: |
                MIB: IF-MIB
                An estimate of the interface's current bandwidth in units of 1,000,000 bits per second. If this object reports a value of `n' then the speed of the interface is somewhere in the range of `n-500,000' to`n+499,999'.  For interfaces which do not vary in bandwidth or for those where no accurate estimation can be made, this object should contain the nominal bandwidth. For a sub-layer which has no concept of bandwidth, this object should be zero.
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1000000'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: cf571531ada84121a94e1084070560c0
              name: 'Interface {#IFNAME}({#IFALIAS}): Operational status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}]'
              key: 'net.if.status[ifOperStatus.{#SNMPINDEX}]'
              trends: '0'
              description: |
                MIB: IF-MIB
                The current operational state of the interface.
                - The testing(3) state indicates that no operational packet scan be passed
                - If ifAdminStatus is down(2) then ifOperStatus should be down(2)
                - If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic
                - It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection)
                - It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state
                - It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components.
              valuemap:
                name: 'IF-MIB::ifOperStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: b7b55335f42b4ace8434588bc70f7e60
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
                  name: 'Dell Force S-Series: Interface {#IFNAME}({#IFALIAS}): Link down'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: |
                    This trigger expression works as follows:
                    1. It can be triggered if the operations status is down.
                    2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine the context macro to "0", marking this interface as not important. No new trigger will be fired if this interface is down.
                    3. `{TEMPLATE_NAME:METRIC.diff()}=1` - the trigger fires only if the operational status was up to (1) sometime before (so, does not fire for "eternal off" interfaces.)
                    
                    WARNING: if closed manually - it will not fire again on the next poll, because of .diff.
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
            - uuid: ec1b53ae24ff443083ab691e1826734f
              name: 'Interface {#IFNAME}({#IFALIAS}): Interface type'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.3.{#SNMPINDEX}]'
              key: 'net.if.type[ifType.{#SNMPINDEX}]'
              delay: 1h
              trends: '0'
              description: |
                MIB: IF-MIB
                The type of interface.
                Additional values for ifType are assigned by the Internet Assigned Numbers Authority (IANA),
                through updating the syntax of the IANAifType textual convention.
              valuemap:
                name: 'IF-MIB::ifType'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
          trigger_prototypes:
            - uuid: f4903edf173f470482174ee9937cbb32
              expression: |
                change(/Dell Force S-Series by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])<0 and last(/Dell Force S-Series by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
                and (
                last(/Dell Force S-Series by SNMP/net.if.type[ifType.{#SNMPINDEX}])=6 or
                last(/Dell Force S-Series by SNMP/net.if.type[ifType.{#SNMPINDEX}])=7 or
                last(/Dell Force S-Series by SNMP/net.if.type[ifType.{#SNMPINDEX}])=11 or
                last(/Dell Force S-Series by SNMP/net.if.type[ifType.{#SNMPINDEX}])=62 or
                last(/Dell Force S-Series by SNMP/net.if.type[ifType.{#SNMPINDEX}])=69 or
                last(/Dell Force S-Series by SNMP/net.if.type[ifType.{#SNMPINDEX}])=117
                )
                and
                (last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2)
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                (change(/Dell Force S-Series by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 and last(/Dell Force S-Series by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}],#2)>0) or
                (last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2)
              name: 'Dell Force S-Series: Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before'
              opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
              priority: INFO
              description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              dependencies:
                - name: 'Dell Force S-Series: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: e85a287c2e0e48e19cb43bf74d3f3535
              expression: |
                (avg(/Dell Force S-Series by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Dell Force S-Series by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) or
                avg(/Dell Force S-Series by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Dell Force S-Series by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])) and
                last(/Dell Force S-Series by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                avg(/Dell Force S-Series by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Dell Force S-Series by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) and
                avg(/Dell Force S-Series by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Dell Force S-Series by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])
              name: 'Dell Force S-Series: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage'
              event_name: 'Dell Force S-Series: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
              opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'The utilization of the network interface is close to its estimated maximum bandwidth.'
              manual_close: 'YES'
              dependencies:
                - name: 'Dell Force S-Series: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: 00d2988bdd084719ba781562920d20fa
              expression: |
                min(/Dell Force S-Series by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
                or min(/Dell Force S-Series by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                max(/Dell Force S-Series by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
                and max(/Dell Force S-Series by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
              name: 'Dell Force S-Series: Interface {#IFNAME}({#IFALIAS}): High error rate'
              event_name: 'Dell Force S-Series: Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
              opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'It recovers when it is below 80% of the `{$IF.ERRORS.WARN:"{#IFNAME}"}` threshold.'
              manual_close: 'YES'
              dependencies:
                - name: 'Dell Force S-Series: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Dell Force S-Series by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
          graph_prototypes:
            - uuid: 2841f46964a74c56b5d16233c924bc58
              name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Dell Force S-Series by SNMP'
                    key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
                - sortorder: '1'
                  drawtype: BOLD_LINE
                  color: F63100
                  item:
                    host: 'Dell Force S-Series by SNMP'
                    key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
                - sortorder: '2'
                  color: 00611C
                  yaxisside: RIGHT
                  item:
                    host: 'Dell Force S-Series by SNMP'
                    key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
                - sortorder: '3'
                  color: F7941D
                  yaxisside: RIGHT
                  item:
                    host: 'Dell Force S-Series by SNMP'
                    key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
                - sortorder: '4'
                  color: FC6EA3
                  yaxisside: RIGHT
                  item:
                    host: 'Dell Force S-Series by SNMP'
                    key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
                - sortorder: '5'
                  color: 6C59DC
                  yaxisside: RIGHT
                  item:
                    host: 'Dell Force S-Series by SNMP'
                    key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
        - uuid: 6782ece35ded46b08a4f45a9743b1ff5
          name: 'EtherLike-MIB Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.2.1.10.7.2.1.19,{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2]'
          key: net.if.duplex.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFOPERSTATUS}'
                value: '1'
              - macro: '{#SNMPVALUE}'
                value: (2|3)
          description: 'Discovering interfaces from IF-MIB and EtherLike-MIB. Interfaces with up(1) Operational Status are discovered.'
          item_prototypes:
            - uuid: 200797ecab6f416191d2ef0c836da4f5
              name: 'Interface {#IFNAME}({#IFALIAS}): Duplex status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.10.7.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}]'
              description: |
                MIB: EtherLike-MIB
                The current mode of operation of the MAC
                entity.  'unknown' indicates that the current
                duplex mode could not be determined.
                
                Management control of the duplex mode is
                accomplished through the MAU MIB.  When
                an interface does not support autonegotiation,
                or when autonegotiation is not enabled, the
                duplex mode is controlled using
                ifMauDefaultType.  When autonegotiation is
                supported and enabled, duplex mode is controlled
                using ifMauAutoNegAdvertisedBits.  In either
                case, the currently operating duplex mode is
                reflected both in this object and in ifMauType.
                
                Note that this object provides redundant
                information with ifMauType.  Normally, redundant
                objects are discouraged.  However, in this
                instance, it allows a management application to
                determine the duplex status of an interface
                without having to know every possible value of
                ifMauType.  This was felt to be sufficiently
                valuable to justify the redundancy.
                Reference: [IEEE 802.3 Std.], 30.3.1.1.32,aDuplexStatus.
              valuemap:
                name: 'EtherLike-MIB::dot3StatsDuplexStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: edc143c44b2d465cac94c4cf0fb588a6
                  expression: 'last(/Dell Force S-Series by SNMP/net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}])=2'
                  name: 'Dell Force S-Series: Interface {#IFNAME}({#IFALIAS}): In half-duplex mode'
                  priority: WARNING
                  description: 'Please check autonegotiation settings and cabling.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: performance
          preprocessing:
            - type: JAVASCRIPT
              parameters:
                - |
                  try {
                  	var data = JSON.parse(value);
                  }
                  catch (error) {
                  	throw 'Failed to parse JSON of EtherLike-MIB discovery.';
                  }
                  var fields = ['{#SNMPVALUE}','{#IFOPERSTATUS}','{#IFALIAS}','{#IFNAME}','{#IFDESCR}'];
                  data.forEach(function (element) {
                  	fields.forEach(function (field) {
                  		element[field] = element[field] || '';
                  	});
                  });
                  return JSON.stringify(data);
        - uuid: 21117a6eb71f4837971ccedfff7596f6
          name: 'PSU Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.6027.3.10.1.2.3.1.1]'
          key: psu.discovery
          delay: 1h
          description: 'A list of power supply residents in the S-series chassis.'
          item_prototypes:
            - uuid: 7cc5081ad6114124845beedbe4725899
              name: 'PSU {#SNMPVALUE}: Power supply status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6027.3.10.1.2.3.1.2.{#SNMPINDEX}]'
              key: 'sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: F10-S-SERIES-CHASSIS-MIB
                The status of the power supply {#SNMPVALUE}
              valuemap:
                name: 'F10-S-SERIES-CHASSIS-MIB::chSysPowerSupplyOperStatus'
              tags:
                - tag: component
                  value: power
              trigger_prototypes:
                - uuid: 764f08ab7a29481fa73a63ae256ff154
                  expression: 'count(/Dell Force S-Series by SNMP/sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS}")=1'
                  name: 'Dell Force S-Series: PSU {#SNMPVALUE}: Power supply is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the power supply unit for errors'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: a7d4ac882ec24cce9839c6012c7fa562
                  expression: 'count(/Dell Force S-Series by SNMP/sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}],#1,"ne","{$PSU_OK_STATUS}")=1'
                  name: 'Dell Force S-Series: PSU {#SNMPVALUE}: Power supply is not in normal state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: INFO
                  description: 'Please check the power supply unit for errors'
                  dependencies:
                    - name: 'Dell Force S-Series: PSU {#SNMPVALUE}: Power supply is in critical state'
                      expression: 'count(/Dell Force S-Series by SNMP/sensor.psu.status[chSysPowerSupplyOperStatus.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS}")=1'
                  tags:
                    - tag: scope
                      value: notice
        - uuid: a619474b839642f69e583a2c63e8b4ba
          name: 'Stack Unit Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.6027.3.10.1.2.2.1.2]'
          key: stack.discovery
          delay: 1h
          item_prototypes:
            - uuid: 4eaf5b777b0c4efeb34140618e18aaa5
              name: 'Device {#SNMPVALUE}: Temperature'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6027.3.10.1.2.2.1.14.{#SNMPINDEX}]'
              key: 'sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}]'
              delay: 3m
              value_type: FLOAT
              units: °C
              description: |
                MIB: F10-S-SERIES-CHASSIS-MIB
                The temperature of the unit.
              tags:
                - tag: component
                  value: temperature
              trigger_prototypes:
                - uuid: dc1064de6a6b4533be812e590b96927b
                  expression: 'avg(/Dell Force S-Series by SNMP/sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/Dell Force S-Series by SNMP/sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
                  name: 'Dell Force S-Series: Device {#SNMPVALUE}: Temperature is above critical threshold'
                  event_name: 'Dell Force S-Series: Device {#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: HIGH
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: f4d0a2c0b1a9468990e1f6dbfef1ab75
                  expression: 'avg(/Dell Force S-Series by SNMP/sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}],5m)>{$TEMP_WARN:"{#SNMPVALUE}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/Dell Force S-Series by SNMP/sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}],5m)<{$TEMP_WARN:"{#SNMPVALUE}"}-3'
                  name: 'Dell Force S-Series: Device {#SNMPVALUE}: Temperature is above warning threshold'
                  event_name: 'Dell Force S-Series: Device {#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:"{#SNMPVALUE}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  dependencies:
                    - name: 'Dell Force S-Series: Device {#SNMPVALUE}: Temperature is above critical threshold'
                      expression: 'avg(/Dell Force S-Series by SNMP/sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}'
                      recovery_expression: 'max(/Dell Force S-Series by SNMP/sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: f1bbf02af05041ef95ff80ff18fc02a7
                  expression: 'avg(/Dell Force S-Series by SNMP/sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'min(/Dell Force S-Series by SNMP/sensor.temp.value[chStackUnitTemp.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}+3'
                  name: 'Dell Force S-Series: Device {#SNMPVALUE}: Temperature is too low'
                  event_name: 'Dell Force S-Series: Device {#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
            - uuid: d6e3d7bb74b84e0c895a1b1b740f0e14
              name: '#{#SNMPVALUE}: Hardware model name'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6027.3.10.1.2.2.1.7.{#SNMPINDEX}]'
              key: 'system.hw.model[chStackUnitModelID.{#SNMPINDEX}]'
              delay: 1h
              value_type: CHAR
              description: |
                MIB: F10-S-SERIES-CHASSIS-MIB
                The plugged-in model ID for this unit.
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: system
            - uuid: eb6853c30dd04581b2e362d7747b40b5
              name: '#{#SNMPVALUE}: Hardware serial number'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6027.3.10.1.2.2.1.12.{#SNMPINDEX}]'
              key: 'system.hw.serialnumber[chStackUnitSerialNumber.{#SNMPINDEX}]'
              delay: 1h
              value_type: CHAR
              description: |
                MIB: F10-S-SERIES-CHASSIS-MIB
                The unit's serial number.
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: system
              trigger_prototypes:
                - uuid: 6f02e903dab24bf294015f43e0b52504
                  expression: 'last(/Dell Force S-Series by SNMP/system.hw.serialnumber[chStackUnitSerialNumber.{#SNMPINDEX}],#1)<>last(/Dell Force S-Series by SNMP/system.hw.serialnumber[chStackUnitSerialNumber.{#SNMPINDEX}],#2) and length(last(/Dell Force S-Series by SNMP/system.hw.serialnumber[chStackUnitSerialNumber.{#SNMPINDEX}]))>0'
                  name: 'Dell Force S-Series: #{#SNMPVALUE}: Device has been replaced'
                  event_name: 'Dell Force S-Series: #{#SNMPVALUE}: Device has been replaced (new serial number received)'
                  priority: INFO
                  description: 'Device serial number has changed. Acknowledge to close the problem manually.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
            - uuid: bd68fcd8247744cb8c10e3dfc699bc7f
              name: '#{#SNMPVALUE}: Hardware version(revision)'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6027.3.10.1.2.2.1.21.{#SNMPINDEX}]'
              key: 'system.hw.version[chStackUnitProductRev.{#SNMPINDEX}]'
              delay: 1h
              value_type: CHAR
              description: |
                MIB: F10-S-SERIES-CHASSIS-MIB
                The unit manufacturer's product revision
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: system
            - uuid: 67cce945315e426f9b12456fe95a6c1a
              name: '#{#SNMPVALUE}: Operating system'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.6027.3.10.1.2.2.1.10.{#SNMPINDEX}]'
              key: 'system.sw.os[chStackUnitCodeVersion.{#SNMPINDEX}]'
              delay: 1h
              value_type: CHAR
              description: |
                MIB: F10-S-SERIES-CHASSIS-MIB
                Current code version of this unit.
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: os
              trigger_prototypes:
                - uuid: 66049aa1d7cb45ebac1fe5292c309ba2
                  expression: 'last(/Dell Force S-Series by SNMP/system.sw.os[chStackUnitCodeVersion.{#SNMPINDEX}],#1)<>last(/Dell Force S-Series by SNMP/system.sw.os[chStackUnitCodeVersion.{#SNMPINDEX}],#2) and length(last(/Dell Force S-Series by SNMP/system.sw.os[chStackUnitCodeVersion.{#SNMPINDEX}]))>0'
                  name: 'Dell Force S-Series: #{#SNMPVALUE}: Operating system description has changed'
                  priority: INFO
                  description: 'The description of the operating system has changed. Possible reasons are that the system has been updated or replaced. Acknowledge to close the problem manually.'
                  manual_close: 'YES'
                  dependencies:
                    - name: 'Dell Force S-Series: System name has changed'
                      expression: 'last(/Dell Force S-Series by SNMP/system.name,#1)<>last(/Dell Force S-Series by SNMP/system.name,#2) and length(last(/Dell Force S-Series by SNMP/system.name))>0'
                  tags:
                    - tag: scope
                      value: notice
      tags:
        - tag: class
          value: network
        - tag: target
          value: dell
        - tag: target
          value: force-s-series
      macros:
        - macro: '{$CPU.UTIL.CRIT}'
          value: '90'
          config:
            type: TEXT
            priority: '1'
            section_name: Thresholds
            label: 'Threshold for CPU utilization (critical)'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$FAN_CRIT_STATUS}'
          value: '2'
          config:
            type: TEXT
            priority: '6'
            section_name: Other
            label: 'Fan critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$FAN_OK_STATUS}'
          value: '1'
          config:
            type: TEXT
            priority: '8'
            section_name: Other
            label: 'Fan OK status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_LOSS_WARN}'
          value: '20'
          description: 'Warning threshold of ICMP packet loss in %.'
          config:
            type: TEXT
            priority: '11'
            section_name: Thresholds
            label: 'Threshold of ICMP packet loss'
            description: 'Warning threshold of ICMP packet loss in %. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_RESPONSE_TIME_WARN}'
          value: '0.15'
          description: 'Warning threshold of the average ICMP response time in seconds.'
          config:
            type: TEXT
            priority: '12'
            section_name: Thresholds
            label: 'Threshold of the average ICMP response'
            description: 'Warning threshold of the average ICMP response time in seconds. No less than 0.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.ERRORS.WARN}'
          value: '2'
          description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
          config:
            type: TEXT
            priority: '13'
            section_name: Thresholds
            label: 'Threshold of error packet rate'
            description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '14'
            section_name: Thresholds
            label: 'The threshold in the interface utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IFCONTROL}'
          value: '1'
          config:
            type: TEXT
            priority: '15'
            section_name: Thresholds
            label: 'Interfaces control'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$MEMORY.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '9'
            section_name: Thresholds
            label: 'Threshold for memory utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$NET.IF.IFADMINSTATUS.MATCHES}'
          value: '^.*'
          config:
            type: TEXT
            priority: '20'
            section_name: Filters
            label: 'Filter for network interface by adminstatus'
        - macro: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
          value: ^2$
          description: 'Ignore down(2) administrative status'
          config:
            type: TEXT
            priority: '21'
            section_name: Filters
            label: 'Filter for network interface by adminstatus (exclude)'
        - macro: '{$NET.IF.IFALIAS.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '24'
            section_name: Filters
            label: 'Filter for network interfaces by alias'
        - macro: '{$NET.IF.IFALIAS.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '25'
            section_name: Filters
            label: 'Filter for network interfaces by alias (exclude)'
        - macro: '{$NET.IF.IFDESCR.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '22'
            section_name: Filters
            label: 'Filter for network interfaces by description'
        - macro: '{$NET.IF.IFDESCR.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '23'
            section_name: Filters
            label: 'Filter for network interfaces by description (exclude)'
        - macro: '{$NET.IF.IFNAME.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '16'
            section_name: Filters
            label: 'Filter for network interface by name'
        - macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
          value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9a-z]+$|docker[0-9]+|br-[a-z0-9]{12})'
          description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
          config:
            type: TEXT
            priority: '17'
            section_name: Filters
            label: 'Filter for network interface by name (exclude)'
            description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
        - macro: '{$NET.IF.IFOPERSTATUS.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '18'
            section_name: Filters
            label: 'Filter for network interface by status'
        - macro: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
          value: ^6$
          description: 'Ignore notPresent(6)'
          config:
            type: TEXT
            priority: '19'
            section_name: Filters
            label: 'Filter for network interface by status (exclude)'
        - macro: '{$NET.IF.IFTYPE.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '26'
            section_name: Filters
            label: 'Filter for network interfaces by type'
        - macro: '{$NET.IF.IFTYPE.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '27'
            section_name: Filters
            label: 'Filter for network interfaces by type (exclude)'
        - macro: '{$PSU_CRIT_STATUS}'
          value: '2'
          config:
            type: TEXT
            priority: '5'
            section_name: Other
            label: 'Power supply critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$PSU_OK_STATUS}'
          value: '1'
          config:
            type: TEXT
            priority: '7'
            section_name: Other
            label: 'Power supply OK status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$SNMP.TIMEOUT}'
          value: 5m
          description: 'Time interval for the SNMP availability trigger.'
          config:
            type: TEXT
            priority: '10'
            section_name: Other
            label: 'Time interval'
            description: 'Time interval for the SNMP availability trigger.'
        - macro: '{$TEMP_CRIT}'
          value: '65'
          config:
            type: TEXT
            priority: '3'
            section_name: Thresholds
            label: 'Threshold for temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_CRIT_LOW}'
          value: '5'
          config:
            type: TEXT
            priority: '2'
            section_name: Thresholds
            label: 'Threshold for low temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_WARN}'
          value: '55'
          config:
            type: TEXT
            priority: '4'
            section_name: Thresholds
            label: 'Threshold for temperature (warning)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
      dashboards:
        - uuid: 5074235070b54485bd6c72688d013cb9
          name: 'Network interfaces'
          pages:
            - widgets:
                - type: graphprototype
                  width: '72'
                  height: '5'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Dell Force S-Series by SNMP'
                        name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
                    - type: STRING
                      name: reference
                      value: AAAAA
      valuemaps:
        - uuid: 1962bc26a6064ee6868371f86d44dbeb
          name: 'EtherLike-MIB::dot3StatsDuplexStatus'
          mappings:
            - value: '1'
              newvalue: unknown
            - value: '2'
              newvalue: halfDuplex
            - value: '3'
              newvalue: fullDuplex
        - uuid: b389c759db0448ffbe28d4572fbfb3e9
          name: 'F10-S-SERIES-CHASSIS-MIB::chSysFanTrayOperStatus'
          mappings:
            - value: '1'
              newvalue: up
            - value: '2'
              newvalue: down
            - value: '3'
              newvalue: absent
        - uuid: 2532df482bd348ba8202c3eb2b76340b
          name: 'F10-S-SERIES-CHASSIS-MIB::chSysPowerSupplyOperStatus'
          mappings:
            - value: '1'
              newvalue: up
            - value: '2'
              newvalue: down
            - value: '3'
              newvalue: absent
        - uuid: 7f124ca304d9431386bba2edbb9b2560
          name: 'IF-MIB::ifOperStatus'
          mappings:
            - value: '1'
              newvalue: up
            - value: '2'
              newvalue: down
            - value: '4'
              newvalue: unknown
            - value: '5'
              newvalue: dormant
            - value: '6'
              newvalue: notPresent
            - value: '7'
              newvalue: lowerLayerDown
        - uuid: 9fde4e729aaf43cc993167d7c0bcae23
          name: 'IF-MIB::ifType'
          mappings:
            - value: '1'
              newvalue: other
            - value: '2'
              newvalue: regular1822
            - value: '3'
              newvalue: hdh1822
            - value: '4'
              newvalue: ddnX25
            - value: '5'
              newvalue: rfc877x25
            - value: '6'
              newvalue: ethernetCsmacd
            - value: '7'
              newvalue: iso88023Csmacd
            - value: '8'
              newvalue: iso88024TokenBus
            - value: '9'
              newvalue: iso88025TokenRing
            - value: '10'
              newvalue: iso88026Man
            - value: '11'
              newvalue: starLan
            - value: '12'
              newvalue: proteon10Mbit
            - value: '13'
              newvalue: proteon80Mbit
            - value: '14'
              newvalue: hyperchannel
            - value: '15'
              newvalue: fddi
            - value: '16'
              newvalue: lapb
            - value: '17'
              newvalue: sdlc
            - value: '18'
              newvalue: ds1
            - value: '19'
              newvalue: e1
            - value: '20'
              newvalue: basicISDN
            - value: '21'
              newvalue: primaryISDN
            - value: '22'
              newvalue: propPointToPointSerial
            - value: '23'
              newvalue: ppp
            - value: '24'
              newvalue: softwareLoopback
            - value: '25'
              newvalue: eon
            - value: '26'
              newvalue: ethernet3Mbit
            - value: '27'
              newvalue: nsip
            - value: '28'
              newvalue: slip
            - value: '29'
              newvalue: ultra
            - value: '30'
              newvalue: ds3
            - value: '31'
              newvalue: sip
            - value: '32'
              newvalue: frameRelay
            - value: '33'
              newvalue: rs232
            - value: '34'
              newvalue: para
            - value: '35'
              newvalue: arcnet
            - value: '36'
              newvalue: arcnetPlus
            - value: '37'
              newvalue: atm
            - value: '38'
              newvalue: miox25
            - value: '39'
              newvalue: sonet
            - value: '40'
              newvalue: x25ple
            - value: '41'
              newvalue: iso88022llc
            - value: '42'
              newvalue: localTalk
            - value: '43'
              newvalue: smdsDxi
            - value: '44'
              newvalue: frameRelayService
            - value: '45'
              newvalue: v35
            - value: '46'
              newvalue: hssi
            - value: '47'
              newvalue: hippi
            - value: '48'
              newvalue: modem
            - value: '49'
              newvalue: aal5
            - value: '50'
              newvalue: sonetPath
            - value: '51'
              newvalue: sonetVT
            - value: '52'
              newvalue: smdsIcip
            - value: '53'
              newvalue: propVirtual
            - value: '54'
              newvalue: propMultiplexor
            - value: '55'
              newvalue: ieee80212
            - value: '56'
              newvalue: fibreChannel
            - value: '57'
              newvalue: hippiInterface
            - value: '58'
              newvalue: frameRelayInterconnect
            - value: '59'
              newvalue: aflane8023
            - value: '60'
              newvalue: aflane8025
            - value: '61'
              newvalue: cctEmul
            - value: '62'
              newvalue: fastEther
            - value: '63'
              newvalue: isdn
            - value: '64'
              newvalue: v11
            - value: '65'
              newvalue: v36
            - value: '66'
              newvalue: g703at64k
            - value: '67'
              newvalue: g703at2mb
            - value: '68'
              newvalue: qllc
            - value: '69'
              newvalue: fastEtherFX
            - value: '70'
              newvalue: channel
            - value: '71'
              newvalue: ieee80211
            - value: '72'
              newvalue: ibm370parChan
            - value: '73'
              newvalue: escon
            - value: '74'
              newvalue: dlsw
            - value: '75'
              newvalue: isdns
            - value: '76'
              newvalue: isdnu
            - value: '77'
              newvalue: lapd
            - value: '78'
              newvalue: ipSwitch
            - value: '79'
              newvalue: rsrb
            - value: '80'
              newvalue: atmLogical
            - value: '81'
              newvalue: ds0
            - value: '82'
              newvalue: ds0Bundle
            - value: '83'
              newvalue: bsc
            - value: '84'
              newvalue: async
            - value: '85'
              newvalue: cnr
            - value: '86'
              newvalue: iso88025Dtr
            - value: '87'
              newvalue: eplrs
            - value: '88'
              newvalue: arap
            - value: '89'
              newvalue: propCnls
            - value: '90'
              newvalue: hostPad
            - value: '91'
              newvalue: termPad
            - value: '92'
              newvalue: frameRelayMPI
            - value: '93'
              newvalue: x213
            - value: '94'
              newvalue: adsl
            - value: '95'
              newvalue: radsl
            - value: '96'
              newvalue: sdsl
            - value: '97'
              newvalue: vdsl
            - value: '98'
              newvalue: iso88025CRFPInt
            - value: '99'
              newvalue: myrinet
            - value: '100'
              newvalue: voiceEM
            - value: '101'
              newvalue: voiceFXO
            - value: '102'
              newvalue: voiceFXS
            - value: '103'
              newvalue: voiceEncap
            - value: '104'
              newvalue: voiceOverIp
            - value: '105'
              newvalue: atmDxi
            - value: '106'
              newvalue: atmFuni
            - value: '107'
              newvalue: atmIma
            - value: '108'
              newvalue: pppMultilinkBundle
            - value: '109'
              newvalue: ipOverCdlc
            - value: '110'
              newvalue: ipOverClaw
            - value: '111'
              newvalue: stackToStack
            - value: '112'
              newvalue: virtualIpAddress
            - value: '113'
              newvalue: mpc
            - value: '114'
              newvalue: ipOverAtm
            - value: '115'
              newvalue: iso88025Fiber
            - value: '116'
              newvalue: tdlc
            - value: '117'
              newvalue: gigabitEthernet
            - value: '118'
              newvalue: hdlc
            - value: '119'
              newvalue: lapf
            - value: '120'
              newvalue: v37
            - value: '121'
              newvalue: x25mlp
            - value: '122'
              newvalue: x25huntGroup
            - value: '123'
              newvalue: trasnpHdlc
            - value: '124'
              newvalue: interleave
            - value: '125'
              newvalue: fast
            - value: '126'
              newvalue: ip
            - value: '127'
              newvalue: docsCableMaclayer
            - value: '128'
              newvalue: docsCableDownstream
            - value: '129'
              newvalue: docsCableUpstream
            - value: '130'
              newvalue: a12MppSwitch
            - value: '131'
              newvalue: tunnel
            - value: '132'
              newvalue: coffee
            - value: '133'
              newvalue: ces
            - value: '134'
              newvalue: atmSubInterface
            - value: '135'
              newvalue: l2vlan
            - value: '136'
              newvalue: l3ipvlan
            - value: '137'
              newvalue: l3ipxvlan
            - value: '138'
              newvalue: digitalPowerline
            - value: '139'
              newvalue: mediaMailOverIp
            - value: '140'
              newvalue: dtm
            - value: '141'
              newvalue: dcn
            - value: '142'
              newvalue: ipForward
            - value: '143'
              newvalue: msdsl
            - value: '144'
              newvalue: ieee1394
            - value: '145'
              newvalue: if-gsn
            - value: '146'
              newvalue: dvbRccMacLayer
            - value: '147'
              newvalue: dvbRccDownstream
            - value: '148'
              newvalue: dvbRccUpstream
            - value: '149'
              newvalue: atmVirtual
            - value: '150'
              newvalue: mplsTunnel
            - value: '151'
              newvalue: srp
            - value: '152'
              newvalue: voiceOverAtm
            - value: '153'
              newvalue: voiceOverFrameRelay
            - value: '154'
              newvalue: idsl
            - value: '155'
              newvalue: compositeLink
            - value: '156'
              newvalue: ss7SigLink
            - value: '157'
              newvalue: propWirelessP2P
            - value: '158'
              newvalue: frForward
            - value: '159'
              newvalue: rfc1483
            - value: '160'
              newvalue: usb
            - value: '161'
              newvalue: ieee8023adLag
            - value: '162'
              newvalue: bgppolicyaccounting
            - value: '163'
              newvalue: frf16MfrBundle
            - value: '164'
              newvalue: h323Gatekeeper
            - value: '165'
              newvalue: h323Proxy
            - value: '166'
              newvalue: mpls
            - value: '167'
              newvalue: mfSigLink
            - value: '168'
              newvalue: hdsl2
            - value: '169'
              newvalue: shdsl
            - value: '170'
              newvalue: ds1FDL
            - value: '171'
              newvalue: pos
            - value: '172'
              newvalue: dvbAsiIn
            - value: '173'
              newvalue: dvbAsiOut
            - value: '174'
              newvalue: plc
            - value: '175'
              newvalue: nfas
            - value: '176'
              newvalue: tr008
            - value: '177'
              newvalue: gr303RDT
            - value: '178'
              newvalue: gr303IDT
            - value: '179'
              newvalue: isup
            - value: '180'
              newvalue: propDocsWirelessMaclayer
            - value: '181'
              newvalue: propDocsWirelessDownstream
            - value: '182'
              newvalue: propDocsWirelessUpstream
            - value: '183'
              newvalue: hiperlan2
            - value: '184'
              newvalue: propBWAp2Mp
            - value: '185'
              newvalue: sonetOverheadChannel
            - value: '186'
              newvalue: digitalWrapperOverheadChannel
            - value: '187'
              newvalue: aal2
            - value: '188'
              newvalue: radioMAC
            - value: '189'
              newvalue: atmRadio
            - value: '190'
              newvalue: imt
            - value: '191'
              newvalue: mvl
            - value: '192'
              newvalue: reachDSL
            - value: '193'
              newvalue: frDlciEndPt
            - value: '194'
              newvalue: atmVciEndPt
            - value: '195'
              newvalue: opticalChannel
            - value: '196'
              newvalue: opticalTransport
            - value: '197'
              newvalue: propAtm
            - value: '198'
              newvalue: voiceOverCable
            - value: '199'
              newvalue: infiniband
            - value: '200'
              newvalue: teLink
            - value: '201'
              newvalue: q2931
            - value: '202'
              newvalue: virtualTg
            - value: '203'
              newvalue: sipTg
            - value: '204'
              newvalue: sipSig
            - value: '205'
              newvalue: docsCableUpstreamChannel
            - value: '206'
              newvalue: econet
            - value: '207'
              newvalue: pon155
            - value: '208'
              newvalue: pon622
            - value: '209'
              newvalue: bridge
            - value: '210'
              newvalue: linegroup
            - value: '211'
              newvalue: voiceEMFGD
            - value: '212'
              newvalue: voiceFGDEANA
            - value: '213'
              newvalue: voiceDID
            - value: '214'
              newvalue: mpegTransport
            - value: '215'
              newvalue: sixToFour
            - value: '216'
              newvalue: gtp
            - value: '217'
              newvalue: pdnEtherLoop1
            - value: '218'
              newvalue: pdnEtherLoop2
            - value: '219'
              newvalue: opticalChannelGroup
            - value: '220'
              newvalue: homepna
            - value: '221'
              newvalue: gfp
            - value: '222'
              newvalue: ciscoISLvlan
            - value: '223'
              newvalue: actelisMetaLOOP
            - value: '224'
              newvalue: fcipLink
            - value: '225'
              newvalue: rpr
            - value: '226'
              newvalue: qam
            - value: '227'
              newvalue: lmp
            - value: '228'
              newvalue: cblVectaStar
            - value: '229'
              newvalue: docsCableMCmtsDownstream
            - value: '230'
              newvalue: adsl2
            - value: '231'
              newvalue: macSecControlledIF
            - value: '232'
              newvalue: macSecUncontrolledIF
            - value: '233'
              newvalue: aviciOpticalEther
            - value: '234'
              newvalue: atmbond
            - value: '235'
              newvalue: voiceFGDOS
            - value: '236'
              newvalue: mocaVersion1
            - value: '237'
              newvalue: ieee80216WMAN
            - value: '238'
              newvalue: adsl2plus
            - value: '239'
              newvalue: dvbRcsMacLayer
            - value: '240'
              newvalue: dvbTdm
            - value: '241'
              newvalue: dvbRcsTdma
            - value: '242'
              newvalue: x86Laps
            - value: '243'
              newvalue: wwanPP
            - value: '244'
              newvalue: wwanPP2
            - value: '245'
              newvalue: voiceEBS
            - value: '246'
              newvalue: ifPwType
            - value: '247'
              newvalue: ilan
            - value: '248'
              newvalue: pip
            - value: '249'
              newvalue: aluELP
            - value: '250'
              newvalue: gpon
            - value: '251'
              newvalue: vdsl2
            - value: '252'
              newvalue: capwapDot11Profile
            - value: '253'
              newvalue: capwapDot11Bss
            - value: '254'
              newvalue: capwapWtpVirtualRadio
            - value: '255'
              newvalue: bits
            - value: '256'
              newvalue: docsCableUpstreamRfPort
            - value: '257'
              newvalue: cableDownstreamRfPort
            - value: '258'
              newvalue: vmwareVirtualNic
            - value: '259'
              newvalue: ieee802154
            - value: '260'
              newvalue: otnOdu
            - value: '261'
              newvalue: otnOtu
            - value: '262'
              newvalue: ifVfiType
            - value: '263'
              newvalue: g9981
            - value: '264'
              newvalue: g9982
            - value: '265'
              newvalue: g9983
            - value: '266'
              newvalue: aluEpon
            - value: '267'
              newvalue: aluEponOnu
            - value: '268'
              newvalue: aluEponPhysicalUni
            - value: '269'
              newvalue: aluEponLogicalLink
            - value: '270'
              newvalue: aluGponOnu
            - value: '271'
              newvalue: aluGponPhysicalUni
            - value: '272'
              newvalue: vmwareNicTeam
            - value: '277'
              newvalue: docsOfdmDownstream
            - value: '278'
              newvalue: docsOfdmaUpstream
            - value: '279'
              newvalue: gfast
            - value: '280'
              newvalue: sdci
            - value: '281'
              newvalue: xboxWireless
            - value: '282'
              newvalue: fastdsl
            - value: '283'
              newvalue: docsCableScte55d1FwdOob
            - value: '284'
              newvalue: docsCableScte55d1RetOob
            - value: '285'
              newvalue: docsCableScte55d2DsOob
            - value: '286'
              newvalue: docsCableScte55d2UsOob
            - value: '287'
              newvalue: docsCableNdf
            - value: '288'
              newvalue: docsCableNdr
            - value: '289'
              newvalue: ptm
            - value: '290'
              newvalue: ghn
        - uuid: 38ce73f0eb6b4c4a912b61b2014156fb
          name: 'Service state'
          mappings:
            - value: '0'
              newvalue: Down
            - value: '1'
              newvalue: Up
        - uuid: 01bced41864644fd842efed7085fda69
          name: zabbix.host.available
          mappings:
            - value: '0'
              newvalue: 'not available'
            - value: '1'
              newvalue: available
            - value: '2'
              newvalue: unknown
    - uuid: 861dbdece18f4b8f85214a319995eb3e
      template: 'Extreme EXOS by SNMP'
      name: 'Extreme EXOS by SNMP'
      description: |
        Template Extreme EXOS
        
        MIBs used:
        EXTREME-SYSTEM-MIB
        IF-MIB
        EtherLike-MIB
        HOST-RESOURCES-MIB
        SNMPv2-MIB
        EXTREME-SOFTWARE-MONITOR-MIB
        ENTITY-MIB
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Overview
        
        ExtremeXOS is the software or the network operating system used in newer Extreme Networks network switches. It is Extreme Networks second generation operating system after the VxWorks based ExtremeWare operating system. ExtremeXOS is based on the Linux kernel and BusyBox.
      vendor:
        name: Zabbix
        version: 8.0-2
      groups:
        - name: 'Templates/Network devices'
      items:
        - uuid: ba27dc4ef9bf4c639b224b4e4881073e
          name: 'ICMP ping'
          type: SIMPLE
          key: icmpping
          description: |
            The host accessibility by ICMP ping.
            
            0 - ICMP ping fails;
            1 - ICMP ping successful.
          valuemap:
            name: 'Service state'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 445766fc99c1480eac4d3d403c3ede2b
              expression: 'max(/Extreme EXOS by SNMP/icmpping,#3)=0'
              name: 'Extreme EXOS: Unavailable by ICMP ping'
              priority: HIGH
              description: 'Last three attempts returned timeout. Please check device connectivity.'
              tags:
                - tag: scope
                  value: availability
        - uuid: bd39116401f249008d21e4109a34c6c7
          name: 'ICMP loss'
          type: SIMPLE
          key: icmppingloss
          value_type: FLOAT
          units: '%'
          description: 'The percentage of lost packets.'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: fb0abe322fd644b4bb3c1255d564bb47
              expression: 'min(/Extreme EXOS by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Extreme EXOS by SNMP/icmppingloss,5m)<100'
              name: 'Extreme EXOS: High ICMP ping loss'
              opdata: 'Loss: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'ICMP packets loss detected.'
              dependencies:
                - name: 'Extreme EXOS: Unavailable by ICMP ping'
                  expression: 'max(/Extreme EXOS by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: c59f57d99c7045b6920e26c8c1b58e52
          name: 'ICMP response time'
          type: SIMPLE
          key: icmppingsec
          value_type: FLOAT
          units: s
          description: 'The ICMP ping response time (in seconds).'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: d29defd9360c489a892821989eeda10c
              expression: 'avg(/Extreme EXOS by SNMP/icmppingsec,5m)>{$ICMP_RESPONSE_TIME_WARN}'
              name: 'Extreme EXOS: High ICMP ping response time'
              opdata: 'Value: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'Average ICMP response time is too high.'
              dependencies:
                - name: 'Extreme EXOS: High ICMP ping loss'
                  expression: 'min(/Extreme EXOS by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Extreme EXOS by SNMP/icmppingloss,5m)<100'
                - name: 'Extreme EXOS: Unavailable by ICMP ping'
                  expression: 'max(/Extreme EXOS by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: b17bfccc91f1489fb9f85d719ca19d70
          name: 'Temperature status'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.1916.1.1.1.7.0]'
          key: 'sensor.temp.status[extremeOverTemperatureAlarm.0]'
          delay: 3m
          trends: '0'
          description: |
            MIB: EXTREME-SYSTEM-MIB
            Temperature status of testpoint: Device
          valuemap:
            name: 'EXTREME-SYSTEM-MIB::extremeOverTemperatureAlarm'
          tags:
            - tag: component
              value: temperature
        - uuid: 2e8384090e304767bc6bba60d822e223
          name: Temperature
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.1916.1.1.1.8.0]'
          key: 'sensor.temp.value[extremeCurrentTemperature.0]'
          delay: 3m
          value_type: FLOAT
          units: °C
          description: |
            MIB: EXTREME-SYSTEM-MIB
            Temperature readings of testpoint: Device
            Reference: https://gtacknowledge.extremenetworks.com/articles/Q_A/Does-EXOS-support-temperature-polling-via-SNMP-on-all-nodes-in-a-stack
          tags:
            - tag: component
              value: temperature
          triggers:
            - uuid: 54362c94be0243ffb907905def0ad06a
              expression: 'avg(/Extreme EXOS by SNMP/sensor.temp.value[extremeCurrentTemperature.0],5m)>{$TEMP_WARN}'
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: 'max(/Extreme EXOS by SNMP/sensor.temp.value[extremeCurrentTemperature.0],5m)<{$TEMP_WARN}-3'
              name: 'Extreme EXOS: Temperature is above warning threshold'
              event_name: 'Extreme EXOS: Temperature is above warning threshold: >{$TEMP_WARN}'
              opdata: 'Current value: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
              dependencies:
                - name: 'Extreme EXOS: Temperature is above critical threshold'
                  expression: |
                    avg(/Extreme EXOS by SNMP/sensor.temp.value[extremeCurrentTemperature.0],5m)>{$TEMP_CRIT}
                    or
                    last(/Extreme EXOS by SNMP/sensor.temp.status[extremeOverTemperatureAlarm.0])={$TEMP_CRIT_STATUS}
                  recovery_expression: 'max(/Extreme EXOS by SNMP/sensor.temp.value[extremeCurrentTemperature.0],5m)<{$TEMP_CRIT}-3'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
            - uuid: 91a10b28c7a14dd09110448a28a328f9
              expression: 'avg(/Extreme EXOS by SNMP/sensor.temp.value[extremeCurrentTemperature.0],5m)<{$TEMP_CRIT_LOW}'
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: 'min(/Extreme EXOS by SNMP/sensor.temp.value[extremeCurrentTemperature.0],5m)>{$TEMP_CRIT_LOW}+3'
              name: 'Extreme EXOS: Temperature is too low'
              event_name: 'Extreme EXOS: Temperature is too low: <{$TEMP_CRIT_LOW}'
              opdata: 'Current value: {ITEM.LASTVALUE1}'
              priority: AVERAGE
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: da2bc25bb40642feaaff04b1cd5f85a0
          name: 'SNMP traps (fallback)'
          type: SNMP_TRAP
          key: snmptrap.fallback
          value_type: LOG
          description: 'The item is used to collect all SNMP traps unmatched by other snmptrap items'
          logtimefmt: 'hh:mm:sszyyyy/MM/dd'
          tags:
            - tag: component
              value: network
        - uuid: aa2eb0947ea34b2bbb739d6025d914ea
          name: 'System contact details'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.4.0]'
          key: 'system.contact[sysContact.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string.
          inventory_link: CONTACT
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: fd93c5fb3e054f84b052d7f682a87655
          name: 'CPU utilization'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.1916.1.32.1.2.0]'
          key: 'system.cpu.util[extremeCpuMonitorTotalUtilization.0]'
          value_type: FLOAT
          units: '%'
          description: |
            MIB: EXTREME-SOFTWARE-MONITOR-MIB
            Total CPU utilization (percentage) as of last sampling.
          tags:
            - tag: component
              value: cpu
          triggers:
            - uuid: a77bbfe0755f4901b67a7957805bc566
              expression: 'min(/Extreme EXOS by SNMP/system.cpu.util[extremeCpuMonitorTotalUtilization.0],5m)>{$CPU.UTIL.CRIT}'
              name: 'Extreme EXOS: High CPU utilization'
              event_name: 'Extreme EXOS: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
              opdata: 'Current utilization: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'The CPU utilization is too high. The system might be slow to respond.'
              tags:
                - tag: scope
                  value: performance
        - uuid: e23764de0cda451d959e73ca0ea211ae
          name: 'System description'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: 'system.descr[sysDescr.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            A textual description of the entity. This value should
            include the full name and version identification of the system's hardware type, software operating-system, and
            networking software.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 7f6260a568644e89ba87ccca63102357
          name: 'Firmware version'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.47.1.1.1.1.9.1]'
          key: system.hw.firmware
          delay: 1h
          value_type: CHAR
          description: 'MIB: ENTITY-MIB'
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: dd9fbc501f9047fd8fae9dfd741e3778
              expression: 'last(/Extreme EXOS by SNMP/system.hw.firmware,#1)<>last(/Extreme EXOS by SNMP/system.hw.firmware,#2) and length(last(/Extreme EXOS by SNMP/system.hw.firmware))>0'
              name: 'Extreme EXOS: Firmware has changed'
              opdata: 'Current value: {ITEM.LASTVALUE1}'
              priority: INFO
              description: 'Firmware version has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
        - uuid: 42ec93c3013d428c9f72fe721ea46db5
          name: 'Hardware model name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.47.1.1.1.1.2.1]'
          key: system.hw.model
          delay: 1h
          value_type: CHAR
          description: 'MIB: ENTITY-MIB'
          inventory_link: MODEL
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
        - uuid: 93882ec52eed40778858e52dc7153093
          name: 'Hardware serial number'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.47.1.1.1.1.11.1]'
          key: system.hw.serialnumber
          delay: 1h
          value_type: CHAR
          description: 'MIB: ENTITY-MIB'
          inventory_link: SERIALNO_A
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: db1760a34c884b1aa36e4fc4639791dd
              expression: 'last(/Extreme EXOS by SNMP/system.hw.serialnumber,#1)<>last(/Extreme EXOS by SNMP/system.hw.serialnumber,#2) and length(last(/Extreme EXOS by SNMP/system.hw.serialnumber))>0'
              name: 'Extreme EXOS: Device has been replaced'
              event_name: 'Extreme EXOS: Device has been replaced (new serial number received)'
              priority: INFO
              description: 'Device serial number has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
        - uuid: 9e9db5d7fe5f4f4e8fc6581813699c1e
          name: 'Uptime (hardware)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.25.1.1.0]'
          key: 'system.hw.uptime[hrSystemUptime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: HOST-RESOURCES-MIB
            The amount of time since this host was last initialized. Note that this is different from sysUpTime in the SNMPv2-MIB [RFC1907] because sysUpTime is the uptime of the network management portion of the system.
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
              error_handler: CUSTOM_VALUE
              error_handler_params: '0'
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: 8ec263e1593e48d18b3e50f215e94196
          name: 'Hardware version(revision)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.47.1.1.1.1.9.1]'
          key: system.hw.version
          delay: 1h
          value_type: CHAR
          description: 'MIB: ENTITY-MIB'
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
        - uuid: d8c7f5611f544299a95eedc0c80cedb5
          name: 'System location'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.6.0]'
          key: 'system.location[sysLocation.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            Physical location of the node (e.g., `equipment room`, `3rd floor`). If not provided, the value is a zero-length string.
          inventory_link: LOCATION
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 7345ee5a5db545a9a5bb90ab5626a2aa
          name: 'System name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.5.0]'
          key: system.name
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            An administratively-assigned name for this managed node.By convention, this is the node's fully-qualified domain name. If the name is unknown, the value is the zero-length string.
          inventory_link: NAME
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 2923c342e8474e3ea3d7411c104a6988
              expression: 'last(/Extreme EXOS by SNMP/system.name,#1)<>last(/Extreme EXOS by SNMP/system.name,#2) and length(last(/Extreme EXOS by SNMP/system.name))>0'
              name: 'Extreme EXOS: System name has changed'
              event_name: 'Extreme EXOS: System name has changed (new name: {ITEM.VALUE})'
              priority: INFO
              description: 'The name of the system has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
                - tag: scope
                  value: security
        - uuid: 92f8e91c4d2c423984cb14440bc83328
          name: 'Uptime (network)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.3.0]'
          key: 'system.net.uptime[sysUpTime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: SNMPv2-MIB
            Time (in hundredths of a second) since the network management portion of the system was last re-initialized.
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: 041115a5c3f44c8c9a9e1e0c7bc7203e
          name: 'System object ID'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.2.0]'
          key: 'system.objectid[sysObjectID.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determining`what kind of box' is being managed.  For example, if vendor`Flintstones, Inc.' was assigned the subtree1.3.6.1.4.1.4242, it could assign the identifier 1.3.6.1.4.1.4242.1.1 to its `Fred Router'.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 0ba6360ecf4c4487a249e3efabca2e0c
          name: 'Operating system'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.1916.1.1.1.13.0]'
          key: 'system.sw.os[extremePrimarySoftwareRev.0]'
          delay: 1h
          value_type: CHAR
          description: |
            MIB: EXTREME-SYSTEM-MIB
            The software revision of the primary image stored in this device.
            This string will have a zero length if the revision is unknown, invalid or not present.
            This will also be reported in RMON2 probeSoftwareRev if this is the software image currently running in the device.
          inventory_link: OS
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: os
          triggers:
            - uuid: af6a823b8f2d4fddae970828d0a3a9c9
              expression: 'last(/Extreme EXOS by SNMP/system.sw.os[extremePrimarySoftwareRev.0],#1)<>last(/Extreme EXOS by SNMP/system.sw.os[extremePrimarySoftwareRev.0],#2) and length(last(/Extreme EXOS by SNMP/system.sw.os[extremePrimarySoftwareRev.0]))>0'
              name: 'Extreme EXOS: Operating system description has changed'
              priority: INFO
              description: 'Operating system description has changed. Possible reasons that system has been updated or replaced. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              dependencies:
                - name: 'Extreme EXOS: System name has changed'
                  expression: 'last(/Extreme EXOS by SNMP/system.name,#1)<>last(/Extreme EXOS by SNMP/system.name,#2) and length(last(/Extreme EXOS by SNMP/system.name))>0'
              tags:
                - tag: scope
                  value: notice
        - uuid: 62a022d402c24da29c1aa7cb0eb64244
          name: 'SNMP agent availability'
          type: INTERNAL
          key: 'zabbix[host,snmp,available]'
          description: |
            Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list.
            Possible values:
            0 - not available
            1 - available
            2 - unknown
          valuemap:
            name: zabbix.host.available
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: ecc42656a3d845ee8ad42d0fe45319c2
              expression: 'max(/Extreme EXOS by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
              name: 'Extreme EXOS: No SNMP data collection'
              opdata: 'Current state: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'SNMP is not available for polling. Please check device connectivity and SNMP settings.'
              dependencies:
                - name: 'Extreme EXOS: Unavailable by ICMP ping'
                  expression: 'max(/Extreme EXOS by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
      discovery_rules:
        - uuid: 1ed41878ed4a455c8a3871169225b8f6
          name: 'FAN Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.1916.1.1.1.9.1.1]'
          key: fan.discovery
          delay: 1h
          item_prototypes:
            - uuid: a9789017b3284366a56e7f9727ae20cd
              name: 'Fan {#SNMPVALUE}: Fan speed'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.1916.1.1.1.9.1.4.{#SNMPINDEX}]'
              key: 'sensor.fan.speed[extremeFanSpeed.{#SNMPINDEX}]'
              units: rpm
              description: |
                MIB: EXTREME-SYSTEM-MIB
                The speed (RPM) of a cooling fan in the fantray {#SNMPVALUE}
              tags:
                - tag: component
                  value: fan
            - uuid: 601afb1fdc4744b29c2e52a260ccecfd
              name: 'Fan {#SNMPVALUE}: Fan status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.1916.1.1.1.9.1.2.{#SNMPINDEX}]'
              key: 'sensor.fan.status[extremeFanOperational.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: EXTREME-SYSTEM-MIB
                Operational status of a cooling fan.
              valuemap:
                name: 'EXTREME-SYSTEM-MIB::extremeFanOperational'
              tags:
                - tag: component
                  value: fan
              trigger_prototypes:
                - uuid: bd0c753f33c441a0bf4567f8b81186d6
                  expression: 'count(/Extreme EXOS by SNMP/sensor.fan.status[extremeFanOperational.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS}")=1'
                  name: 'Extreme EXOS: Fan {#SNMPVALUE}: Fan is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the fan unit'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
        - uuid: 53af0f95ffe243c394c273a1bc2857a3
          name: 'Memory Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.1916.1.32.2.2.1.1]'
          key: memory.discovery
          delay: 1h
          item_prototypes:
            - uuid: 6856e5a75d884af1957b9a3f92d86360
              name: '#{#SNMPVALUE}: Available memory'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.1916.1.32.2.2.1.3.{#SNMPINDEX}]'
              key: 'vm.memory.available[extremeMemoryMonitorSystemFree.{#SNMPINDEX}]'
              units: B
              description: |
                MIB: EXTREME-SOFTWARE-MONITOR-MIB
                Total amount of free memory in Kbytes in the system.
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1024'
              tags:
                - tag: component
                  value: memory
            - uuid: b22ba07a208d41788d0fb33074125ffd
              name: '#{#SNMPVALUE}: Total memory'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.1916.1.32.2.2.1.2.{#SNMPINDEX}]'
              key: 'vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]'
              units: B
              description: |
                MIB: EXTREME-SOFTWARE-MONITOR-MIB
                Total amount of DRAM in Kbytes in the system.
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1024'
              tags:
                - tag: component
                  value: memory
            - uuid: 830ec2341dc64980be35d87141a31b67
              name: '#{#SNMPVALUE}: Memory utilization'
              type: CALCULATED
              key: 'vm.memory.util[{#SNMPVALUE}]'
              value_type: FLOAT
              units: '%'
              params: '(last(//vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]) - last(//vm.memory.available[extremeMemoryMonitorSystemFree.{#SNMPINDEX}])) / last(//vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]) * 100'
              description: 'Memory utilization in %.'
              tags:
                - tag: component
                  value: memory
              trigger_prototypes:
                - uuid: 50733fd8b4a641708e3a90292f182f20
                  expression: 'min(/Extreme EXOS by SNMP/vm.memory.util[{#SNMPVALUE}],5m)>{$MEMORY.UTIL.MAX}'
                  name: 'Extreme EXOS: #{#SNMPVALUE}: High memory utilization'
                  event_name: 'Extreme EXOS: #{#SNMPVALUE}: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
                  priority: AVERAGE
                  description: 'The system is running out of free memory.'
                  tags:
                    - tag: scope
                      value: capacity
                    - tag: scope
                      value: performance
          graph_prototypes:
            - uuid: 672315e9b8dc4858be7a991bed4f06fc
              name: '#{#SNMPVALUE}: Memory usage'
              ymin_type_1: FIXED
              graph_items:
                - drawtype: BOLD_LINE
                  color: 199C0D
                  item:
                    host: 'Extreme EXOS by SNMP'
                    key: 'vm.memory.total[extremeMemoryMonitorSystemTotal.{#SNMPINDEX}]'
                - sortorder: '1'
                  drawtype: GRADIENT_LINE
                  color: F63100
                  item:
                    host: 'Extreme EXOS by SNMP'
                    key: 'vm.memory.available[extremeMemoryMonitorSystemFree.{#SNMPINDEX}]'
            - uuid: 886d032483584e379210c9f05f65b98e
              name: '#{#SNMPVALUE}: Memory utilization'
              ymin_type_1: FIXED
              ymax_type_1: FIXED
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Extreme EXOS by SNMP'
                    key: 'vm.memory.util[{#SNMPVALUE}]'
        - uuid: ddc38e480b404039807079963eb247f9
          name: 'Network interfaces discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFADMINSTATUS},1.3.6.1.2.1.2.2.1.7,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2,{#IFTYPE},1.3.6.1.2.1.2.2.1.3]'
          key: net.if.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.MATCHES}'
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.MATCHES}'
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.MATCHES}'
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.MATCHES}'
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.MATCHES}'
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.MATCHES}'
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovering interfaces from IF-MIB.'
          item_prototypes:
            - uuid: f3a186e0c65e43139a7934a0536fe288
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.13.{#SNMPINDEX}]'
              key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of inbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 26f5e3bec06048c598d76c47b3260813
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.14.{#SNMPINDEX}]'
              key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of inbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 2ec7bfa7073e471bb2f7941bff97f2fd
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits received'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}]'
              key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets received on the interface, including framing characters. This object is a 64-bit version of ifInOctets. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 4dac28ac2be748d5a2bba7bf92550c2b
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of outbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 2ed84c7b80eb4c94b02c91154f1f9736
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.20.{#SNMPINDEX}]'
              key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of outbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of outbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: e40f4821891c45318a732b1aae222382
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}]'
              key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets transmitted out of the interface, including framing characters. This object is a 64-bit version of ifOutOctets.Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 5014332a57b8479fa0638f275e2e0992
              name: 'Interface {#IFNAME}({#IFALIAS}): Speed'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}]'
              key: 'net.if.speed[ifHighSpeed.{#SNMPINDEX}]'
              delay: 5m
              trends: '0'
              units: bps
              description: |
                MIB: IF-MIB
                An estimate of the interface's current bandwidth in units of 1,000,000 bits per second. If this object reports a value of `n' then the speed of the interface is somewhere in the range of `n-500,000' to`n+499,999'.  For interfaces which do not vary in bandwidth or for those where no accurate estimation can be made, this object should contain the nominal bandwidth. For a sub-layer which has no concept of bandwidth, this object should be zero.
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1000000'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 058b94a177e646829c37a96c83829aa1
              name: 'Interface {#IFNAME}({#IFALIAS}): Operational status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}]'
              key: 'net.if.status[ifOperStatus.{#SNMPINDEX}]'
              trends: '0'
              description: |
                MIB: IF-MIB
                The current operational state of the interface.
                - The testing(3) state indicates that no operational packet scan be passed
                - If ifAdminStatus is down(2) then ifOperStatus should be down(2)
                - If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic
                - It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection)
                - It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state
                - It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components.
              valuemap:
                name: 'IF-MIB::ifOperStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: 706148cec9f24e81a96f44484d3829d3
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
                  name: 'Extreme EXOS: Interface {#IFNAME}({#IFALIAS}): Link down'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: |
                    This trigger expression works as follows:
                    1. It can be triggered if the operations status is down.
                    2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine the context macro to "0", marking this interface as not important. No new trigger will be fired if this interface is down.
                    3. `{TEMPLATE_NAME:METRIC.diff()}=1` - the trigger fires only if the operational status was up to (1) sometime before (so, does not fire for "eternal off" interfaces.)
                    
                    WARNING: if closed manually - it will not fire again on the next poll, because of .diff.
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
            - uuid: e6e5a562e7ce418aaecff58b4aef7b3e
              name: 'Interface {#IFNAME}({#IFALIAS}): Interface type'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.3.{#SNMPINDEX}]'
              key: 'net.if.type[ifType.{#SNMPINDEX}]'
              delay: 1h
              trends: '0'
              description: |
                MIB: IF-MIB
                The type of interface.
                Additional values for ifType are assigned by the Internet Assigned Numbers Authority (IANA),
                through updating the syntax of the IANAifType textual convention.
              valuemap:
                name: 'IF-MIB::ifType'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
          trigger_prototypes:
            - uuid: eb704d12b7ef450a85a805392adb2e6b
              expression: |
                change(/Extreme EXOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])<0 and last(/Extreme EXOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
                and (
                last(/Extreme EXOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=6 or
                last(/Extreme EXOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=7 or
                last(/Extreme EXOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=11 or
                last(/Extreme EXOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=62 or
                last(/Extreme EXOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=69 or
                last(/Extreme EXOS by SNMP/net.if.type[ifType.{#SNMPINDEX}])=117
                )
                and
                (last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2)
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                (change(/Extreme EXOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 and last(/Extreme EXOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}],#2)>0) or
                (last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2)
              name: 'Extreme EXOS: Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before'
              opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
              priority: INFO
              description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              dependencies:
                - name: 'Extreme EXOS: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: f61f3c59c1aa488d9ef19a67d46fb5e8
              expression: |
                (avg(/Extreme EXOS by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Extreme EXOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) or
                avg(/Extreme EXOS by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Extreme EXOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])) and
                last(/Extreme EXOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                avg(/Extreme EXOS by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Extreme EXOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) and
                avg(/Extreme EXOS by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Extreme EXOS by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])
              name: 'Extreme EXOS: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage'
              event_name: 'Extreme EXOS: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
              opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'The utilization of the network interface is close to its estimated maximum bandwidth.'
              manual_close: 'YES'
              dependencies:
                - name: 'Extreme EXOS: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: ccf92f29e2564c0bbef6baf6daf93d86
              expression: |
                min(/Extreme EXOS by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
                or min(/Extreme EXOS by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                max(/Extreme EXOS by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
                and max(/Extreme EXOS by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
              name: 'Extreme EXOS: Interface {#IFNAME}({#IFALIAS}): High error rate'
              event_name: 'Extreme EXOS: Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
              opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'It recovers when it is below 80% of the `{$IF.ERRORS.WARN:"{#IFNAME}"}` threshold.'
              manual_close: 'YES'
              dependencies:
                - name: 'Extreme EXOS: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Extreme EXOS by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
          graph_prototypes:
            - uuid: 910004d1f3354f80bf57a36efc1b7156
              name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Extreme EXOS by SNMP'
                    key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
                - sortorder: '1'
                  drawtype: BOLD_LINE
                  color: F63100
                  item:
                    host: 'Extreme EXOS by SNMP'
                    key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
                - sortorder: '2'
                  color: 00611C
                  yaxisside: RIGHT
                  item:
                    host: 'Extreme EXOS by SNMP'
                    key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
                - sortorder: '3'
                  color: F7941D
                  yaxisside: RIGHT
                  item:
                    host: 'Extreme EXOS by SNMP'
                    key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
                - sortorder: '4'
                  color: FC6EA3
                  yaxisside: RIGHT
                  item:
                    host: 'Extreme EXOS by SNMP'
                    key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
                - sortorder: '5'
                  color: 6C59DC
                  yaxisside: RIGHT
                  item:
                    host: 'Extreme EXOS by SNMP'
                    key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
        - uuid: 63835abf440b4d6b879bfe0ba5cfa576
          name: 'EtherLike-MIB Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.2.1.10.7.2.1.19,{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2]'
          key: net.if.duplex.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFOPERSTATUS}'
                value: '1'
              - macro: '{#SNMPVALUE}'
                value: (2|3)
          description: 'Discovering interfaces from IF-MIB and EtherLike-MIB. Interfaces with up(1) Operational Status are discovered.'
          item_prototypes:
            - uuid: b2ca0759c8b1406aa2b664d2716026b9
              name: 'Interface {#IFNAME}({#IFALIAS}): Duplex status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.10.7.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}]'
              description: |
                MIB: EtherLike-MIB
                The current mode of operation of the MAC
                entity.  'unknown' indicates that the current
                duplex mode could not be determined.
                
                Management control of the duplex mode is
                accomplished through the MAU MIB.  When
                an interface does not support autonegotiation,
                or when autonegotiation is not enabled, the
                duplex mode is controlled using
                ifMauDefaultType.  When autonegotiation is
                supported and enabled, duplex mode is controlled
                using ifMauAutoNegAdvertisedBits.  In either
                case, the currently operating duplex mode is
                reflected both in this object and in ifMauType.
                
                Note that this object provides redundant
                information with ifMauType.  Normally, redundant
                objects are discouraged.  However, in this
                instance, it allows a management application to
                determine the duplex status of an interface
                without having to know every possible value of
                ifMauType.  This was felt to be sufficiently
                valuable to justify the redundancy.
                Reference: [IEEE 802.3 Std.], 30.3.1.1.32,aDuplexStatus.
              valuemap:
                name: 'EtherLike-MIB::dot3StatsDuplexStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: f82c0234ebbd4f2686ce97642f7bbcf8
                  expression: 'last(/Extreme EXOS by SNMP/net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}])=2'
                  name: 'Extreme EXOS: Interface {#IFNAME}({#IFALIAS}): In half-duplex mode'
                  priority: WARNING
                  description: 'Please check autonegotiation settings and cabling.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: performance
          preprocessing:
            - type: JAVASCRIPT
              parameters:
                - |
                  try {
                  	var data = JSON.parse(value);
                  }
                  catch (error) {
                  	throw 'Failed to parse JSON of EtherLike-MIB discovery.';
                  }
                  var fields = ['{#SNMPVALUE}','{#IFOPERSTATUS}','{#IFALIAS}','{#IFNAME}','{#IFDESCR}'];
                  data.forEach(function (element) {
                  	fields.forEach(function (field) {
                  		element[field] = element[field] || '';
                  	});
                  });
                  return JSON.stringify(data);
        - uuid: f3211654d55c4c778817e82ed2c123b6
          name: 'PSU Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.1916.1.1.1.27.1.1]'
          key: psu.discovery
          delay: 1h
          description: 'Table of status of all power supplies in the system.'
          item_prototypes:
            - uuid: ff7de77c363f4487ba9be3d262f912da
              name: 'PSU {#SNMPVALUE}: Power supply status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.1916.1.1.1.27.1.2.{#SNMPINDEX}]'
              key: 'sensor.psu.status[extremePowerSupplyStatus.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: EXTREME-SYSTEM-MIB
                Status of the power supply {#SNMPVALUE}
              valuemap:
                name: 'EXTREME-SYSTEM-MIB::extremePowerSupplyStatus'
              tags:
                - tag: component
                  value: power
              trigger_prototypes:
                - uuid: 710f1bf31381470f9a13c45f887bda4e
                  expression: 'count(/Extreme EXOS by SNMP/sensor.psu.status[extremePowerSupplyStatus.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS}")=1'
                  name: 'Extreme EXOS: PSU {#SNMPVALUE}: Power supply is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the power supply unit for errors'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
      tags:
        - tag: class
          value: network
        - tag: target
          value: exos
        - tag: target
          value: extreme
      macros:
        - macro: '{$CPU.UTIL.CRIT}'
          value: '90'
          config:
            type: TEXT
            priority: '1'
            section_name: Thresholds
            label: 'Threshold for CPU utilization (critical)'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$FAN_CRIT_STATUS}'
          value: '2'
          config:
            type: TEXT
            priority: '7'
            section_name: Other
            label: 'Fan critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_LOSS_WARN}'
          value: '20'
          description: 'Warning threshold of ICMP packet loss in %.'
          config:
            type: TEXT
            priority: '10'
            section_name: Thresholds
            label: 'Threshold of ICMP packet loss'
            description: 'Warning threshold of ICMP packet loss in %. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_RESPONSE_TIME_WARN}'
          value: '0.15'
          description: 'Warning threshold of the average ICMP response time in seconds.'
          config:
            type: TEXT
            priority: '11'
            section_name: Thresholds
            label: 'Threshold of the average ICMP response'
            description: 'Warning threshold of the average ICMP response time in seconds. No less than 0.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.ERRORS.WARN}'
          value: '2'
          description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
          config:
            type: TEXT
            priority: '12'
            section_name: Thresholds
            label: 'Threshold of error packet rate'
            description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '13'
            section_name: Thresholds
            label: 'The threshold in the interface utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IFCONTROL}'
          value: '1'
          config:
            type: TEXT
            priority: '14'
            section_name: Thresholds
            label: 'Interfaces control'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$MEMORY.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '8'
            section_name: Thresholds
            label: 'Threshold for memory utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$NET.IF.IFADMINSTATUS.MATCHES}'
          value: '^.*'
          config:
            type: TEXT
            priority: '19'
            section_name: Filters
            label: 'Filter for network interface by adminstatus'
        - macro: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
          value: ^2$
          description: 'Ignore down(2) administrative status'
          config:
            type: TEXT
            priority: '20'
            section_name: Filters
            label: 'Filter for network interface by adminstatus (exclude)'
        - macro: '{$NET.IF.IFALIAS.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '23'
            section_name: Filters
            label: 'Filter for network interfaces by alias'
        - macro: '{$NET.IF.IFALIAS.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '24'
            section_name: Filters
            label: 'Filter for network interfaces by alias (exclude)'
        - macro: '{$NET.IF.IFDESCR.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '21'
            section_name: Filters
            label: 'Filter for network interfaces by description'
        - macro: '{$NET.IF.IFDESCR.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '22'
            section_name: Filters
            label: 'Filter for network interfaces by description (exclude)'
        - macro: '{$NET.IF.IFNAME.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '15'
            section_name: Filters
            label: 'Filter for network interface by name'
        - macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
          value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9a-z]+$|docker[0-9]+|br-[a-z0-9]{12})'
          description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
          config:
            type: TEXT
            priority: '16'
            section_name: Filters
            label: 'Filter for network interface by name (exclude)'
            description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
        - macro: '{$NET.IF.IFOPERSTATUS.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '17'
            section_name: Filters
            label: 'Filter for network interface by status'
        - macro: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
          value: ^6$
          description: 'Ignore notPresent(6)'
          config:
            type: TEXT
            priority: '18'
            section_name: Filters
            label: 'Filter for network interface by status (exclude)'
        - macro: '{$NET.IF.IFTYPE.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '25'
            section_name: Filters
            label: 'Filter for network interfaces by type'
        - macro: '{$NET.IF.IFTYPE.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '26'
            section_name: Filters
            label: 'Filter for network interfaces by type (exclude)'
        - macro: '{$PSU_CRIT_STATUS}'
          value: '3'
          config:
            type: TEXT
            priority: '6'
            section_name: Other
            label: 'Power supply critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$SNMP.TIMEOUT}'
          value: 5m
          description: 'Time interval for the SNMP availability trigger.'
          config:
            type: TEXT
            priority: '9'
            section_name: Other
            label: 'Time interval'
            description: 'Time interval for the SNMP availability trigger.'
        - macro: '{$TEMP_CRIT}'
          value: '65'
          config:
            type: TEXT
            priority: '3'
            section_name: Thresholds
            label: 'Threshold for temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_CRIT_LOW}'
          value: '5'
          config:
            type: TEXT
            priority: '2'
            section_name: Thresholds
            label: 'Threshold for low temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_CRIT_STATUS}'
          value: '1'
          config:
            type: TEXT
            priority: '5'
            section_name: Other
            label: 'Temperature critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_WARN}'
          value: '55'
          config:
            type: TEXT
            priority: '4'
            section_name: Thresholds
            label: 'Threshold for temperature (warning)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
      dashboards:
        - uuid: 93462451b410409ab1e1d174c55f6d62
          name: 'Network interfaces'
          pages:
            - widgets:
                - type: graphprototype
                  width: '72'
                  height: '5'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Extreme EXOS by SNMP'
                        name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
                    - type: STRING
                      name: reference
                      value: AAAAA
      valuemaps:
        - uuid: 60e2bd909e284621a8a21810623b0e94
          name: 'EtherLike-MIB::dot3StatsDuplexStatus'
          mappings:
            - value: '1'
              newvalue: unknown
            - value: '2'
              newvalue: halfDuplex
            - value: '3'
              newvalue: fullDuplex
        - uuid: b71a1b2d06324275a37a1952f13e29b3
          name: 'EXTREME-SYSTEM-MIB::extremeFanOperational'
          mappings:
            - value: '1'
              newvalue: 'true - on'
            - value: '2'
              newvalue: 'false - off'
        - uuid: 34c686dbaf8649b3b7dcc243068a739a
          name: 'EXTREME-SYSTEM-MIB::extremeOverTemperatureAlarm'
          mappings:
            - value: '1'
              newvalue: alarm
            - value: '2'
              newvalue: normal
        - uuid: 85bfdbc16637406fb5f1a23a15f16c77
          name: 'EXTREME-SYSTEM-MIB::extremePowerSupplyStatus'
          mappings:
            - value: '1'
              newvalue: notPresent
            - value: '2'
              newvalue: presentOK
            - value: '3'
              newvalue: presentNotOK
            - value: '4'
              newvalue: presentPowerOff
        - uuid: 2fcb120b5eb840ddbad31a7291711b7d
          name: 'IF-MIB::ifOperStatus'
          mappings:
            - value: '1'
              newvalue: up
            - value: '2'
              newvalue: down
            - value: '4'
              newvalue: unknown
            - value: '5'
              newvalue: dormant
            - value: '6'
              newvalue: notPresent
            - value: '7'
              newvalue: lowerLayerDown
        - uuid: d09aa2831cca48eb8c9011582c15bea1
          name: 'IF-MIB::ifType'
          mappings:
            - value: '1'
              newvalue: other
            - value: '2'
              newvalue: regular1822
            - value: '3'
              newvalue: hdh1822
            - value: '4'
              newvalue: ddnX25
            - value: '5'
              newvalue: rfc877x25
            - value: '6'
              newvalue: ethernetCsmacd
            - value: '7'
              newvalue: iso88023Csmacd
            - value: '8'
              newvalue: iso88024TokenBus
            - value: '9'
              newvalue: iso88025TokenRing
            - value: '10'
              newvalue: iso88026Man
            - value: '11'
              newvalue: starLan
            - value: '12'
              newvalue: proteon10Mbit
            - value: '13'
              newvalue: proteon80Mbit
            - value: '14'
              newvalue: hyperchannel
            - value: '15'
              newvalue: fddi
            - value: '16'
              newvalue: lapb
            - value: '17'
              newvalue: sdlc
            - value: '18'
              newvalue: ds1
            - value: '19'
              newvalue: e1
            - value: '20'
              newvalue: basicISDN
            - value: '21'
              newvalue: primaryISDN
            - value: '22'
              newvalue: propPointToPointSerial
            - value: '23'
              newvalue: ppp
            - value: '24'
              newvalue: softwareLoopback
            - value: '25'
              newvalue: eon
            - value: '26'
              newvalue: ethernet3Mbit
            - value: '27'
              newvalue: nsip
            - value: '28'
              newvalue: slip
            - value: '29'
              newvalue: ultra
            - value: '30'
              newvalue: ds3
            - value: '31'
              newvalue: sip
            - value: '32'
              newvalue: frameRelay
            - value: '33'
              newvalue: rs232
            - value: '34'
              newvalue: para
            - value: '35'
              newvalue: arcnet
            - value: '36'
              newvalue: arcnetPlus
            - value: '37'
              newvalue: atm
            - value: '38'
              newvalue: miox25
            - value: '39'
              newvalue: sonet
            - value: '40'
              newvalue: x25ple
            - value: '41'
              newvalue: iso88022llc
            - value: '42'
              newvalue: localTalk
            - value: '43'
              newvalue: smdsDxi
            - value: '44'
              newvalue: frameRelayService
            - value: '45'
              newvalue: v35
            - value: '46'
              newvalue: hssi
            - value: '47'
              newvalue: hippi
            - value: '48'
              newvalue: modem
            - value: '49'
              newvalue: aal5
            - value: '50'
              newvalue: sonetPath
            - value: '51'
              newvalue: sonetVT
            - value: '52'
              newvalue: smdsIcip
            - value: '53'
              newvalue: propVirtual
            - value: '54'
              newvalue: propMultiplexor
            - value: '55'
              newvalue: ieee80212
            - value: '56'
              newvalue: fibreChannel
            - value: '57'
              newvalue: hippiInterface
            - value: '58'
              newvalue: frameRelayInterconnect
            - value: '59'
              newvalue: aflane8023
            - value: '60'
              newvalue: aflane8025
            - value: '61'
              newvalue: cctEmul
            - value: '62'
              newvalue: fastEther
            - value: '63'
              newvalue: isdn
            - value: '64'
              newvalue: v11
            - value: '65'
              newvalue: v36
            - value: '66'
              newvalue: g703at64k
            - value: '67'
              newvalue: g703at2mb
            - value: '68'
              newvalue: qllc
            - value: '69'
              newvalue: fastEtherFX
            - value: '70'
              newvalue: channel
            - value: '71'
              newvalue: ieee80211
            - value: '72'
              newvalue: ibm370parChan
            - value: '73'
              newvalue: escon
            - value: '74'
              newvalue: dlsw
            - value: '75'
              newvalue: isdns
            - value: '76'
              newvalue: isdnu
            - value: '77'
              newvalue: lapd
            - value: '78'
              newvalue: ipSwitch
            - value: '79'
              newvalue: rsrb
            - value: '80'
              newvalue: atmLogical
            - value: '81'
              newvalue: ds0
            - value: '82'
              newvalue: ds0Bundle
            - value: '83'
              newvalue: bsc
            - value: '84'
              newvalue: async
            - value: '85'
              newvalue: cnr
            - value: '86'
              newvalue: iso88025Dtr
            - value: '87'
              newvalue: eplrs
            - value: '88'
              newvalue: arap
            - value: '89'
              newvalue: propCnls
            - value: '90'
              newvalue: hostPad
            - value: '91'
              newvalue: termPad
            - value: '92'
              newvalue: frameRelayMPI
            - value: '93'
              newvalue: x213
            - value: '94'
              newvalue: adsl
            - value: '95'
              newvalue: radsl
            - value: '96'
              newvalue: sdsl
            - value: '97'
              newvalue: vdsl
            - value: '98'
              newvalue: iso88025CRFPInt
            - value: '99'
              newvalue: myrinet
            - value: '100'
              newvalue: voiceEM
            - value: '101'
              newvalue: voiceFXO
            - value: '102'
              newvalue: voiceFXS
            - value: '103'
              newvalue: voiceEncap
            - value: '104'
              newvalue: voiceOverIp
            - value: '105'
              newvalue: atmDxi
            - value: '106'
              newvalue: atmFuni
            - value: '107'
              newvalue: atmIma
            - value: '108'
              newvalue: pppMultilinkBundle
            - value: '109'
              newvalue: ipOverCdlc
            - value: '110'
              newvalue: ipOverClaw
            - value: '111'
              newvalue: stackToStack
            - value: '112'
              newvalue: virtualIpAddress
            - value: '113'
              newvalue: mpc
            - value: '114'
              newvalue: ipOverAtm
            - value: '115'
              newvalue: iso88025Fiber
            - value: '116'
              newvalue: tdlc
            - value: '117'
              newvalue: gigabitEthernet
            - value: '118'
              newvalue: hdlc
            - value: '119'
              newvalue: lapf
            - value: '120'
              newvalue: v37
            - value: '121'
              newvalue: x25mlp
            - value: '122'
              newvalue: x25huntGroup
            - value: '123'
              newvalue: trasnpHdlc
            - value: '124'
              newvalue: interleave
            - value: '125'
              newvalue: fast
            - value: '126'
              newvalue: ip
            - value: '127'
              newvalue: docsCableMaclayer
            - value: '128'
              newvalue: docsCableDownstream
            - value: '129'
              newvalue: docsCableUpstream
            - value: '130'
              newvalue: a12MppSwitch
            - value: '131'
              newvalue: tunnel
            - value: '132'
              newvalue: coffee
            - value: '133'
              newvalue: ces
            - value: '134'
              newvalue: atmSubInterface
            - value: '135'
              newvalue: l2vlan
            - value: '136'
              newvalue: l3ipvlan
            - value: '137'
              newvalue: l3ipxvlan
            - value: '138'
              newvalue: digitalPowerline
            - value: '139'
              newvalue: mediaMailOverIp
            - value: '140'
              newvalue: dtm
            - value: '141'
              newvalue: dcn
            - value: '142'
              newvalue: ipForward
            - value: '143'
              newvalue: msdsl
            - value: '144'
              newvalue: ieee1394
            - value: '145'
              newvalue: if-gsn
            - value: '146'
              newvalue: dvbRccMacLayer
            - value: '147'
              newvalue: dvbRccDownstream
            - value: '148'
              newvalue: dvbRccUpstream
            - value: '149'
              newvalue: atmVirtual
            - value: '150'
              newvalue: mplsTunnel
            - value: '151'
              newvalue: srp
            - value: '152'
              newvalue: voiceOverAtm
            - value: '153'
              newvalue: voiceOverFrameRelay
            - value: '154'
              newvalue: idsl
            - value: '155'
              newvalue: compositeLink
            - value: '156'
              newvalue: ss7SigLink
            - value: '157'
              newvalue: propWirelessP2P
            - value: '158'
              newvalue: frForward
            - value: '159'
              newvalue: rfc1483
            - value: '160'
              newvalue: usb
            - value: '161'
              newvalue: ieee8023adLag
            - value: '162'
              newvalue: bgppolicyaccounting
            - value: '163'
              newvalue: frf16MfrBundle
            - value: '164'
              newvalue: h323Gatekeeper
            - value: '165'
              newvalue: h323Proxy
            - value: '166'
              newvalue: mpls
            - value: '167'
              newvalue: mfSigLink
            - value: '168'
              newvalue: hdsl2
            - value: '169'
              newvalue: shdsl
            - value: '170'
              newvalue: ds1FDL
            - value: '171'
              newvalue: pos
            - value: '172'
              newvalue: dvbAsiIn
            - value: '173'
              newvalue: dvbAsiOut
            - value: '174'
              newvalue: plc
            - value: '175'
              newvalue: nfas
            - value: '176'
              newvalue: tr008
            - value: '177'
              newvalue: gr303RDT
            - value: '178'
              newvalue: gr303IDT
            - value: '179'
              newvalue: isup
            - value: '180'
              newvalue: propDocsWirelessMaclayer
            - value: '181'
              newvalue: propDocsWirelessDownstream
            - value: '182'
              newvalue: propDocsWirelessUpstream
            - value: '183'
              newvalue: hiperlan2
            - value: '184'
              newvalue: propBWAp2Mp
            - value: '185'
              newvalue: sonetOverheadChannel
            - value: '186'
              newvalue: digitalWrapperOverheadChannel
            - value: '187'
              newvalue: aal2
            - value: '188'
              newvalue: radioMAC
            - value: '189'
              newvalue: atmRadio
            - value: '190'
              newvalue: imt
            - value: '191'
              newvalue: mvl
            - value: '192'
              newvalue: reachDSL
            - value: '193'
              newvalue: frDlciEndPt
            - value: '194'
              newvalue: atmVciEndPt
            - value: '195'
              newvalue: opticalChannel
            - value: '196'
              newvalue: opticalTransport
            - value: '197'
              newvalue: propAtm
            - value: '198'
              newvalue: voiceOverCable
            - value: '199'
              newvalue: infiniband
            - value: '200'
              newvalue: teLink
            - value: '201'
              newvalue: q2931
            - value: '202'
              newvalue: virtualTg
            - value: '203'
              newvalue: sipTg
            - value: '204'
              newvalue: sipSig
            - value: '205'
              newvalue: docsCableUpstreamChannel
            - value: '206'
              newvalue: econet
            - value: '207'
              newvalue: pon155
            - value: '208'
              newvalue: pon622
            - value: '209'
              newvalue: bridge
            - value: '210'
              newvalue: linegroup
            - value: '211'
              newvalue: voiceEMFGD
            - value: '212'
              newvalue: voiceFGDEANA
            - value: '213'
              newvalue: voiceDID
            - value: '214'
              newvalue: mpegTransport
            - value: '215'
              newvalue: sixToFour
            - value: '216'
              newvalue: gtp
            - value: '217'
              newvalue: pdnEtherLoop1
            - value: '218'
              newvalue: pdnEtherLoop2
            - value: '219'
              newvalue: opticalChannelGroup
            - value: '220'
              newvalue: homepna
            - value: '221'
              newvalue: gfp
            - value: '222'
              newvalue: ciscoISLvlan
            - value: '223'
              newvalue: actelisMetaLOOP
            - value: '224'
              newvalue: fcipLink
            - value: '225'
              newvalue: rpr
            - value: '226'
              newvalue: qam
            - value: '227'
              newvalue: lmp
            - value: '228'
              newvalue: cblVectaStar
            - value: '229'
              newvalue: docsCableMCmtsDownstream
            - value: '230'
              newvalue: adsl2
            - value: '231'
              newvalue: macSecControlledIF
            - value: '232'
              newvalue: macSecUncontrolledIF
            - value: '233'
              newvalue: aviciOpticalEther
            - value: '234'
              newvalue: atmbond
            - value: '235'
              newvalue: voiceFGDOS
            - value: '236'
              newvalue: mocaVersion1
            - value: '237'
              newvalue: ieee80216WMAN
            - value: '238'
              newvalue: adsl2plus
            - value: '239'
              newvalue: dvbRcsMacLayer
            - value: '240'
              newvalue: dvbTdm
            - value: '241'
              newvalue: dvbRcsTdma
            - value: '242'
              newvalue: x86Laps
            - value: '243'
              newvalue: wwanPP
            - value: '244'
              newvalue: wwanPP2
            - value: '245'
              newvalue: voiceEBS
            - value: '246'
              newvalue: ifPwType
            - value: '247'
              newvalue: ilan
            - value: '248'
              newvalue: pip
            - value: '249'
              newvalue: aluELP
            - value: '250'
              newvalue: gpon
            - value: '251'
              newvalue: vdsl2
            - value: '252'
              newvalue: capwapDot11Profile
            - value: '253'
              newvalue: capwapDot11Bss
            - value: '254'
              newvalue: capwapWtpVirtualRadio
            - value: '255'
              newvalue: bits
            - value: '256'
              newvalue: docsCableUpstreamRfPort
            - value: '257'
              newvalue: cableDownstreamRfPort
            - value: '258'
              newvalue: vmwareVirtualNic
            - value: '259'
              newvalue: ieee802154
            - value: '260'
              newvalue: otnOdu
            - value: '261'
              newvalue: otnOtu
            - value: '262'
              newvalue: ifVfiType
            - value: '263'
              newvalue: g9981
            - value: '264'
              newvalue: g9982
            - value: '265'
              newvalue: g9983
            - value: '266'
              newvalue: aluEpon
            - value: '267'
              newvalue: aluEponOnu
            - value: '268'
              newvalue: aluEponPhysicalUni
            - value: '269'
              newvalue: aluEponLogicalLink
            - value: '270'
              newvalue: aluGponOnu
            - value: '271'
              newvalue: aluGponPhysicalUni
            - value: '272'
              newvalue: vmwareNicTeam
            - value: '277'
              newvalue: docsOfdmDownstream
            - value: '278'
              newvalue: docsOfdmaUpstream
            - value: '279'
              newvalue: gfast
            - value: '280'
              newvalue: sdci
            - value: '281'
              newvalue: xboxWireless
            - value: '282'
              newvalue: fastdsl
            - value: '283'
              newvalue: docsCableScte55d1FwdOob
            - value: '284'
              newvalue: docsCableScte55d1RetOob
            - value: '285'
              newvalue: docsCableScte55d2DsOob
            - value: '286'
              newvalue: docsCableScte55d2UsOob
            - value: '287'
              newvalue: docsCableNdf
            - value: '288'
              newvalue: docsCableNdr
            - value: '289'
              newvalue: ptm
            - value: '290'
              newvalue: ghn
        - uuid: 3177ca5723c3410daf20723b88019907
          name: 'Service state'
          mappings:
            - value: '0'
              newvalue: Down
            - value: '1'
              newvalue: Up
        - uuid: c6691c15854b472982f8a6636efdbe82
          name: zabbix.host.available
          mappings:
            - value: '0'
              newvalue: 'not available'
            - value: '1'
              newvalue: available
            - value: '2'
              newvalue: unknown
    - uuid: c5564dd58c394b969d5365cc5de3e7f8
      template: 'Huawei OceanStor 5300 V5 by SNMP'
      name: 'Huawei OceanStor 5300 V5 by SNMP'
      description: |
        The template to monitor SAN Huawei OceanStor 5300 V5 by Zabbix SNMP agent.
        
        MIBs used:
        HOST-RESOURCES-MIB
        SNMPv2-MIB
        
        You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/418855-discussion-thread-for-official-zabbix-template-huawei-oceanstor
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      vendor:
        name: Zabbix
        version: 8.0-2
      groups:
        - name: Templates/SAN
      items:
        - uuid: 86d978c810024643829d3192156e9e6c
          name: Status
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.1.3.0]'
          key: 'huawei.5300.v5[status]'
          description: 'System running status.'
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 6h
          tags:
            - tag: component
              value: health
            - tag: component
              value: system
        - uuid: 04c8d7f53668449ea32c4ed611b71237
          name: 'Capacity total'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.1.5.0]'
          key: 'huawei.5300.v5[totalCapacity]'
          units: B
          description: 'Total capacity of a device.'
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '1048576'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 10m
          tags:
            - tag: component
              value: storage
        - uuid: ef77f126052b4f9e9cddafdab20577d1
          name: 'Capacity used'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.1.4.0]'
          key: 'huawei.5300.v5[usedCapacity]'
          units: B
          description: 'Used capacity of a device.'
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '1048576'
          tags:
            - tag: component
              value: storage
        - uuid: 0a2e129d84d14e88bf953f3a9ca76b46
          name: Version
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.1.6.0]'
          key: 'huawei.5300.v5[version]'
          value_type: CHAR
          description: 'The device version.'
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 6h
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: b6eb791cc14644dfb0a69a2cce150ab1
              expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[version],#1)<>last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[version],#2) and length(last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[version]))>0'
              name: 'Huawei OceanStor 5300 V5: Storage version has been changed'
              event_name: 'Huawei OceanStor 5300 V5: Version has changed (new version: {ITEM.VALUE})'
              priority: INFO
              description: 'OceanStor 5300 V5 version has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
        - uuid: 030530f5193246f4b983ec802030e49b
          name: 'ICMP ping'
          type: SIMPLE
          key: icmpping
          description: |
            The host accessibility by ICMP ping.
            
            0 - ICMP ping fails;
            1 - ICMP ping successful.
          valuemap:
            name: 'Service state'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: ef6b5dc40f9a49599aae97c2cf68d3cb
              expression: 'max(/Huawei OceanStor 5300 V5 by SNMP/icmpping,#3)=0'
              name: 'Huawei OceanStor 5300 V5: Unavailable by ICMP ping'
              priority: HIGH
              description: 'Last three attempts returned timeout. Please check device connectivity.'
              tags:
                - tag: scope
                  value: availability
        - uuid: c82fa3f20c7443e4849ea8e8aec1e49d
          name: 'ICMP loss'
          type: SIMPLE
          key: icmppingloss
          value_type: FLOAT
          units: '%'
          description: 'The percentage of lost packets.'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: c9765f7f271d46c99ad7dd45efa79849
              expression: 'min(/Huawei OceanStor 5300 V5 by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Huawei OceanStor 5300 V5 by SNMP/icmppingloss,5m)<100'
              name: 'Huawei OceanStor 5300 V5: High ICMP ping loss'
              opdata: 'Loss: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'ICMP packets loss detected.'
              dependencies:
                - name: 'Huawei OceanStor 5300 V5: Unavailable by ICMP ping'
                  expression: 'max(/Huawei OceanStor 5300 V5 by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: 0a95c43c70e54ad49f073fee69a2452d
          name: 'ICMP response time'
          type: SIMPLE
          key: icmppingsec
          value_type: FLOAT
          units: s
          description: 'The ICMP ping response time (in seconds).'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: b8815a9e952047e09d1e657cea5d538e
              expression: 'avg(/Huawei OceanStor 5300 V5 by SNMP/icmppingsec,5m)>{$ICMP_RESPONSE_TIME_WARN}'
              name: 'Huawei OceanStor 5300 V5: High ICMP ping response time'
              opdata: 'Value: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'Average ICMP response time is too high.'
              dependencies:
                - name: 'Huawei OceanStor 5300 V5: High ICMP ping loss'
                  expression: 'min(/Huawei OceanStor 5300 V5 by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Huawei OceanStor 5300 V5 by SNMP/icmppingloss,5m)<100'
                - name: 'Huawei OceanStor 5300 V5: Unavailable by ICMP ping'
                  expression: 'max(/Huawei OceanStor 5300 V5 by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: 2ec396a7adf64637ae453d7f26cd5b20
          name: 'SNMP traps (fallback)'
          type: SNMP_TRAP
          key: snmptrap.fallback
          value_type: LOG
          description: 'The item is used to collect all SNMP traps unmatched by other snmptrap items'
          logtimefmt: 'hh:mm:sszyyyy/MM/dd'
          tags:
            - tag: component
              value: network
        - uuid: e98719af84414ef5ab3dd788c7d2d72f
          name: 'System contact details'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.4.0]'
          key: 'system.contact[sysContact.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string.
          inventory_link: CONTACT
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: cf59fb53834d4b14bdb0251e66c5143f
          name: 'System description'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: 'system.descr[sysDescr.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            A textual description of the entity. This value should
            include the full name and version identification of the system's hardware type, software operating-system, and
            networking software.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: f54aca2b926e4d4d980f980acb0aefac
          name: 'Uptime (hardware)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.25.1.1.0]'
          key: 'system.hw.uptime[hrSystemUptime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: HOST-RESOURCES-MIB
            The amount of time since this host was last initialized. Note that this is different from sysUpTime in the SNMPv2-MIB [RFC1907] because sysUpTime is the uptime of the network management portion of the system.
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
              error_handler: CUSTOM_VALUE
              error_handler_params: '0'
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: fed7a954ea614cb086b901b2e6957621
          name: 'System location'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.6.0]'
          key: 'system.location[sysLocation.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            Physical location of the node (e.g., `equipment room`, `3rd floor`). If not provided, the value is a zero-length string.
          inventory_link: LOCATION
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 354fe7cd2632425b9f937e8714d79798
          name: 'System name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.5.0]'
          key: system.name
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            An administratively-assigned name for this managed node.By convention, this is the node's fully-qualified domain name. If the name is unknown, the value is the zero-length string.
          inventory_link: NAME
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 72a31faa805b40e795a57649c724da1e
              expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/system.name,#1)<>last(/Huawei OceanStor 5300 V5 by SNMP/system.name,#2) and length(last(/Huawei OceanStor 5300 V5 by SNMP/system.name))>0'
              name: 'Huawei OceanStor 5300 V5: System name has changed'
              event_name: 'Huawei OceanStor 5300 V5: System name has changed (new name: {ITEM.VALUE})'
              priority: INFO
              description: 'The name of the system has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
                - tag: scope
                  value: security
        - uuid: f14eaa207ac9480995d2a2a10bea1467
          name: 'Uptime (network)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.3.0]'
          key: 'system.net.uptime[sysUpTime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: SNMPv2-MIB
            Time (in hundredths of a second) since the network management portion of the system was last re-initialized.
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: bf571c06cc264eca89d68f0b0b7559f7
          name: 'System object ID'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.2.0]'
          key: 'system.objectid[sysObjectID.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determining`what kind of box' is being managed.  For example, if vendor`Flintstones, Inc.' was assigned the subtree1.3.6.1.4.1.4242, it could assign the identifier 1.3.6.1.4.1.4242.1.1 to its `Fred Router'.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 197767da1b3c4c4f8f3c59ab3c3fc5b8
          name: 'SNMP agent availability'
          type: INTERNAL
          key: 'zabbix[host,snmp,available]'
          description: |
            Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list.
            Possible values:
            0 - not available
            1 - available
            2 - unknown
          valuemap:
            name: zabbix.host.available
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: b0c4103eac9447ee9f7f31627baf4eea
              expression: 'max(/Huawei OceanStor 5300 V5 by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
              name: 'Huawei OceanStor 5300 V5: No SNMP data collection'
              opdata: 'Current state: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'SNMP is not available for polling. Please check device connectivity and SNMP settings.'
              dependencies:
                - name: 'Huawei OceanStor 5300 V5: Unavailable by ICMP ping'
                  expression: 'max(/Huawei OceanStor 5300 V5 by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
      discovery_rules:
        - uuid: 6de9606d1f594546b76e79bbb72a8a56
          name: 'BBU discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#ID},1.3.6.1.4.1.34774.4.1.23.5.5.1.1,{#LOCATION},1.3.6.1.4.1.34774.4.1.23.5.5.1.2]'
          key: huawei.5300.bbu.discovery
          delay: 1h
          description: 'Discovery of BBU'
          item_prototypes:
            - uuid: e9632c3596954729a8d49039ea787efd
              name: 'BBU {#ID} on {#LOCATION}: Health status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.5.1.3.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoBBUHealthStatus, "{#ID}:{#LOCATION}"]'
              description: |
                Health status of a BBU. For details, see definition of Enum Values (HEALTH_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Health status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: bbu
                  value: '{#ID}'
                - tag: component
                  value: health
                - tag: component
                  value: power
                - tag: location
                  value: '{#LOCATION}'
              trigger_prototypes:
                - uuid: fb73cddd30164af8aa243bd3e2b2f803
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoBBUHealthStatus, "{#ID}:{#LOCATION}"])<>1'
                  name: 'Huawei OceanStor 5300 V5: BBU {#ID} on {#LOCATION}: Health status is not Normal'
                  priority: HIGH
                  tags:
                    - tag: scope
                      value: availability
            - uuid: a861b76edde842448f39afd9788fa852
              name: 'BBU {#ID} on {#LOCATION}: Running status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.5.1.4.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoBBURunningStatus, "{#ID}:{#LOCATION}"]'
              description: |
                Running status of a BBU. For details, see definition of Enum Values (RUNNING_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Running status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: bbu
                  value: '{#ID}'
                - tag: component
                  value: health
                - tag: component
                  value: power
                - tag: location
                  value: '{#LOCATION}'
              trigger_prototypes:
                - uuid: 15d809b0be1c4d1da9158a83d303789c
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoBBURunningStatus, "{#ID}:{#LOCATION}"])<>2'
                  name: 'Huawei OceanStor 5300 V5: BBU {#ID} on {#LOCATION}: Running status is not Online'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
        - uuid: c676eae5d7c548e788f7addc2343389f
          name: 'Controllers discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#ID},1.3.6.1.4.1.34774.4.1.23.5.2.1.1]'
          key: huawei.5300.controllers.discovery
          delay: 1h
          description: 'Discovery of controllers'
          item_prototypes:
            - uuid: f9023618aa2b4c23a81c8cc3793bac0d
              name: 'Controller {#ID}: CPU utilization'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.2.1.8.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoControllerCPUUsage, "{#ID}"]'
              value_type: FLOAT
              units: '%'
              description: 'CPU usage of a controller {#ID}.'
              tags:
                - tag: component
                  value: cpu
                - tag: controller
                  value: '{#ID}'
              trigger_prototypes:
                - uuid: a51b4e42efaa4924b6c2990c9c0abf30
                  expression: 'min(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoControllerCPUUsage, "{#ID}"],5m)>{$CPU.UTIL.CRIT}'
                  name: 'Huawei OceanStor 5300 V5: Controller {#ID}: High CPU utilization'
                  event_name: 'Huawei OceanStor 5300 V5: Controller {#ID}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
                  opdata: 'Current utilization: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'The CPU utilization is too high. The system might be slow to respond.'
                  tags:
                    - tag: scope
                      value: performance
            - uuid: 99798c647f2344d2896b644f2bd7e1c0
              name: 'Controller {#ID}: Health status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.2.1.2.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoControllerHealthStatus, "{#ID}"]'
              description: |
                Controller health status. For details, see definition of Enum Values (HEALTH_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Health status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: controller
                  value: '{#ID}'
              trigger_prototypes:
                - uuid: 52cf517dd30146578b32fd1399ec81cc
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoControllerHealthStatus, "{#ID}"])<>1'
                  name: 'Huawei OceanStor 5300 V5: Controller {#ID}: Health status is not Normal'
                  priority: HIGH
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 42b61bf322fb495d94802c23f85f22b2
              name: 'Controller {#ID}: Memory utilization'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.2.1.9.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoControllerMemoryUsage, "{#ID}"]'
              units: '%'
              description: 'Memory usage of a controller {#ID}.'
              tags:
                - tag: component
                  value: memory
                - tag: controller
                  value: '{#ID}'
              trigger_prototypes:
                - uuid: 8d4fe305737f41a595c1d2efb3e8a153
                  expression: 'min(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoControllerMemoryUsage, "{#ID}"],{$HUAWEI.5300.MEM.MAX.TIME})>{$HUAWEI.5300.MEM.MAX.WARN}'
                  name: 'Huawei OceanStor 5300 V5: Controller {#ID}: Memory usage is too high'
                  event_name: 'Huawei OceanStor 5300 V5: Controller {#ID}: Memory usage is too high (over {$HUAWEI.5300.MEM.MAX.WARN} for {$HUAWEI.5300.MEM.MAX.TIME})'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: performance
            - uuid: 4797e9608d2445e385ad9db6097feeeb
              name: 'Controller {#ID}: Role'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.2.1.6.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoControllerRole, "{#ID}"]'
              description: 'Controller role.'
              valuemap:
                name: 'Huawei storage: Controller role'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: system
                - tag: controller
                  value: '{#ID}'
              trigger_prototypes:
                - uuid: 8b8ec3f843e74533a43f24393004cc84
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoControllerRole, "{#ID}"],#1)<>last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoControllerRole, "{#ID}"],#2)'
                  name: 'Huawei OceanStor 5300 V5: Controller {#ID}: Role has been changed'
                  priority: WARNING
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
            - uuid: b9a0053b16c04cefbdfc320659d79754
              name: 'Controller {#ID}: Running status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.2.1.3.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoControllerRunningStatus, "{#ID}"]'
              description: |
                Controller running status. For details, see definition of Enum Values (RUNNING_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Running status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: controller
                  value: '{#ID}'
              trigger_prototypes:
                - uuid: 6ab64eb5e1c146838ad48b7b9b063587
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoControllerRunningStatus, "{#ID}"])<>27'
                  name: 'Huawei OceanStor 5300 V5: Controller {#ID}: Running status is not Online'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
          graph_prototypes:
            - uuid: ac083f05484846e6a8c4799410e1f566
              name: 'Controller {#ID}: CPU utilization'
              ymin_type_1: FIXED
              ymax_type_1: FIXED
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwInfoControllerCPUUsage, "{#ID}"]'
        - uuid: 3a0b0a1fcdd9402cb67e93903049b070
          name: 'Disks discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#ID},1.3.6.1.4.1.34774.4.1.23.5.1.1.1,{#MODEL},1.3.6.1.4.1.34774.4.1.23.5.1.1.12,{#LOCATION},1.3.6.1.4.1.34774.4.1.23.5.1.1.4]'
          key: huawei.5300.disks.discovery
          delay: 1h
          description: 'Discovery of disks'
          item_prototypes:
            - uuid: 4952b2d54c3a4bb98e26f8221d2833a8
              name: 'Disk {#MODEL} on {#LOCATION}: Health score'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.1.1.25.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoDiskHealthMark, "{#ID}"]'
              description: 'Health score of a disk. If the value is 255, indicating invalid.'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: disk
                  value: '{#MODEL}'
                - tag: location
                  value: '{#LOCATION}'
            - uuid: d30c2d9d18d54af08c18bd35b5664a0d
              name: 'Disk {#MODEL} on {#LOCATION}: Health status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.1.1.2.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoDiskHealthStatus, "{#ID}"]'
              description: |
                Disk health status. For details, see definition of Enum Values (HEALTH_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Health status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: disk
                  value: '{#MODEL}'
                - tag: location
                  value: '{#LOCATION}'
              trigger_prototypes:
                - uuid: fc1c8d30f09c49a3999e282bff6ea370
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoDiskHealthStatus, "{#ID}"])<>1'
                  name: 'Huawei OceanStor 5300 V5: Disk {#MODEL} on {#LOCATION}: Health status is not Normal'
                  priority: HIGH
                  tags:
                    - tag: scope
                      value: availability
            - uuid: d5f1c54d524847ebae2015968e772d92
              name: 'Disk {#MODEL} on {#LOCATION}: Running status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.1.1.3.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoDiskRunningStatus, "{#ID}"]'
              description: |
                Disk running status. For details, see definition of Enum Values (RUNNING_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Running status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: disk
                  value: '{#MODEL}'
                - tag: location
                  value: '{#LOCATION}'
              trigger_prototypes:
                - uuid: 53aaf06848a346f188799d1cbb5d948f
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoDiskRunningStatus, "{#ID}"])<>27'
                  name: 'Huawei OceanStor 5300 V5: Disk {#MODEL} on {#LOCATION}: Running status is not Online'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 769abd2f1a8d43cda52c8021c20fe3c4
              name: 'Disk {#MODEL} on {#LOCATION}: Temperature'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.1.1.11.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoDiskTemperature, "{#ID}"]'
              units: °C
              description: 'Disk temperature.'
              tags:
                - tag: component
                  value: environment
                - tag: disk
                  value: '{#MODEL}'
                - tag: location
                  value: '{#LOCATION}'
              trigger_prototypes:
                - uuid: 906de152d3594f1d8cc15b4b717d6202
                  expression: 'min(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoDiskTemperature, "{#ID}"],{$HUAWEI.5300.DISK.TEMP.MAX.TIME})>{$HUAWEI.5300.DISK.TEMP.MAX.WARN:"{#MODEL}"}'
                  name: 'Huawei OceanStor 5300 V5: Disk {#MODEL} on {#LOCATION}: Temperature is too high'
                  event_name: 'Huawei OceanStor 5300 V5: Disk {#MODEL} on {#LOCATION}: Temperature is too high (over {$HUAWEI.5300.DISK.TEMP.MAX.WARN:"{#MODEL}"} for {$HUAWEI.5300.DISK.TEMP.MAX.TIME})'
                  opdata: 'Current value: {ITEM.LASTVALUE}'
                  priority: HIGH
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: notice
        - uuid: 21e6235b6b314ce6a6392aafc9a3de07
          name: 'Enclosure discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#NAME},1.3.6.1.4.1.34774.4.1.23.5.6.1.2]'
          key: huawei.5300.enclosure.discovery
          delay: 1h
          description: 'Discovery of enclosures'
          item_prototypes:
            - uuid: a2be3a03bccf48a0baa067d8ef83a3b1
              name: 'Enclosure {#NAME}: Health status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.6.1.4.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoEnclosureHealthStatus, "{#NAME}"]'
              description: |
                Enclosure health status. For details, see definition of Enum Values (HEALTH_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Health status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: enclosure
                  value: '{#NAME}'
              trigger_prototypes:
                - uuid: 9b8fb5b02b0b4158a2b564f47281f716
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoEnclosureHealthStatus, "{#NAME}"])<>1'
                  name: 'Huawei OceanStor 5300 V5: Enclosure {#NAME}: Health status is not Normal'
                  priority: HIGH
                  tags:
                    - tag: scope
                      value: availability
            - uuid: b96af65318d64932bc13e8e81155644c
              name: 'Enclosure {#NAME}: Running status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.6.1.5.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoEnclosureRunningStatus, "{#NAME}"]'
              description: |
                Enclosure running status. For details, see definition of Enum Values (RUNNING_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Running status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: enclosure
                  value: '{#NAME}'
              trigger_prototypes:
                - uuid: 3c430a2073ff42d9908490858c9c2817
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoEnclosureRunningStatus, "{#NAME}"])<>27'
                  name: 'Huawei OceanStor 5300 V5: Enclosure {#NAME}: Running status is not Online'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 37fa5a5f2d7d440dbb38781bddf5cd46
              name: 'Enclosure {#NAME}: Temperature'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.6.1.8.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoEnclosureTemperature, "{#NAME}"]'
              units: °C
              description: 'Enclosure temperature.'
              tags:
                - tag: component
                  value: environment
                - tag: enclosure
                  value: '{#NAME}'
              trigger_prototypes:
                - uuid: 622fcc16c03e4ba4ad8371ea5c1c314f
                  expression: 'min(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoEnclosureTemperature, "{#NAME}"],{$HUAWEI.5300.TEMP.MAX.TIME})>{$HUAWEI.5300.TEMP.MAX.WARN}'
                  name: 'Huawei OceanStor 5300 V5: Enclosure {#NAME}: Temperature is too high'
                  event_name: 'Huawei OceanStor 5300 V5: Enclosure {#NAME}: Temperature is too high (over {$HUAWEI.5300.TEMP.MAX.WARN} for {$HUAWEI.5300.TEMP.MAX.TIME})'
                  opdata: 'Current value: {ITEM.LASTVALUE}'
                  priority: HIGH
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: notice
        - uuid: ae390e1c100d490ab4e878bac8951744
          name: 'FANs discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#ID},1.3.6.1.4.1.34774.4.1.23.5.4.1.1,{#LOCATION},1.3.6.1.4.1.34774.4.1.23.5.4.1.2]'
          key: huawei.5300.fan.discovery
          delay: 1h
          description: 'Discovery of FANs'
          item_prototypes:
            - uuid: c75f70a1c6d44a87aec0b27c3d9fbf5e
              name: 'FAN {#ID} on {#LOCATION}: Health status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.4.1.3.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoFanHealthStatus, "{#ID}:{#LOCATION}"]'
              description: |
                Health status of a fan. For details, see definition of Enum Values (HEALTH_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Health status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: fan
                  value: '{#ID}'
                - tag: location
                  value: '{#LOCATION}'
              trigger_prototypes:
                - uuid: 1f41c20696d44eb29a1273718c9faf2f
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoFanHealthStatus, "{#ID}:{#LOCATION}"])<>1'
                  name: 'Huawei OceanStor 5300 V5: FAN {#ID} on {#LOCATION}: Health status is not Normal'
                  priority: HIGH
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 800d348ca4394215800c227b421e9bea
              name: 'FAN {#ID} on {#LOCATION}: Running status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.5.4.1.4.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoFanRunningStatus, "{#ID}:{#LOCATION}"]'
              description: |
                Operating status of a fan. For details, see definition of Enum Values (RUNNING_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Running status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: fan
                  value: '{#ID}'
                - tag: location
                  value: '{#LOCATION}'
              trigger_prototypes:
                - uuid: c225c9d853184d579d18c27f7e906fd2
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoFanRunningStatus, "{#ID}:{#LOCATION}"])<>2'
                  name: 'Huawei OceanStor 5300 V5: FAN {#ID} on {#LOCATION}: Running status is not Running'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
        - uuid: aeb30b2aec4842bfb0a9f946988783a2
          name: 'LUNs discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#NAME},1.3.6.1.4.1.34774.4.1.19.9.4.1.2]'
          key: huawei.5300.lun.discovery
          delay: 1h
          description: 'Discovery of LUNs'
          item_prototypes:
            - uuid: d434317e77514a18907a400f68ad773e
              name: 'LUN {#NAME}: Average total I/O latency'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.4.1.13.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfLunAverageIOResponseTime, "{#NAME}"]'
              units: '!ms'
              description: 'Average I/O latency of the node in milliseconds.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
              tags:
                - tag: component
                  value: operations
                - tag: lun
                  value: '{#NAME}'
              trigger_prototypes:
                - uuid: aae494cb840049fb83df354c13daaf53
                  expression: 'min(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwPerfLunAverageIOResponseTime, "{#NAME}"],{$HUAWEI.5300.LUN.IO.TIME.MAX.TIME})>{$HUAWEI.5300.LUN.IO.TIME.MAX.WARN}'
                  name: 'Huawei OceanStor 5300 V5: LUN {#NAME}: Average I/O response time is too high'
                  event_name: 'Huawei OceanStor 5300 V5: LUN {#NAME}: Average I/O response time is too high (over {$HUAWEI.5300.LUN.IO.TIME.MAX.WARN}ms for {$HUAWEI.5300.LUN.IO.TIME.MAX.TIME})'
                  priority: WARNING
                  tags:
                    - tag: scope
                      value: performance
            - uuid: 75e6ce80f06c4b3b86a13de4aadf25d7
              name: 'LUN {#NAME}: Average read I/O latency'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.4.1.15.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfLunAverageReadIOLatency, "{#NAME}"]'
              units: '!ms'
              description: 'Average read I/O response time in milliseconds.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
              tags:
                - tag: component
                  value: operations
                - tag: lun
                  value: '{#NAME}'
            - uuid: b639b6cc20524fe1a5c415a6218b5382
              name: 'LUN {#NAME}: Average write I/O latency'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.4.1.16.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfLunAverageWriteIOLatency, "{#NAME}"]'
              units: '!ms'
              description: 'Average write I/O response time in milliseconds.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
              tags:
                - tag: component
                  value: operations
                - tag: lun
                  value: '{#NAME}'
            - uuid: 6e2c299282f045cca7a07dedd30b5f89
              name: 'LUN {#NAME}: Read operations per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.4.1.4.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfLunReadIOPS, "{#NAME}"]'
              units: '!iops'
              description: 'Read IOPS of the node.'
              tags:
                - tag: component
                  value: operations
                - tag: lun
                  value: '{#NAME}'
            - uuid: 8e376b38196b4954895b10aefbdf65ba
              name: 'LUN {#NAME}: Read traffic per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.4.1.7.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfLunReadTraffic, "{#NAME}"]'
              units: Bps
              description: 'Current read bandwidth for the LUN.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1048576'
              tags:
                - tag: component
                  value: traffic
                - tag: lun
                  value: '{#NAME}'
            - uuid: 4d83d160c92845c9ac0f51f5f0158c3b
              name: 'LUN {#NAME}: Total I/O per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.4.1.3.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfLunTotalIOPS, "{#NAME}"]'
              units: '!iops'
              description: 'Current IOPS of the LUN.'
              tags:
                - tag: component
                  value: operations
                - tag: lun
                  value: '{#NAME}'
            - uuid: 1bbe8185981349dcb8a867955ff19c2f
              name: 'LUN {#NAME}: Total traffic per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.4.1.6.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfLunTotalTraffic, "{#NAME}"]'
              units: Bps
              description: 'Current total bandwidth for the LUN.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1048576'
              tags:
                - tag: component
                  value: traffic
                - tag: lun
                  value: '{#NAME}'
            - uuid: 1aed4e060c9743caa13d1ace2cee16f3
              name: 'LUN {#NAME}: Write operations per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.4.1.5.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfLunWriteIOPS, "{#NAME}"]'
              units: '!iops'
              description: 'Write IOPS of the node.'
              tags:
                - tag: component
                  value: operations
                - tag: lun
                  value: '{#NAME}'
            - uuid: 4a21edb8ea37437f8435565e04c5ce28
              name: 'LUN {#NAME}: Write traffic per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.4.1.8.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfLunWriteTraffic, "{#NAME}"]'
              units: Bps
              description: 'Current write bandwidth for the LUN.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1048576'
              tags:
                - tag: component
                  value: traffic
                - tag: lun
                  value: '{#NAME}'
            - uuid: 4c85003e7f7441adb4490efcb03e477e
              name: 'LUN {#NAME}: Capacity'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.19.9.4.1.5.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwStorageLunCapacity, "{#NAME}"]'
              units: B
              description: 'Capacity of the LUN.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1024'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: traffic
                - tag: lun
                  value: '{#NAME}'
            - uuid: f613af109f2846c88e845f626743232b
              name: 'LUN {#NAME}: Status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.19.9.4.1.11.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwStorageLunStatus, "{#NAME}"]'
              description: 'Status of the LUN.'
              valuemap:
                name: 'Huawei storage: LUN status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: lun
                  value: '{#NAME}'
              trigger_prototypes:
                - uuid: 757eef04912d44b4b4f9e1abab54fb4d
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwStorageLunStatus, "{#NAME}"])<>1'
                  name: 'Huawei OceanStor 5300 V5: LUN {#NAME}: Status is not Normal'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
          graph_prototypes:
            - uuid: 36d1eb7893f54db28afb1f4725aef1a1
              name: 'LUN {#NAME}: LUN I/O'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfLunTotalIOPS, "{#NAME}"]'
                - sortorder: '1'
                  color: F63100
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfLunReadIOPS, "{#NAME}"]'
                - sortorder: '2'
                  color: 00611C
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfLunWriteIOPS, "{#NAME}"]'
            - uuid: f86ef671d9454bb8878835ba1c96ba20
              name: 'LUN {#NAME}: LUN I/O latency'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfLunAverageIOResponseTime, "{#NAME}"]'
                - sortorder: '1'
                  color: F63100
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfLunAverageReadIOLatency, "{#NAME}"]'
                - sortorder: '2'
                  color: 00611C
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfLunAverageWriteIOLatency, "{#NAME}"]'
            - uuid: eb10b5b56a964c2ba7870d2dc7cf787b
              name: 'LUN {#NAME}: LUN traffic'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfLunTotalTraffic, "{#NAME}"]'
                - sortorder: '1'
                  color: F63100
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfLunReadTraffic, "{#NAME}"]'
                - sortorder: '2'
                  color: 00611C
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfLunWriteTraffic, "{#NAME}"]'
        - uuid: 6b934c21d8c54adf8b2e6d28e250537b
          name: 'Nodes performance discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#NODE},1.3.6.1.4.1.34774.4.1.21.3.1.1]'
          key: huawei.5300.nodes.discovery
          delay: 1h
          description: 'Discovery of nodes performance counters'
          item_prototypes:
            - uuid: ac917a8a5b364f66a62c580cb6249c02
              name: 'Node {#NODE}: CPU utilization'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.3.1.2.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfNodeCPUUsage, "{#NODE}"]'
              value_type: FLOAT
              units: '%'
              description: 'CPU usage of the node {#NODE}.'
              tags:
                - tag: component
                  value: cpu
                - tag: node
                  value: '{#NODE}'
              trigger_prototypes:
                - uuid: 8495a55d6549460d9b132675a39b818b
                  expression: 'min(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwPerfNodeCPUUsage, "{#NODE}"],5m)>{$CPU.UTIL.CRIT}'
                  name: 'Huawei OceanStor 5300 V5: Node {#NODE}: High CPU utilization'
                  event_name: 'Huawei OceanStor 5300 V5: Node {#NODE}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
                  opdata: 'Current utilization: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'The CPU utilization is too high. The system might be slow to respond.'
                  tags:
                    - tag: scope
                      value: performance
            - uuid: 336022218b44497f84056fce4ed4d2bf
              name: 'Node {#NODE}: Average I/O latency'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.3.1.4.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfNodeDelay, "{#NODE}"]'
              value_type: FLOAT
              units: '!ms'
              description: 'Average I/O latency of the node.'
              tags:
                - tag: component
                  value: operations
                - tag: node
                  value: '{#NODE}'
              trigger_prototypes:
                - uuid: 8f54bfe029fe43c7a049c6a97c8598bf
                  expression: 'min(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwPerfNodeDelay, "{#NODE}"],{$HUAWEI.5300.NODE.IO.DELAY.MAX.TIME})>{$HUAWEI.5300.NODE.IO.DELAY.MAX.WARN}'
                  name: 'Huawei OceanStor 5300 V5: Node {#NODE}: Average I/O latency is too high'
                  event_name: 'Huawei OceanStor 5300 V5: Node {#NODE}: Average I/O latency is too high (over {$HUAWEI.5300.NODE.IO.DELAY.MAX.WARN}ms for {$HUAWEI.5300.NODE.IO.DELAY.MAX.TIME})'
                  priority: WARNING
                  tags:
                    - tag: scope
                      value: performance
            - uuid: 3019a48ac4d34552a00c3344d04ec055
              name: 'Node {#NODE}: Read operations per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.3.1.6.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfNodeReadIOPS, "{#NODE}"]'
              units: '!iops'
              description: 'Read IOPS of the node.'
              tags:
                - tag: component
                  value: operations
                - tag: node
                  value: '{#NODE}'
            - uuid: e0c9807e30cc49c480f4862bf7228da8
              name: 'Node {#NODE}: Read traffic per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.3.1.9.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfNodeReadTraffic, "{#NODE}"]'
              units: Bps
              description: 'Read bandwidth for the node.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1048576'
              tags:
                - tag: component
                  value: traffic
                - tag: node
                  value: '{#NODE}'
            - uuid: 1c3d8562d32d4412b649738c05350c4d
              name: 'Node {#NODE}: Total I/O per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.3.1.5.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfNodeTotalIOPS, "{#NODE}"]'
              units: '!iops'
              description: 'Total IOPS of the node.'
              tags:
                - tag: component
                  value: operations
                - tag: node
                  value: '{#NODE}'
            - uuid: 604ab970767b4a4e80e5e2e29d30f9a1
              name: 'Node {#NODE}: Total traffic per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.3.1.8.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfNodeTotalTraffic, "{#NODE}"]'
              units: Bps
              description: 'Total bandwidth for the node.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1048576'
              tags:
                - tag: component
                  value: traffic
                - tag: node
                  value: '{#NODE}'
            - uuid: bd0c930ef95b4bb6838cac49dd38bf6f
              name: 'Node {#NODE}: Write operations per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.3.1.7.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfNodeWriteIOPS, "{#NODE}"]'
              units: '!iops'
              description: 'Write IOPS of the node.'
              tags:
                - tag: component
                  value: operations
                - tag: node
                  value: '{#NODE}'
            - uuid: 4f5105903075422cb6643dca913df933
              name: 'Node {#NODE}: Write traffic per second'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.21.3.1.7.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwPerfNodeWriteTraffic, "{#NODE}"]'
              units: Bps
              description: 'Write bandwidth for the node.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1048576'
              tags:
                - tag: component
                  value: traffic
                - tag: node
                  value: '{#NODE}'
          graph_prototypes:
            - uuid: 62f3a059a92a454eba1a71fb3a62b787
              name: 'Node {#NODE}: CPU utilization'
              ymin_type_1: FIXED
              ymax_type_1: FIXED
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfNodeCPUUsage, "{#NODE}"]'
            - uuid: 1061657e43594c139c49125c1710a10a
              name: 'Node {#NODE}: Node I/O'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfNodeTotalIOPS, "{#NODE}"]'
                - sortorder: '1'
                  color: F63100
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfNodeReadIOPS, "{#NODE}"]'
                - sortorder: '2'
                  color: 00611C
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfNodeWriteIOPS, "{#NODE}"]'
            - uuid: 81b69fee1dde49e0b0fbe5c06077d289
              name: 'Node {#NODE}: Node traffic'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfNodeTotalTraffic, "{#NODE}"]'
                - sortorder: '1'
                  color: F63100
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfNodeReadTraffic, "{#NODE}"]'
                - sortorder: '2'
                  color: 00611C
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwPerfNodeWriteTraffic, "{#NODE}"]'
        - uuid: 746fcf5132a54e0588713e6313d03e02
          name: 'Storage pools discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#NAME},1.3.6.1.4.1.34774.4.1.23.4.2.1.2,{#THRESHOLD},1.3.6.1.4.1.34774.4.1.23.4.2.1.14]'
          key: huawei.5300.pool.discovery
          delay: 1h
          description: 'Discovery of storage pools'
          item_prototypes:
            - uuid: 07d22960999a4d8392b90280bf8d3389
              name: 'Pool {#NAME}: Capacity free'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.4.2.1.9.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoStoragePoolFreeCapacity, "{#NAME}"]'
              units: B
              description: 'Available capacity of a storage pool.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1048576'
              tags:
                - tag: component
                  value: storage
                - tag: pool
                  value: '{#NAME}'
            - uuid: a800b047bda64f528ad4d22698efaa7d
              name: 'Pool {#NAME}: Capacity used percentage'
              type: CALCULATED
              key: 'huawei.5300.v5[hwInfoStoragePoolFreeCapacityPct, "{#NAME}"]'
              units: '%'
              params: 'last(//huawei.5300.v5[hwInfoStoragePoolSubscribedCapacity, "{#NAME}"])/last(//huawei.5300.v5[hwInfoStoragePoolTotalCapacity, "{#NAME}"])*100'
              description: 'Used capacity of a storage pool in percents.'
              tags:
                - tag: component
                  value: storage
                - tag: pool
                  value: '{#NAME}'
              trigger_prototypes:
                - uuid: 2ea46713fe664a64a851edca422257f8
                  expression: 'min(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoStoragePoolFreeCapacityPct, "{#NAME}"],{$HUAWEI.5300.POOL.CAPACITY.THRESH.TIME})>{#THRESHOLD}'
                  name: 'Huawei OceanStor 5300 V5: Pool {#NAME}: Used capacity is too high'
                  event_name: 'Huawei OceanStor 5300 V5: Pool {#NAME}: Used capacity is too high (over {#THRESHOLD}%)'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: capacity
            - uuid: 8a8bb086e75b4476af3686e5d28d8cfc
              name: 'Pool {#NAME}: Health status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.4.2.1.5.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoStoragePoolHealthStatus, "{#NAME}"]'
              description: |
                Health status of a storage pool. For details, see definition of Enum Values (HEALTH_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Health status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: pool
                  value: '{#NAME}'
              trigger_prototypes:
                - uuid: 8089b48aafb4403fa3187164685f8ca3
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoStoragePoolHealthStatus, "{#NAME}"])<>1'
                  name: 'Huawei OceanStor 5300 V5: Pool {#NAME}: Health status is not Normal'
                  priority: HIGH
                  tags:
                    - tag: scope
                      value: availability
            - uuid: a5e886744b82456e8a028f01d458307a
              name: 'Pool {#NAME}: Running status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.4.2.1.6.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoStoragePoolRunningStatus, "{#NAME}"]'
              description: |
                Operating status of a storage pool. For details, see definition of Enum Values (RUNNING_STATUS_E).
                https://support.huawei.com/enterprise/en/centralized-storage/oceanstor-5300-v5-pid-22462029?category=reference-guides&subcategory=mib-reference
              valuemap:
                name: 'Huawei storage: Running status'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 6h
              tags:
                - tag: component
                  value: health
                - tag: pool
                  value: '{#NAME}'
              trigger_prototypes:
                - uuid: 5ff1d6b5d90040928b90908859c2e8cd
                  expression: 'last(/Huawei OceanStor 5300 V5 by SNMP/huawei.5300.v5[hwInfoStoragePoolRunningStatus, "{#NAME}"])<>27'
                  name: 'Huawei OceanStor 5300 V5: Pool {#NAME}: Running status is not Online'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 8e59b01ae52b403a8e0da860c909faa1
              name: 'Pool {#NAME}: Capacity used'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.4.2.1.8.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoStoragePoolSubscribedCapacity, "{#NAME}"]'
              units: B
              description: 'Used capacity of a storage pool.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1048576'
              tags:
                - tag: component
                  value: storage
                - tag: pool
                  value: '{#NAME}'
            - uuid: e82a9a0946814522a517694df270a400
              name: 'Pool {#NAME}: Capacity total'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.34774.4.1.23.4.2.1.7.{#SNMPINDEX}]'
              key: 'huawei.5300.v5[hwInfoStoragePoolTotalCapacity, "{#NAME}"]'
              units: B
              description: 'Total capacity of a storage pool.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1048576'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 10m
              tags:
                - tag: component
                  value: storage
                - tag: pool
                  value: '{#NAME}'
          graph_prototypes:
            - uuid: 6a2ef2bf36e44139b8550d7f1950669a
              name: 'Pool {#NAME}: Capacity'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwInfoStoragePoolTotalCapacity, "{#NAME}"]'
                - sortorder: '1'
                  color: F63100
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwInfoStoragePoolSubscribedCapacity, "{#NAME}"]'
                - sortorder: '2'
                  color: 00611C
                  item:
                    host: 'Huawei OceanStor 5300 V5 by SNMP'
                    key: 'huawei.5300.v5[hwInfoStoragePoolFreeCapacity, "{#NAME}"]'
      tags:
        - tag: class
          value: hardware
        - tag: class
          value: storage
        - tag: subclass
          value: server
        - tag: target
          value: huawei
        - tag: target
          value: huawei-oceanstor-5300-v5
      macros:
        - macro: '{$CPU.UTIL.CRIT}'
          value: '90'
          description: 'The critical threshold of the CPU utilization expressed in %.'
          config:
            type: TEXT
            priority: '1'
            section_name: Thresholds
            label: 'Threshold for CPU utilization (critical)'
            description: 'The critical threshold of the CPU utilization expressed in %. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$HUAWEI.5300.DISK.TEMP.MAX.TIME}'
          value: 5m
          description: 'The time during which temperature of disk may exceed the threshold.'
          config:
            type: TEXT
            priority: '7'
            section_name: Thresholds
            label: 'Disk temperature threshold duration'
            description: 'The time during which temperature of disk may exceed the threshold.'
        - macro: '{$HUAWEI.5300.DISK.TEMP.MAX.WARN}'
          value: '45'
          description: 'Maximum temperature of disk. Can be used with {#MODEL} as context.'
          config:
            type: TEXT
            priority: '6'
            section_name: Thresholds
            label: 'Max disk temperature'
            description: 'Maximum temperature of disk. Can be used with {#MODEL} as context.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$HUAWEI.5300.LUN.IO.TIME.MAX.TIME}'
          value: 5m
          description: 'The time during which average I/O response time of LUN may exceed the threshold.'
          config:
            type: TEXT
            priority: '11'
            section_name: Thresholds
            label: 'LUN I/O response time threshold duration'
            description: 'The time during which average I/O response time of LUN may exceed the threshold.'
        - macro: '{$HUAWEI.5300.LUN.IO.TIME.MAX.WARN}'
          value: '100'
          description: 'Maximum average I/O response time of LUN in milliseconds.'
          config:
            type: TEXT
            priority: '10'
            section_name: Thresholds
            label: 'Max LUN I/O response time (ms)'
            description: 'Maximum average I/O response time of LUN in milliseconds.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$HUAWEI.5300.MEM.MAX.TIME}'
          value: 5m
          description: 'The time during which memory usage may exceed the threshold.'
          config:
            type: TEXT
            priority: '3'
            section_name: Thresholds
            label: 'Memory usage threshold duration'
            description: 'The time during which memory usage may exceed the threshold.'
        - macro: '{$HUAWEI.5300.MEM.MAX.WARN}'
          value: '90'
          description: 'Maximum percentage of memory used'
          config:
            type: TEXT
            priority: '2'
            section_name: Thresholds
            label: 'Max memory usage (%)'
            description: 'Maximum percentage of memory used In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$HUAWEI.5300.NODE.IO.DELAY.MAX.TIME}'
          value: 5m
          description: 'The time during which average I/O latency of node may exceed the threshold.'
          config:
            type: TEXT
            priority: '9'
            section_name: Thresholds
            label: 'Node I/O latency threshold duration'
            description: 'The time during which average I/O latency of node may exceed the threshold.'
        - macro: '{$HUAWEI.5300.NODE.IO.DELAY.MAX.WARN}'
          value: '20'
          description: 'Maximum average I/O latency of node in milliseconds.'
          config:
            type: TEXT
            priority: '8'
            section_name: Thresholds
            label: 'Max node I/O latency (ms)'
            description: 'Maximum average I/O latency of node in milliseconds.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$HUAWEI.5300.POOL.CAPACITY.THRESH.TIME}'
          value: 5m
          description: 'The time during which free capacity may exceed the {#THRESHOLD} from hwInfoStoragePoolFullThreshold.'
          config:
            type: TEXT
            priority: '12'
            section_name: Thresholds
            label: 'Free capacity threshold duration'
            description: 'The time during which free capacity may exceed the {#THRESHOLD} from hwInfoStoragePoolFullThreshold.'
        - macro: '{$HUAWEI.5300.TEMP.MAX.TIME}'
          value: 3m
          description: 'The time during which temperature of enclosure may exceed the threshold.'
          config:
            type: TEXT
            priority: '5'
            section_name: Thresholds
            label: 'Enclosure temperature threshold duration'
            description: 'The time during which temperature of enclosure may exceed the threshold.'
        - macro: '{$HUAWEI.5300.TEMP.MAX.WARN}'
          value: '35'
          description: 'Maximum temperature of enclosure'
          config:
            type: TEXT
            priority: '4'
            section_name: Thresholds
            label: 'Max enclosure temperature'
            description: 'Maximum temperature of enclosure'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_LOSS_WARN}'
          value: '20'
          description: 'Warning threshold of ICMP packet loss in %.'
          config:
            type: TEXT
            priority: '14'
            section_name: Thresholds
            label: 'Threshold of ICMP packet loss'
            description: 'Warning threshold of ICMP packet loss in %. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_RESPONSE_TIME_WARN}'
          value: '0.15'
          description: 'Warning threshold of the average ICMP response time in seconds.'
          config:
            type: TEXT
            priority: '15'
            section_name: Thresholds
            label: 'Threshold of the average ICMP response'
            description: 'Warning threshold of the average ICMP response time in seconds. No less than 0.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$SNMP.TIMEOUT}'
          value: 5m
          description: 'Time interval for the SNMP availability trigger.'
          config:
            type: TEXT
            priority: '13'
            section_name: Other
            label: 'Time interval'
            description: 'Time interval for the SNMP availability trigger.'
      dashboards:
        - uuid: 8d8982eb9082421ea74ba92f1ea7018e
          name: 'OceanStor 5300 V5: Overview'
          pages:
            - name: 'Capacity total'
              widgets:
                - type: graph
                  name: 'OceanStor 5300 V5: Capacity total'
                  width: '72'
                  height: '4'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'Huawei OceanStor 5300 V5 by SNMP'
                        name: 'OceanStor 5300 V5: Capacity'
                    - type: STRING
                      name: reference
                      value: AAAAA
            - name: 'CPU utilization'
              widgets:
                - type: graphprototype
                  name: 'Controller {#ID}: CPU utilization'
                  width: '36'
                  height: '4'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Huawei OceanStor 5300 V5 by SNMP'
                        name: 'Controller {#ID}: CPU utilization'
                    - type: STRING
                      name: reference
                      value: AAAAB
                - type: graphprototype
                  name: 'Node {#NODE}: CPU utilization'
                  x: '36'
                  width: '36'
                  height: '4'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Huawei OceanStor 5300 V5 by SNMP'
                        name: 'Node {#NODE}: CPU utilization'
                    - type: STRING
                      name: reference
                      value: AAAAC
            - name: Node
              widgets:
                - type: graphprototype
                  name: 'Node {#NODE}: Node I/O'
                  width: '36'
                  height: '4'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Huawei OceanStor 5300 V5 by SNMP'
                        name: 'Node {#NODE}: Node I/O'
                    - type: STRING
                      name: reference
                      value: AAAAD
                - type: graphprototype
                  name: 'Node {#NODE}: Node traffic'
                  x: '36'
                  width: '36'
                  height: '4'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Huawei OceanStor 5300 V5 by SNMP'
                        name: 'Node {#NODE}: Node traffic'
                    - type: STRING
                      name: reference
                      value: AAAAE
            - name: Lun
              widgets:
                - type: graphprototype
                  name: 'LUN {#NAME}: LUN I/O'
                  width: '36'
                  height: '4'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Huawei OceanStor 5300 V5 by SNMP'
                        name: 'LUN {#NAME}: LUN I/O'
                    - type: STRING
                      name: reference
                      value: AAAAF
                - type: graphprototype
                  name: 'LUN {#NAME}: LUN traffic'
                  x: '36'
                  width: '36'
                  height: '4'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Huawei OceanStor 5300 V5 by SNMP'
                        name: 'LUN {#NAME}: LUN traffic'
                    - type: STRING
                      name: reference
                      value: AAAAG
      valuemaps:
        - uuid: b5c6d9d67da54531a918c93a9c98cec8
          name: 'Huawei storage: Controller role'
          mappings:
            - value: '0'
              newvalue: Normal
            - value: '1'
              newvalue: Master
            - value: '2'
              newvalue: Slave
        - uuid: b7f399070ee0419cac1722f80268ff1a
          name: 'Huawei storage: Health status'
          mappings:
            - value: '0'
              newvalue: Undefined
            - value: '1'
              newvalue: Normal
            - value: '2'
              newvalue: Fault
            - value: '3'
              newvalue: Pre-fail
            - value: '4'
              newvalue: 'Partially broken'
            - value: '5'
              newvalue: Degraded
            - value: '6'
              newvalue: 'Bad sectors found'
            - value: '7'
              newvalue: 'Bit errors found'
            - value: '8'
              newvalue: Consistent
            - value: '9'
              newvalue: Inconsistent
            - value: '10'
              newvalue: Busy
            - value: '11'
              newvalue: 'No input'
            - value: '12'
              newvalue: 'Low battery'
            - value: '13'
              newvalue: 'Single link fault'
            - value: '14'
              newvalue: Invalid
            - value: '15'
              newvalue: 'Write protect'
        - uuid: e361f6b8fe92430f86d0e3dc70118ba9
          name: 'Huawei storage: LUN status'
          mappings:
            - value: '1'
              newvalue: Normal
            - value: '2'
              newvalue: Faulty
            - value: '3'
              newvalue: Unformatted
            - value: '4'
              newvalue: Formatting
        - uuid: ae5093d843784258aa32437cde486574
          name: 'Huawei storage: Running status'
          mappings:
            - value: '0'
              newvalue: Undefined
            - value: '1'
              newvalue: Normal
            - value: '2'
              newvalue: Running
            - value: '3'
              newvalue: 'Not running'
            - value: '4'
              newvalue: 'Not existed'
            - value: '5'
              newvalue: 'Sleep in high temperature'
            - value: '6'
              newvalue: Starting
            - value: '7'
              newvalue: 'Power failure protection'
            - value: '8'
              newvalue: 'Spin down'
            - value: '9'
              newvalue: Started
            - value: '10'
              newvalue: 'Link Up'
            - value: '11'
              newvalue: 'Link Down'
            - value: '12'
              newvalue: 'Powering on'
            - value: '13'
              newvalue: 'Powered off'
            - value: '14'
              newvalue: Pre-copy
            - value: '15'
              newvalue: Copyback
            - value: '16'
              newvalue: Reconstruction
            - value: '17'
              newvalue: Expansion
            - value: '18'
              newvalue: Unformatted
            - value: '19'
              newvalue: Formatting
            - value: '20'
              newvalue: Unmapped
            - value: '21'
              newvalue: 'Initial synchronizing'
            - value: '22'
              newvalue: Consistent
            - value: '23'
              newvalue: Synchronizing
            - value: '24'
              newvalue: Synchronized
            - value: '25'
              newvalue: Unsynchronized
            - value: '26'
              newvalue: Split
            - value: '27'
              newvalue: Online
            - value: '28'
              newvalue: Offline
            - value: '29'
              newvalue: Locked
            - value: '30'
              newvalue: Enabled
            - value: '31'
              newvalue: Disabled
            - value: '32'
              newvalue: Balancing
            - value: '33'
              newvalue: 'To be recovered'
            - value: '34'
              newvalue: Interrupted
            - value: '35'
              newvalue: Invalid
            - value: '36'
              newvalue: 'Not start'
            - value: '37'
              newvalue: Queuing
            - value: '38'
              newvalue: Stopped
            - value: '39'
              newvalue: Copying
            - value: '40'
              newvalue: Completed
            - value: '41'
              newvalue: Paused
            - value: '42'
              newvalue: 'Reverse synchronizing'
            - value: '43'
              newvalue: Activated
            - value: '44'
              newvalue: Restore
            - value: '45'
              newvalue: Inactive
            - value: '46'
              newvalue: Idle
            - value: '47'
              newvalue: 'Powering off'
            - value: '48'
              newvalue: Charging
            - value: '49'
              newvalue: 'Charging completed'
            - value: '50'
              newvalue: Discharging
            - value: '51'
              newvalue: Upgrading
            - value: '52'
              newvalue: 'Power Lost'
            - value: '53'
              newvalue: Initializing
            - value: '54'
              newvalue: 'Apply change'
            - value: '55'
              newvalue: 'Online disable'
            - value: '56'
              newvalue: 'Offline disable'
            - value: '57'
              newvalue: 'Online frozen'
            - value: '58'
              newvalue: 'Offline frozen'
            - value: '59'
              newvalue: Closed
            - value: '60'
              newvalue: Removing
            - value: '61'
              newvalue: 'In service'
            - value: '62'
              newvalue: 'Out of service'
            - value: '63'
              newvalue: 'Running normal'
            - value: '64'
              newvalue: 'Running fail'
            - value: '65'
              newvalue: 'Running success'
            - value: '66'
              newvalue: 'Running success'
            - value: '67'
              newvalue: 'Running failed'
            - value: '68'
              newvalue: Waiting
            - value: '69'
              newvalue: Canceling
            - value: '70'
              newvalue: Canceled
            - value: '71'
              newvalue: 'About to synchronize'
            - value: '72'
              newvalue: 'Synchronizing data'
            - value: '73'
              newvalue: 'Failed to synchronize'
            - value: '74'
              newvalue: Fault
            - value: '75'
              newvalue: Migrating
            - value: '76'
              newvalue: Migrated
            - value: '77'
              newvalue: Activating
            - value: '78'
              newvalue: Deactivating
            - value: '79'
              newvalue: 'Start failed'
            - value: '80'
              newvalue: 'Stop failed'
            - value: '81'
              newvalue: Decommissioning
            - value: '82'
              newvalue: Decommissioned
            - value: '83'
              newvalue: Recommissioning
            - value: '84'
              newvalue: 'Replacing node'
            - value: '85'
              newvalue: Scheduling
            - value: '86'
              newvalue: Pausing
            - value: '87'
              newvalue: Suspending
            - value: '88'
              newvalue: Suspended
            - value: '89'
              newvalue: Overload
            - value: '90'
              newvalue: 'To be switch'
            - value: '91'
              newvalue: Switching
            - value: '92'
              newvalue: 'To be cleanup'
            - value: '93'
              newvalue: 'Forced start'
            - value: '94'
              newvalue: Error
            - value: '95'
              newvalue: 'Job completed'
            - value: '96'
              newvalue: 'Partition Migrating'
            - value: '97'
              newvalue: Mount
            - value: '98'
              newvalue: Umount
            - value: '99'
              newvalue: INSTALLING
            - value: '100'
              newvalue: 'To Be Synchronized'
            - value: '101'
              newvalue: Connecting
            - value: '102'
              newvalue: 'Service Switching'
            - value: '103'
              newvalue: 'Power-on failed'
            - value: '104'
              newvalue: REPAIRING
            - value: '105'
              newvalue: abnormal
            - value: '106'
              newvalue: Deleting
            - value: '107'
              newvalue: Modifying
            - value: '108'
              newvalue: 'Running(clearing data)'
            - value: '109'
              newvalue: 'Running(synchronizing data)'
        - uuid: 0aa29a4ffa224d56a107a1cfbd6c416a
          name: 'Service state'
          mappings:
            - value: '0'
              newvalue: Down
            - value: '1'
              newvalue: Up
        - uuid: d107957d44424014a251dff95751a41f
          name: zabbix.host.available
          mappings:
            - value: '0'
              newvalue: 'not available'
            - value: '1'
              newvalue: available
            - value: '2'
              newvalue: unknown
    - uuid: 2ef2f2eb75ee4a0bae839e22aa76e5fc
      template: 'Jenkins by HTTP'
      name: 'Jenkins by HTTP'
      description: |
        Get Jenkins metrics by HTTP agent.
        Metrics are collected by requests to Metrics API. Install  Metrics plugin and configure access to the Metrics Servlet by issuing API key.
        Don't forget to change macros {$JENKINS.URL}, {$JENKINS.USER}, {$JENKINS.API.TOKEN}, {$JENKINS.API.KEY}.
        
        You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Overview
        
        The template to monitor Apache Jenkins by Zabbix that work without any external scripts.
        Most of the metrics are collected in one go, thanks to Zabbix bulk data collection.
        
        ## Setup
        
        Metrics are collected by requests to [Metrics API](https://plugins.jenkins.io/metrics/).
        For common metrics:
         Install and configure Metrics plugin parameters according [official documentations](https://plugins.jenkins.io/metrics/). Do not forget to configure access to the Metrics Servlet by issuing API key and change host wizard configuration field `API key`.
        
        For monitoring computers and builds:
         Create API token for monitoring user according [official documentations](https://www.jenkins.io/doc/book/system-administration/authenticating-scripted-clients/) and change host wizard configuration field `Username`, `Token` and `URL`.
      vendor:
        name: Zabbix
        version: 8.0-1
      groups:
        - name: Templates/Applications
      items:
        - uuid: 7ae6f7fae8d4485fb850c84ac00b7ff1
          name: 'Get computer info'
          type: HTTP_AGENT
          key: jenkins.computer_info
          history: '0'
          value_type: TEXT
          authtype: BASIC
          username: '{$JENKINS.USER}'
          password: '{$JENKINS.API.TOKEN}'
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
          url: '{$JENKINS.URL}/computer/api/json'
          tags:
            - tag: component
              value: computers
            - tag: component
              value: raw
        - uuid: 790aedce97be4e7dae6f4de8238340a7
          name: 'File descriptor ratio'
          type: DEPENDENT
          key: jenkins.descriptor.ratio
          value_type: FLOAT
          units: '%'
          description: 'The ratio of used to total file descriptors'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''vm.file.descriptor.ratio''].value'
            - type: MULTIPLIER
              parameters:
                - '100'
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: fds
          triggers:
            - uuid: 5ec22ac264d445769039bd4c13e41bf7
              expression: 'min(/Jenkins by HTTP/jenkins.descriptor.ratio,5m)>{$JENKINS.FILE_DESCRIPTORS.MAX.WARN}'
              name: 'Jenkins: Current number of used files is too high'
              event_name: 'Jenkins: Current number of used files is too high (over {$JENKINS.FILE_DESCRIPTORS.MAX.WARN}% for 5m)'
              priority: WARNING
              tags:
                - tag: scope
                  value: capacity
        - uuid: 0b3cf1992122407795eef5ab9474101d
          name: 'Disk space check'
          type: DEPENDENT
          key: jenkins.disk_space
          description: 'Returns FAIL if any of the Jenkins disk space monitors are reporting the disk space as less than the configured threshold.'
          valuemap:
            name: 'Jenkins healthcheck'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$[''disk-space''].healthy'
            - type: BOOL_TO_DECIMAL
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.healthcheck
          tags:
            - tag: component
              value: disk
        - uuid: 8095797fe6ef478db4a8acb60e1dcc54
          name: 'Disk space check message'
          type: DEPENDENT
          key: jenkins.disk_space.message
          value_type: CHAR
          description: 'The message will reference the first node which fails this check.  There may be other nodes that fail the check, but this health check is designed to fail fast.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$[''disk-space''].message'
              error_handler: CUSTOM_VALUE
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 3h
          master_item:
            key: jenkins.healthcheck
          tags:
            - tag: component
              value: disk
        - uuid: 26902068daf94cf3a5aec360be9abc18
          name: 'Executors count'
          type: DEPENDENT
          key: jenkins.executor.count
          description: 'The number of executors available to Jenkins. This is corresponds to the sum of all the executors of all the online nodes.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.executor.count.value''].value'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: executors
        - uuid: 7b672586e5194370a0c141570174d21a
          name: 'Executors free'
          type: DEPENDENT
          key: jenkins.executor.free
          description: 'The number of executors available to Jenkins that are not currently in use.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.executor.free.value''].value'
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: executors
        - uuid: 197470fead89470f94a910e9405498fe
          name: 'Executors in use'
          type: DEPENDENT
          key: jenkins.executor.in_use
          description: 'The number of executors available to Jenkins that are currently in use.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.executor.in-use.value''].value'
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: executors
        - uuid: 035f0609b9ba4231a31f3310ca8151b8
          name: 'Get gauges'
          type: DEPENDENT
          key: jenkins.gauges.raw
          history: '0'
          value_type: TEXT
          description: 'Raw items for gauges metrics.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.gauges
          master_item:
            key: jenkins.get_metrics
          tags:
            - tag: component
              value: raw
        - uuid: db4c0de52dca4c8a853edf918b35bbe4
          name: 'Get service metrics'
          type: HTTP_AGENT
          key: jenkins.get_metrics
          history: '0'
          value_type: TEXT
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
          url: '{$JENKINS.URL}/metrics/{$JENKINS.API.KEY}/metrics'
          tags:
            - tag: component
              value: raw
        - uuid: 4be0216b409d46a2a12e2929a9a03295
          name: 'Get healthcheck'
          type: HTTP_AGENT
          key: jenkins.healthcheck
          history: '0'
          value_type: TEXT
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
          url: '{$JENKINS.URL}/metrics/{$JENKINS.API.KEY}/healthcheck'
          tags:
            - tag: component
              value: health
        - uuid: d9677f596dae43e4984838061fe19d45
          name: 'HTTP active requests, rate'
          type: DEPENDENT
          key: jenkins.http.active_requests.rate
          value_type: FLOAT
          units: rps
          description: 'The number of currently active requests against the Jenkins master Web UI.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.counters.[''http.activeRequests''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.get_metrics
          tags:
            - tag: component
              value: requests
        - uuid: d95c9a1b19ed4da38bec3217eee2e590
          name: 'HTTP response 400, rate'
          type: DEPENDENT
          key: jenkins.http.bad_request.rate
          value_type: FLOAT
          units: rps
          description: 'The rate at which the Jenkins master Web UI is responding to requests with an HTTP/400 status code.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.responseCodes.badRequest''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: requests
            - tag: http-code
              value: '400'
        - uuid: b3d77a909487431bab2b0b7f7c89bf90
          name: 'HTTP response 201, rate'
          type: DEPENDENT
          key: jenkins.http.created.rate
          value_type: FLOAT
          units: rps
          description: 'The rate at which the Jenkins master Web UI is responding to requests with an HTTP/201 status code.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.responseCodes.created''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: requests
            - tag: http-code
              value: '201'
        - uuid: 3265515d32f840e9ade25c0d2892b372
          name: 'HTTP response 403, rate'
          type: DEPENDENT
          key: jenkins.http.forbidden.rate
          value_type: FLOAT
          units: rps
          description: 'The rate at which the Jenkins master Web UI is responding to requests with an HTTP/403 status code.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.responseCodes.forbidden''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: requests
            - tag: http-code
              value: '403'
        - uuid: 22b8fc85f441484cad8b2641748d75a1
          name: 'HTTP response 404, rate'
          type: DEPENDENT
          key: jenkins.http.not_found.rate
          value_type: FLOAT
          units: rps
          description: 'The rate at which the Jenkins master Web UI is responding to requests with an HTTP/404 status code.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.responseCodes.notFound''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: requests
            - tag: http-code
              value: '404'
        - uuid: 1a9a6b663aaa48bbacfc56c1569521c0
          name: 'HTTP response 304, rate'
          type: DEPENDENT
          key: jenkins.http.not_modified.rate
          value_type: FLOAT
          units: rps
          description: 'The rate at which the Jenkins master Web UI is responding to requests with an HTTP/304 status code.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.responseCodes.notModified''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: requests
            - tag: http-code
              value: '304'
        - uuid: 2a79c1139b44402fa8f31d6b61a0d739
          name: 'HTTP response 204, rate'
          type: DEPENDENT
          key: jenkins.http.no_content.rate
          value_type: FLOAT
          units: rps
          description: 'The rate at which the Jenkins master Web UI is responding to requests with an HTTP/204 status code.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.responseCodes.noContent''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: requests
            - tag: http-code
              value: '204'
        - uuid: c4c1dfcf2d904985a0ca6956724adf41
          name: 'HTTP response 200, rate'
          type: DEPENDENT
          key: jenkins.http.ok.rate
          value_type: FLOAT
          units: rps
          description: 'The rate at which the Jenkins master Web UI is responding to requests with an HTTP/200 status code.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.responseCodes.ok''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: requests
            - tag: http-code
              value: '200'
        - uuid: afdab05416084124887bcec705f2603d
          name: 'HTTP response other, rate'
          type: DEPENDENT
          key: jenkins.http.other.rate
          value_type: FLOAT
          units: rps
          description: 'The rate at which the Jenkins master Web UI is responding to requests with a non-informational status code that is not in the list: HTTP/200, HTTP/201, HTTP/204, HTTP/304, HTTP/400, HTTP/403, HTTP/404, HTTP/500, or HTTP/503.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.responseCodes.other''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: requests
            - tag: http-code
              value: other
        - uuid: 5169a969034b4da29eaab59c7c3aa719
          name: 'HTTP requests, rate'
          type: DEPENDENT
          key: jenkins.http.requests.rate
          value_type: FLOAT
          units: rps
          description: 'The rate at which the Jenkins master Web UI is receiving requests.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.requests''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: requests
        - uuid: 9a4ad856db02403b8b523179bf4b3699
          name: 'HTTP requests, median'
          type: DEPENDENT
          key: jenkins.http.requests_p50.rate
          value_type: FLOAT
          units: s
          description: 'The time spent generating the corresponding responses.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.requests''].p50'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: requests
        - uuid: 6766b45e349e4a4d88593207df6b35ba
          name: 'HTTP requests, p95'
          type: DEPENDENT
          key: jenkins.http.requests_p95.rate
          value_type: FLOAT
          units: s
          description: 'The time spent generating the corresponding responses.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.requests''].p95'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: requests
        - uuid: 320cc4d7fafc4c87ab8d92bd76901982
          name: 'HTTP response 500, rate'
          type: DEPENDENT
          key: jenkins.http.server_error.rate
          value_type: FLOAT
          units: rps
          description: 'The rate at which the Jenkins master Web UI is responding to requests with an HTTP/500 status code.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.responseCodes.serverError''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: requests
            - tag: http-code
              value: '500'
        - uuid: d4ad6574138443a18e721f3d518d5e61
          name: 'HTTP response 503, rate'
          type: DEPENDENT
          key: jenkins.http.service_unavailable.rate
          value_type: FLOAT
          units: rps
          description: 'The rate at which the Jenkins master Web UI is responding to requests with an HTTP/503 status code.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''http.responseCodes.serviceUnavailable''].count'
            - type: CHANGE_PER_SECOND
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: requests
            - tag: http-code
              value: '503'
        - uuid: ecca8e2341c14ede9e397ddc39df5592
          name: 'Job blocked duration, median'
          type: DEPENDENT
          key: jenkins.job.blocked.duration.p50
          value_type: FLOAT
          units: s
          description: 'The amount of time which jobs spend in the blocked state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.blocked.duration''].p50'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 859a7845f3d8483ba3378f7077509784
          name: 'Job blocked duration, p95'
          type: DEPENDENT
          key: jenkins.job.blocked.duration.p95
          value_type: FLOAT
          units: s
          description: 'The amount of time which jobs spend in the blocked state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.blocked.duration''].p95'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: ca4e141c83344aeeb32d9ea2d9017cbf
          name: 'Job blocked, m1 rate'
          type: DEPENDENT
          key: jenkins.job.blocked.m1.rate
          value_type: FLOAT
          description: 'The rate at which jobs in the build queue enter the blocked state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.blocked.duration''].m1_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: d0a242007b424a0e80dbfb90577eaab2
          name: 'Job blocked, m5 rate'
          type: DEPENDENT
          key: jenkins.job.blocked.m5.rate
          value_type: FLOAT
          description: 'The rate at which jobs in the build queue enter the blocked state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.blocked.duration''].m5_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 3c2ba170a89040089b226871512e237b
          name: 'Job buildable duration, median'
          type: DEPENDENT
          key: jenkins.job.buildable.duration.p50
          value_type: FLOAT
          units: s
          description: 'The amount of time which jobs spend in the buildable state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.buildable.duration''].p50'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 9047881efcb84822b7da852f4c66dbff
          name: 'Job buildable duration, p95'
          type: DEPENDENT
          key: jenkins.job.buildable.duration.p95
          value_type: FLOAT
          units: s
          description: 'The amount of time which jobs spend in the buildable state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.buildable.duration''].p95'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 1d8e643a0ddc44aa951ee516372e587b
          name: 'Job buildable, m1 rate'
          type: DEPENDENT
          key: jenkins.job.buildable.m1.rate
          value_type: FLOAT
          description: 'The rate at which jobs in the build queue enter the buildable state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.buildable.duration''].m1_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 0e1d712b9a854922b28e3ddf871bf7b1
          name: 'Job buildable, m5 rate'
          type: DEPENDENT
          key: jenkins.job.buildable.m5.rate
          value_type: FLOAT
          description: 'The rate at which jobs in the build queue enter the buildable state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.buildable.duration''].m5_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: c0c0335fd8654cfaa9534c816fbee967
          name: 'Job building duration, median'
          type: DEPENDENT
          key: jenkins.job.building.duration.p50
          value_type: FLOAT
          units: s
          description: 'The amount of time which jobs spend building.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.building.duration''].p50'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 61fb13ee0d0f4e1bb5fdab1ea35371ef
          name: 'Job building duration, p95'
          type: DEPENDENT
          key: jenkins.job.building.duration.p95
          value_type: FLOAT
          units: s
          description: 'The amount of time which jobs spend building.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.building.duration''].p95'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 08ebe2359c4f4134aaf610b50bcba8fe
          name: 'Job building, m1 rate'
          type: DEPENDENT
          key: jenkins.job.building.m1.rate
          value_type: FLOAT
          description: 'The rate at which jobs are built.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.building.duration''].m1_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 36f551fd55814000b76b5b63c05051d7
          name: 'Job building, m5 rate'
          type: DEPENDENT
          key: jenkins.job.building.m5.rate
          value_type: FLOAT
          description: 'The rate at which jobs are built.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.building.duration''].m5_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 39bc5fdfbe884c72816d34045438ea7d
          name: 'Jobs count'
          type: DEPENDENT
          key: jenkins.job.count.value
          description: 'The number of jobs in Jenkins.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.count.value''].value'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 3h
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: jobs
        - uuid: af40fcdb50c545bd9b49a6f4b7a26fea
          name: 'Job queuing duration, median'
          type: DEPENDENT
          key: jenkins.job.queuing.duration.p50
          value_type: FLOAT
          units: s
          description: 'The total time which jobs spend in the build queue.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.queuing.duration''].p50'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: f797a4698f1b41f885a8cdd3d98924e2
          name: 'Job queuing duration, p95'
          type: DEPENDENT
          key: jenkins.job.queuing.duration.p95
          value_type: FLOAT
          units: s
          description: 'The total time which jobs spend in the build queue.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.queuing.duration''].p95'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: d9f785e6f2e148ee98d922524f014037
          name: 'Job queuing, m1 rate'
          type: DEPENDENT
          key: jenkins.job.queuing.m1.rate
          value_type: FLOAT
          description: 'The rate at which jobs are queued.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.queuing.duration''].m1_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 10c80e91b2214ab2b43458a1d65c3a18
          name: 'Job queuing, m5 rate'
          type: DEPENDENT
          key: jenkins.job.queuing.m5.rate
          value_type: FLOAT
          description: 'The rate at which jobs are queued.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.queuing.duration''].m5_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: ff842a648bcc4aaa89f2200e0d4bb661
          name: 'Job scheduled, m1 rate'
          type: DEPENDENT
          key: jenkins.job.scheduled.m1.rate
          value_type: FLOAT
          description: 'The rate at which jobs are scheduled. If a job is already in the queue and an identical request for scheduling the job is received then Jenkins will coalesce the two requests. This metric gives a reasonably pure measure of the load requirements of the Jenkins master as it is unaffected by the number of executors available to the system.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.scheduled''].m1_rate'
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: jobs
        - uuid: bc2de2ce8e9d474d8e2591d76adecabe
          name: 'Jobs scheduled, m5 rate'
          type: DEPENDENT
          key: jenkins.job.scheduled.m5.rate
          value_type: FLOAT
          description: 'The rate at which jobs are scheduled. If a job is already in the queue and an identical request for scheduling the job is received then Jenkins will coalesce the two requests. This metric gives a reasonably pure measure of the load requirements of the Jenkins master as it is unaffected by the number of executors available to the system.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.scheduled''].m5_rate'
          master_item:
            key: jenkins.meters.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 975124750e3e4c969711185ea58bcb49
          name: 'Job total duration, median'
          type: DEPENDENT
          key: jenkins.job.total.duration.p50
          value_type: FLOAT
          units: s
          description: 'The total time which jobs spend from entering the build queue to completing building.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.total.duration''].p50'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: dbc0aeedccb740b4a7c1b5f84eb2513b
          name: 'Job total duration, p95'
          type: DEPENDENT
          key: jenkins.job.total.duration.p95
          value_type: FLOAT
          units: s
          description: 'The total time which jobs spend from entering the build queue to completing building.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.total.duration''].p95'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 19c5a45a673c4af2be5808faf35a3892
          name: 'Job total, m1 rate'
          type: DEPENDENT
          key: jenkins.job.total.m1.rate
          value_type: FLOAT
          description: 'The rate at which jobs are queued.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.total.duration''].m1_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 58067833af494a66b4a44bc25ac17a0e
          name: 'Job total, m5 rate'
          type: DEPENDENT
          key: jenkins.job.total.m5.rate
          value_type: FLOAT
          description: 'The rate at which jobs are queued.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.total.duration''].m5_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: dd7a1e8142f94ef099f6aa0ed1facce3
          name: 'Job waiting duration, median'
          type: DEPENDENT
          key: jenkins.job.waiting.duration.p50
          value_type: FLOAT
          units: s
          description: 'The total amount of time that jobs spend in their quiet period.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.waiting.duration''].p50'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: bb339169024b4461a39261f3fe36de4f
          name: 'Job waiting duration, p95'
          type: DEPENDENT
          key: jenkins.job.waiting.duration.p95
          value_type: FLOAT
          units: s
          description: 'The total amount of time that jobs spend in their quiet period.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.waiting.duration''].p95'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 2d21f74757374b769ae8e76d4d7afa79
          name: 'Job waiting, m1 rate'
          type: DEPENDENT
          key: jenkins.job.waiting.m1.rate
          value_type: FLOAT
          description: 'The rate at which jobs enter the quiet period.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.waiting.duration''].m1_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: 9e16580148964e9aae3a660b18721bee
          name: 'Job waiting, m5 rate'
          type: DEPENDENT
          key: jenkins.job.waiting.m5.rate
          value_type: FLOAT
          description: 'The rate at which jobs enter the quiet period.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.job.waiting.duration''].m5_rate'
          master_item:
            key: jenkins.timers.raw
          tags:
            - tag: component
              value: jobs
        - uuid: dc47555812a0485e9d77da3e5a1c1227
          name: 'Get jobs info'
          type: HTTP_AGENT
          key: jenkins.job_info
          delay: 5m
          history: '0'
          value_type: TEXT
          authtype: BASIC
          username: '{$JENKINS.USER}'
          password: '{$JENKINS.API.TOKEN}'
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
          url: '{$JENKINS.URL}/api/json'
          query_fields:
            - name: tree
              value: 'jobs[name,description,url,healthReport[score],lastBuild[number,result,duration,timestamp],lastSuccessfulBuild[number,result,duration,timestamp],lastFailedBuild[number,result,duration,timestamp]]'
          tags:
            - tag: component
              value: jobs
            - tag: component
              value: raw
        - uuid: dd8237e43a0d494394da664bc58a5fec
          name: 'Get meters'
          type: DEPENDENT
          key: jenkins.meters.raw
          history: '0'
          value_type: TEXT
          description: 'Raw items for meters metrics.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.meters
          master_item:
            key: jenkins.get_metrics
          tags:
            - tag: component
              value: raw
        - uuid: 930fa76b32484155ae3ec8964e3952a1
          name: 'Nodes count'
          type: DEPENDENT
          key: jenkins.node.count
          description: 'The number of build nodes available to Jenkins, both online and offline.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.node.count.value''].value'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: nodes
        - uuid: 440bdc39d2444b9e83cc863e34f3b416
          name: 'Nodes offline'
          type: DEPENDENT
          key: jenkins.node.offline
          description: 'The number of build nodes available to Jenkins but currently offline.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.node.offline.value''].value'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: nodes
        - uuid: 758ead9ea71646be882b9bff280ce4d6
          name: 'Nodes online'
          type: DEPENDENT
          key: jenkins.node.online
          description: 'The number of build nodes available to Jenkins and currently online.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.node.online.value''].value'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: nodes
          triggers:
            - uuid: 4cee7d0f5faf4595a67c6c0e33153f4d
              expression: 'last(/Jenkins by HTTP/jenkins.node.online)=0'
              name: 'Jenkins: Service has no online nodes'
              priority: AVERAGE
              tags:
                - tag: scope
                  value: availability
        - uuid: 21cad39b9c914516827b09d04716a71f
          name: 'Service ping'
          type: HTTP_AGENT
          key: jenkins.ping
          valuemap:
            name: 'Service state'
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
              error_handler: CUSTOM_VALUE
              error_handler_params: '0'
            - type: REGEX
              parameters:
                - '{$JENKINS.PING.REPLY}'
                - '1'
              error_handler: CUSTOM_VALUE
              error_handler_params: '0'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 30m
          url: '{$JENKINS.URL}/metrics/{$JENKINS.API.KEY}/ping'
          tags:
            - tag: component
              value: health
          triggers:
            - uuid: ae12ac7aa5c54858a794eb8fc888f90c
              expression: 'last(/Jenkins by HTTP/jenkins.ping)=0'
              name: 'Jenkins: Service is down'
              priority: AVERAGE
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: availability
        - uuid: 81609d18d2004fe28f9cb096cdb03995
          name: 'Plugins check'
          type: DEPENDENT
          key: jenkins.plugins
          description: 'Returns FAIL if any of the Jenkins plugins failed to start.'
          valuemap:
            name: 'Jenkins healthcheck'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.plugins.healthy
            - type: BOOL_TO_DECIMAL
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.healthcheck
          tags:
            - tag: component
              value: plugins
        - uuid: e3fae3ddf1fa47db9925106098bc31eb
          name: 'Plugins active'
          type: DEPENDENT
          key: jenkins.plugins.active
          description: 'The number of plugins in the Jenkins instance that started successfully.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.plugins.active''].value'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: plugins
        - uuid: e8a9f7bd98004939b75749c29227859c
          name: 'Plugins failed'
          type: DEPENDENT
          key: jenkins.plugins.failed
          description: 'The number of plugins in the Jenkins instance that failed to start. A value other than 0 is typically indicative of a potential issue within the Jenkins installation that will either be solved by explicitly disabling the plugin(s) or by resolving the plugin dependency issues.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.plugins.failed''].value'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: plugins
        - uuid: 0b2ad285bc2b4ef5a01633d57099434c
          name: 'Plugins inactive'
          type: DEPENDENT
          key: jenkins.plugins.inactive
          description: 'The number of plugins in the Jenkins instance that are not currently enabled.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.plugins.inactive''].value'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: plugins
        - uuid: d678faf0377a4024a930adcdb1c2db2f
          name: 'Plugins check message'
          type: DEPENDENT
          key: jenkins.plugins.message
          value_type: CHAR
          description: 'The message of plugins health check.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$[''plugins''].message'
              error_handler: CUSTOM_VALUE
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 3h
          master_item:
            key: jenkins.healthcheck
          tags:
            - tag: component
              value: plugins
        - uuid: f1bf69d134a848178b21a050c830aa8a
          name: 'Plugins with update'
          type: DEPENDENT
          key: jenkins.plugins.with_update
          description: 'The number of plugins in the Jenkins instance that have a newer version reported as available in the current Jenkins update center metadata held by Jenkins. This value is not indicative of an issue with Jenkins but high values can be used as a trigger to review the plugins with updates with a view to seeing whether those updates potentially contain fixes for issues that could be affecting your Jenkins instance.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.plugins.withUpdate''].value'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: plugins
        - uuid: a5b58789e54b43f896d4d7e64f8415d3
          name: 'Projects count'
          type: DEPENDENT
          key: jenkins.project.count
          description: 'The number of projects.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.project.count.value''].value'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: application
        - uuid: db758cf660c14d69b37f724545de7662
          name: 'Build queue, blocked'
          type: DEPENDENT
          key: jenkins.queue.blocked
          description: 'The number of jobs that are in the Jenkins build queue and currently in the blocked state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.queue.blocked.value''].value'
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: queue
        - uuid: 1160d4150fa840b5a4628eeb6e8cdaab
          name: 'Build queue, buildable'
          type: DEPENDENT
          key: jenkins.queue.buildable
          description: 'The number of jobs that are in the Jenkins build queue and currently in the blocked state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.queue.buildable.value''].value'
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: queue
        - uuid: 456ddd17c4044d578a11d8cac80d229b
          name: 'Build queue, pending'
          type: DEPENDENT
          key: jenkins.queue.pending
          description: 'The number of jobs that are in the Jenkins build queue and currently in the blocked state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.queue.pending.value''].value'
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: queue
        - uuid: f99d731f466445dcb3aeda3f306a5de6
          name: 'Build queue, size'
          type: DEPENDENT
          key: jenkins.queue.size
          description: 'The number of jobs that are in the Jenkins build queue.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.queue.size.value''].value'
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: queue
        - uuid: 90387bb3b3384adcafa66b4c9543d1ab
          name: 'Build queue, stuck'
          type: DEPENDENT
          key: jenkins.queue.stuck
          description: 'The number of jobs that are in the Jenkins build queue and currently in the blocked state.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.queue.stuck.value''].value'
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: queue
        - uuid: 9c97e12efa624176b95aef3413aec1a8
          name: 'CPU Load'
          type: DEPENDENT
          key: jenkins.system.cpu.load
          value_type: FLOAT
          description: 'The system load on the Jenkins master as reported by the JVM''s Operating System JMX bean. The calculation of system load is operating system dependent. Typically this is the sum of the number of processes that are currently running plus the number that are waiting to run. This is typically comparable against the number of CPU cores.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''system.cpu.load''].value'
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: cpu
        - uuid: ca81bc28fbc14dbc9eb7b0fa6a46a65d
          name: Uptime
          type: DEPENDENT
          key: jenkins.system.uptime
          units: s
          description: 'The number of seconds since the Jenkins master JVM started.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''vm.uptime.milliseconds''].value'
            - type: MULTIPLIER
              parameters:
                - '0.001'
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: application
          triggers:
            - uuid: 7d20942598a648ebb2e03f9acdb3e5e3
              expression: 'last(/Jenkins by HTTP/jenkins.system.uptime)<10m'
              name: 'Jenkins: Host has been restarted'
              event_name: 'Jenkins: {HOST.NAME} has been restarted (uptime < 10m)'
              priority: INFO
              description: 'Uptime is less than 10 minutes.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
        - uuid: ea80ab8045a44f96a5cb2736c009258f
          name: 'Temporary space check'
          type: DEPENDENT
          key: jenkins.temporary_space
          description: 'Returns FAIL if any of the Jenkins temporary space monitors are reporting the temporary space as less than the configured threshold.'
          valuemap:
            name: 'Jenkins healthcheck'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$[''temporary-space''].healthy'
            - type: BOOL_TO_DECIMAL
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.healthcheck
          tags:
            - tag: component
              value: disk
        - uuid: d884c3a9662e48eeaf6c9ba50641a2cb
          name: 'Temporary space check message'
          type: DEPENDENT
          key: jenkins.temporary_space.message
          value_type: CHAR
          description: 'The message will reference the first node which fails this check. There may be other nodes that fail the check, but this health check is designed to fail fast.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$[''temporary-space''].message'
              error_handler: CUSTOM_VALUE
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 3h
          master_item:
            key: jenkins.healthcheck
          tags:
            - tag: component
              value: disk
        - uuid: 39f474c3c6f841af9b14113df04bf078
          name: 'Thread deadlock check'
          type: DEPENDENT
          key: jenkins.thread_deadlock
          description: 'Returns FAIL if there are any deadlocked threads in the Jenkins master JVM.'
          valuemap:
            name: 'Jenkins healthcheck'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$[''thread-deadlock''].healthy'
            - type: BOOL_TO_DECIMAL
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          master_item:
            key: jenkins.healthcheck
          tags:
            - tag: component
              value: threads
        - uuid: 64f62df61b6b4f4c9963e09b827850e1
          name: 'Thread deadlock check message'
          type: DEPENDENT
          key: jenkins.thread_deadlock.message
          value_type: CHAR
          description: 'The message of thread deadlock health check.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$[''thread-deadlock''].message'
              error_handler: CUSTOM_VALUE
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 3h
          master_item:
            key: jenkins.healthcheck
          tags:
            - tag: component
              value: system
        - uuid: b988986e794d44c79629f865cc6f77e7
          name: 'Get timers'
          type: DEPENDENT
          key: jenkins.timers.raw
          history: '0'
          value_type: TEXT
          description: 'Raw items for timers metrics.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.timers
          master_item:
            key: jenkins.get_metrics
          tags:
            - tag: component
              value: raw
        - uuid: ae836e5439cf494a9ed0681836da854e
          name: Version
          type: DEPENDENT
          key: jenkins.version
          value_type: CHAR
          description: 'Version of Jenkins server.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.[''jenkins.versions.core''].value'
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 3h
          master_item:
            key: jenkins.gauges.raw
          tags:
            - tag: component
              value: application
          triggers:
            - uuid: 3dd66b51ed1b4fc2a250daf3e9999e4f
              expression: 'last(/Jenkins by HTTP/jenkins.version,#1)<>last(/Jenkins by HTTP/jenkins.version,#2) and length(last(/Jenkins by HTTP/jenkins.version))>0'
              name: 'Jenkins: Version has changed'
              event_name: 'Jenkins: Version has changed (new version: {ITEM.VALUE})'
              priority: INFO
              description: 'The Jenkins version has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
      discovery_rules:
        - uuid: eb3e35534745476c8b205acb88382c77
          name: 'Computers discovery'
          type: HTTP_AGENT
          key: jenkins.computers
          delay: 1h
          authtype: BASIC
          username: '{$JENKINS.USER}'
          password: '{$JENKINS.API.TOKEN}'
          item_prototypes:
            - uuid: fe0191db274944699107010f7f7c8091
              name: 'Computer [{#DISPLAY_NAME}]: Available physical memory'
              type: DEPENDENT
              key: 'jenkins.computer.available_physical_memory[{#DISPLAY_NAME}]'
              units: B
              description: 'The total physical memory of the system, available bytes.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.monitorData[''hudson.node_monitors.SwapSpaceMonitor''].availablePhysicalMemory'
                  error_handler: DISCARD_VALUE
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: component
                  value: memory
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: 4d00cdff0ed0442ab419754264d78ec9
              name: 'Computer [{#DISPLAY_NAME}]: Available swap space'
              type: DEPENDENT
              key: 'jenkins.computer.available_swap_space[{#DISPLAY_NAME}]'
              units: B
              description: 'Available swap space in bytes.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.monitorData[''hudson.node_monitors.SwapSpaceMonitor''].availableSwapSpace'
                  error_handler: DISCARD_VALUE
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: component
                  value: memory
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: ff5a78519c834902ae607832b67f2558
              name: 'Computer [{#DISPLAY_NAME}]: Clock difference'
              type: DEPENDENT
              key: 'jenkins.computer.clock_difference[{#DISPLAY_NAME}]'
              value_type: FLOAT
              units: s
              description: 'The clock difference between the master and nodes.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.monitorData[''hudson.node_monitors.ClockMonitor''].diff'
                  error_handler: DISCARD_VALUE
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: 4dcf897c9c2c4ce58483ef6de6786000
              name: 'Computer [{#DISPLAY_NAME}]: Available disk space'
              type: DEPENDENT
              key: 'jenkins.computer.disk_space[{#DISPLAY_NAME}]'
              units: B
              description: 'The available disk space of $JENKINS_HOME on agent.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.monitorData[''hudson.node_monitors.DiskSpaceMonitor''].size'
                  error_handler: DISCARD_VALUE
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: component
                  value: disk
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: fad90db95f69491da5f9af0967995021
              name: 'Computer [{#DISPLAY_NAME}]: Get computer'
              type: DEPENDENT
              key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              history: '0'
              value_type: TEXT
              description: 'Raw data for a computer.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.computer.[?(@.displayName == "{#DISPLAY_NAME}")].first()'
                  error_handler: DISCARD_VALUE
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: jenkins.computer_info
              tags:
                - tag: component
                  value: computers
                - tag: component
                  value: raw
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: 1bca0941b2d24de5980eeb5cb3516b2c
              name: 'Computer [{#DISPLAY_NAME}]: Idle'
              type: DEPENDENT
              key: 'jenkins.computer.idle[{#DISPLAY_NAME}]'
              description: 'Returns true if all the executors of this computer are idle.'
              valuemap:
                name: 'Computer state'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.idle
                - type: BOOL_TO_DECIMAL
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: 38a5eb0b4fb44b93b9f764edcd3f6c49
              name: 'Computer [{#DISPLAY_NAME}]: Executors'
              type: DEPENDENT
              key: 'jenkins.computer.numExecutors[{#DISPLAY_NAME}]'
              description: 'The maximum number of concurrent builds that Jenkins may perform on this node.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.numExecutors
                  error_handler: DISCARD_VALUE
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: 8ddcfbf9b9d84fb290e9f30db7406ea1
              name: 'Computer [{#DISPLAY_NAME}]: Offline cause reason'
              type: DEPENDENT
              key: 'jenkins.computer.offline.reason[{#DISPLAY_NAME}]'
              value_type: CHAR
              description: 'If the computer was offline (either temporarily or not), will return the cause as a string (without user info). Empty string if the system was put offline without given a cause.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.offlineCauseReason
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 3h
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: a2068445af644089be8501da5b02144a
              name: 'Computer [{#DISPLAY_NAME}]: Response time average'
              type: DEPENDENT
              key: 'jenkins.computer.response_time[{#DISPLAY_NAME}]'
              units: s
              description: 'The round trip network response time from the master to the agent'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.monitorData[''hudson.node_monitors.ResponseTimeMonitor''].average'
                  error_handler: DISCARD_VALUE
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: b8af2fb1f6d646978739b9c44ea85a27
              name: 'Computer [{#DISPLAY_NAME}]: State'
              type: DEPENDENT
              key: 'jenkins.computer.state[{#DISPLAY_NAME}]'
              description: |
                Represents the actual online/offline state.
                Node description: {#DESCRIPTION}
              valuemap:
                name: 'Computer online'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.offline
                - type: BOOL_TO_DECIMAL
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: f1318d38fa5a469a999265896e4546dd
              name: 'Computer [{#DISPLAY_NAME}]: Temporarily offline'
              type: DEPENDENT
              key: 'jenkins.computer.temp_offline[{#DISPLAY_NAME}]'
              description: 'Returns true if this node is marked temporarily offline.'
              valuemap:
                name: 'Computer state'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.temporarilyOffline
                - type: BOOL_TO_DECIMAL
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: 5704446ab4f34eb2bc33b8ed6d8da691
              name: 'Computer [{#DISPLAY_NAME}]: Available temp space'
              type: DEPENDENT
              key: 'jenkins.computer.temp_space[{#DISPLAY_NAME}]'
              units: B
              description: 'The available disk space of the temporary directory. Java tools and tests/builds often create files in the temporary directory, and may not function properly if there''s no available space.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.monitorData[''hudson.node_monitors.TemporarySpaceMonitor''].size'
                  error_handler: DISCARD_VALUE
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: component
                  value: disk
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: 5c3dc14eb6264153a0cd7ddd8effb869
              name: 'Computer [{#DISPLAY_NAME}]: Total physical memory'
              type: DEPENDENT
              key: 'jenkins.computer.total_physical_memory[{#DISPLAY_NAME}]'
              units: B
              description: 'Total physical memory of the system, in bytes.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.monitorData[''hudson.node_monitors.SwapSpaceMonitor''].totalPhysicalMemory'
                  error_handler: DISCARD_VALUE
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: component
                  value: memory
                - tag: computer
                  value: '{#DISPLAY_NAME}'
            - uuid: c18b82a205d345fa9c1b92e59521735a
              name: 'Computer [{#DISPLAY_NAME}]: Total swap space'
              type: DEPENDENT
              key: 'jenkins.computer.total_swap_space[{#DISPLAY_NAME}]'
              units: B
              description: 'Total number of swap space in bytes.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.monitorData[''hudson.node_monitors.SwapSpaceMonitor''].totalSwapSpace'
                  error_handler: DISCARD_VALUE
              master_item:
                key: 'jenkins.computer.get[{#DISPLAY_NAME}]'
              tags:
                - tag: component
                  value: computers
                - tag: component
                  value: memory
                - tag: computer
                  value: '{#DISPLAY_NAME}'
          trigger_prototypes:
            - uuid: a2347420d1f14fd2b55cbb0865282268
              expression: 'last(/Jenkins by HTTP/jenkins.computer.state[{#DISPLAY_NAME}])=1 and length(last(/Jenkins by HTTP/jenkins.computer.offline.reason[{#DISPLAY_NAME}]))>0'
              name: 'Jenkins: Computer [{#DISPLAY_NAME}]: Node is down'
              priority: AVERAGE
              description: 'Node down with reason: {{ITEM.LASTVALUE2}.regsub("(.*)",\1)}'
              dependencies:
                - name: 'Jenkins: Computer [{#DISPLAY_NAME}]: Node is temporarily offline'
                  expression: 'last(/Jenkins by HTTP/jenkins.computer.temp_offline[{#DISPLAY_NAME}])=1 and length(last(/Jenkins by HTTP/jenkins.computer.offline.reason[{#DISPLAY_NAME}]))>0'
                - name: 'Jenkins: Service has no online nodes'
                  expression: 'last(/Jenkins by HTTP/jenkins.node.online)=0'
              tags:
                - tag: scope
                  value: availability
            - uuid: bf04115784bc48ffa27d5d2d65176853
              expression: 'last(/Jenkins by HTTP/jenkins.computer.temp_offline[{#DISPLAY_NAME}])=1 and length(last(/Jenkins by HTTP/jenkins.computer.offline.reason[{#DISPLAY_NAME}]))>0'
              name: 'Jenkins: Computer [{#DISPLAY_NAME}]: Node is temporarily offline'
              priority: INFO
              description: 'Node is temporarily Offline with reason: {{ITEM.LASTVALUE2}.regsub("(.*)",\1)}'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: availability
          graph_prototypes:
            - uuid: 6296f12b13934006bd462eb4937ca248
              name: 'Computer [{#DISPLAY_NAME}]: Physical memory'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'Jenkins by HTTP'
                    key: 'jenkins.computer.total_physical_memory[{#DISPLAY_NAME}]'
                - sortorder: '1'
                  color: F63100
                  item:
                    host: 'Jenkins by HTTP'
                    key: 'jenkins.computer.available_physical_memory[{#DISPLAY_NAME}]'
            - uuid: b8dcbbaf33d54a0fab3780a5fdd541e0
              name: 'Computer [{#DISPLAY_NAME}]: Swap space'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'Jenkins by HTTP'
                    key: 'jenkins.computer.available_swap_space[{#DISPLAY_NAME}]'
                - sortorder: '1'
                  color: F63100
                  item:
                    host: 'Jenkins by HTTP'
                    key: 'jenkins.computer.total_swap_space[{#DISPLAY_NAME}]'
          url: '{$JENKINS.URL}/computer/api/json'
          query_fields:
            - name: tree
              value: 'computer[description,displayName,monitorData]'
          lld_macro_paths:
            - lld_macro: '{#DESCRIPTION}'
              path: $.description
            - lld_macro: '{#DISPLAY_NAME}'
              path: $.displayName
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.computer.[*]'
        - uuid: 25949e5e452e4fa384ec4aa2088375aa
          name: 'Jobs discovery'
          type: HTTP_AGENT
          key: jenkins.jobs
          delay: 1h
          authtype: BASIC
          username: '{$JENKINS.USER}'
          password: '{$JENKINS.API.TOKEN}'
          item_prototypes:
            - uuid: b2a99bad873046cda1d5b839aa43ba91
              name: 'Job [{#NAME}]: Health score'
              type: DEPENDENT
              key: 'jenkins.build.health[{#NAME}]'
              description: |
                Represents health of project. A number between 0-100.
                Job Description: {#DESCRIPTION}
                Job Url: {#URL}
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.healthReport..score.first()
                  error_handler: DISCARD_VALUE
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: 'jenkins.job.get[{#NAME}]'
              tags:
                - tag: component
                  value: health
                - tag: component
                  value: jobs
                - tag: job
                  value: '{#NAME}'
              trigger_prototypes:
                - uuid: c440cd7d92884c9594c8616f1ac99d74
                  expression: 'last(/Jenkins by HTTP/jenkins.build.health[{#NAME}])<{$JENKINS.JOB.HEALTH.SCORE.MIN.WARN}'
                  name: 'Jenkins: Job [{#NAME}]: Job is unhealthy'
                  priority: WARNING
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: performance
            - uuid: c82a3a59d2974e24bfa2489bd02fb10a
              name: 'Job [{#NAME}]: Get job'
              type: DEPENDENT
              key: 'jenkins.job.get[{#NAME}]'
              history: '0'
              value_type: TEXT
              description: 'Raw data for a job.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.jobs.[?(@.name == "{#NAME}")].first()'
                  error_handler: DISCARD_VALUE
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: jenkins.job_info
              tags:
                - tag: component
                  value: health
                - tag: component
                  value: jobs
                - tag: component
                  value: raw
                - tag: job
                  value: '{#NAME}'
            - uuid: a0fa8864c536408895f13758eacb486f
              name: 'Job [{#NAME}]: Last Build duration'
              type: DEPENDENT
              key: 'jenkins.last_build.duration[{#NAME}]'
              units: s
              description: 'Build duration (in seconds).'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.lastBuild.duration
                  error_handler: DISCARD_VALUE
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: 'jenkins.job.get[{#NAME}]'
              tags:
                - tag: component
                  value: jobs
                - tag: job
                  value: '{#NAME}'
            - uuid: 338020d76f8e4b28b1e1c02f97b889f4
              name: 'Job [{#NAME}]: Last Build number'
              type: DEPENDENT
              key: 'jenkins.last_build.number[{#NAME}]'
              description: 'Details: {#URL}/lastBuild/'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.lastBuild.number
                  error_handler: DISCARD_VALUE
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: 'jenkins.job.get[{#NAME}]'
              tags:
                - tag: component
                  value: jobs
                - tag: job
                  value: '{#NAME}'
            - uuid: a3a70807138548a29e9212f48f07946d
              name: 'Job [{#NAME}]: Last Build result'
              type: DEPENDENT
              key: 'jenkins.last_build.result[{#NAME}]'
              value_type: CHAR
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.lastBuild.result
                  error_handler: DISCARD_VALUE
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: 'jenkins.job.get[{#NAME}]'
              tags:
                - tag: component
                  value: jobs
                - tag: job
                  value: '{#NAME}'
            - uuid: d53a3f165052440098d087d4f2b868b6
              name: 'Job [{#NAME}]: Last Build timestamp'
              type: DEPENDENT
              key: 'jenkins.last_build.timestamp[{#NAME}]'
              units: unixtime
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.lastBuild.timestamp
                  error_handler: DISCARD_VALUE
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: 'jenkins.job.get[{#NAME}]'
              tags:
                - tag: component
                  value: jobs
                - tag: job
                  value: '{#NAME}'
            - uuid: 907e48fadc6e4a04a076ca9368f73395
              name: 'Job [{#NAME}]: Last Failed Build duration'
              type: DEPENDENT
              key: 'jenkins.last_failed_build.duration[{#NAME}]'
              units: s
              description: 'Build duration (in seconds).'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.lastFailedBuild.duration
                  error_handler: DISCARD_VALUE
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: 'jenkins.job.get[{#NAME}]'
              tags:
                - tag: component
                  value: jobs
                - tag: job
                  value: '{#NAME}'
            - uuid: 2e4afc599bf54ea29b1b8734f5aea121
              name: 'Job [{#NAME}]: Last Failed Build number'
              type: DEPENDENT
              key: 'jenkins.last_failed_build.number[{#NAME}]'
              description: 'Details: {#URL}/lastFailedBuild/'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.lastFailedBuild.number
                  error_handler: DISCARD_VALUE
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: 'jenkins.job.get[{#NAME}]'
              tags:
                - tag: component
                  value: jobs
                - tag: job
                  value: '{#NAME}'
            - uuid: e1885df4d7a440c0805207f0afb28cb5
              name: 'Job [{#NAME}]: Last Failed Build timestamp'
              type: DEPENDENT
              key: 'jenkins.last_failed_build.timestamp[{#NAME}]'
              units: unixtime
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.lastFailedBuild.timestamp
                  error_handler: DISCARD_VALUE
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: 'jenkins.job.get[{#NAME}]'
              tags:
                - tag: component
                  value: jobs
                - tag: job
                  value: '{#NAME}'
            - uuid: d750d312fa424215931375963100217d
              name: 'Job [{#NAME}]: Last Successful Build duration'
              type: DEPENDENT
              key: 'jenkins.last_successful_build.duration[{#NAME}]'
              units: s
              description: 'Build duration (in seconds).'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.lastSuccessfulBuild.duration
                  error_handler: DISCARD_VALUE
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: 'jenkins.job.get[{#NAME}]'
              tags:
                - tag: component
                  value: jobs
                - tag: job
                  value: '{#NAME}'
            - uuid: 701c272b59c046e4948a7dc814374d59
              name: 'Job [{#NAME}]: Last Successful Build number'
              type: DEPENDENT
              key: 'jenkins.last_successful_build.number[{#NAME}]'
              description: 'Details: {#URL}/lastSuccessfulBuild/'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.lastSuccessfulBuild.number
                  error_handler: DISCARD_VALUE
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: 'jenkins.job.get[{#NAME}]'
              tags:
                - tag: component
                  value: jobs
                - tag: job
                  value: '{#NAME}'
            - uuid: 1adbf52ee3f946118f8a37cf2487262d
              name: 'Job [{#NAME}]: Last Successful Build timestamp'
              type: DEPENDENT
              key: 'jenkins.last_successful_build.timestamp[{#NAME}]'
              units: unixtime
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.lastSuccessfulBuild.timestamp
                  error_handler: DISCARD_VALUE
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 30m
              master_item:
                key: 'jenkins.job.get[{#NAME}]'
              tags:
                - tag: component
                  value: jobs
                - tag: job
                  value: '{#NAME}'
          url: '{$JENKINS.URL}/api/json'
          query_fields:
            - name: tree
              value: 'jobs[name,description,url]'
          lld_macro_paths:
            - lld_macro: '{#DESCRIPTION}'
              path: $.description
            - lld_macro: '{#NAME}'
              path: $.name
            - lld_macro: '{#URL}'
              path: $.url
          preprocessing:
            - type: JSONPATH
              parameters:
                - '$.jobs.[*]'
      tags:
        - tag: class
          value: software
        - tag: subclass
          value: automation
        - tag: subclass
          value: deploy
        - tag: subclass
          value: development
        - tag: target
          value: jenkins
      macros:
        - macro: '{$JENKINS.API.KEY}'
          description: 'API key to access Metrics Servlet'
          config:
            type: TEXT
            priority: '2'
            label: 'API key'
            description: 'API key to access Metrics Servlet'
            required: 'YES'
        - macro: '{$JENKINS.API.TOKEN}'
          description: 'API token for HTTP BASIC authentication.'
          config:
            type: TEXT
            priority: '4'
            label: Token
            description: 'API token for HTTP BASIC authentication.'
            required: 'YES'
        - macro: '{$JENKINS.FILE_DESCRIPTORS.MAX.WARN}'
          value: '85'
          description: 'Maximum percentage of file descriptors usage alert threshold (for trigger expression).'
          config:
            type: TEXT
            priority: '6'
            section_name: Thresholds
            label: 'Max file descriptor usage (%)'
            description: 'Maximum percentage of file descriptors usage alert threshold (for trigger expression). In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$JENKINS.JOB.HEALTH.SCORE.MIN.WARN}'
          value: '50'
          description: 'Minimum job''s health score (for trigger expression).'
          config:
            type: TEXT
            priority: '7'
            section_name: Thresholds
            label: 'Min job health score'
            description: 'Minimum job''s health score (for trigger expression).'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$JENKINS.PING.REPLY}'
          value: pong
          description: 'Expected reply to the ping.'
          config:
            type: TEXT
            priority: '5'
            section_name: Other
            label: 'Expected ping reply'
            description: 'Expected reply to the ping.'
        - macro: '{$JENKINS.URL}'
          description: 'Jenkins URL in the format `<scheme>://<host>:<port>`'
          config:
            type: TEXT
            priority: '1'
            label: URL
            description: 'Jenkins URL in the format `<scheme>://<host>:<port>`'
            required: 'YES'
        - macro: '{$JENKINS.USER}'
          value: zabbix
          description: 'Username for HTTP BASIC authentication'
          config:
            type: TEXT
            priority: '3'
            label: Username
            description: 'Username for HTTP BASIC authentication'
            required: 'YES'
      valuemaps:
        - uuid: d1b719ea85464279bd473fcdb34008da
          name: 'Computer online'
          mappings:
            - value: '0'
              newvalue: Online
            - value: '1'
              newvalue: Offline
        - uuid: 5313fc2399b24216945ed6416a00d55d
          name: 'Computer state'
          mappings:
            - value: '0'
              newvalue: 'False'
            - value: '1'
              newvalue: 'True'
        - uuid: a51dacf033d1423a886ca9dbfdf9b175
          name: 'Jenkins healthcheck'
          mappings:
            - value: '0'
              newvalue: Failed
            - value: '1'
              newvalue: Ok
        - uuid: b45a6b0148074212bf45d6bb311565c2
          name: 'Service state'
          mappings:
            - value: '0'
              newvalue: Down
            - value: '1'
              newvalue: Up
    - uuid: a7f0c853c6634b1dacaaf43c2a0d9375
      template: 'Jira Data Center by JMX'
      name: 'Jira Data Center by JMX'
      description: |
        This template is used for monitoring Jira Data Center health. It is designed for standalone operation for on-premises Jira installations.
        
        This template uses a single data source, JMX, which requires JMX RMI setup of your Jira application and Java Gateway setup on the Zabbix side.
        If you need "Garbage collector" and "Web server" monitoring, add "Generic Java JMX" and "Apache Tomcat by JMX" templates on the same host.
        
        You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback
        
        Setup:
          Metrics are collected by JMX.
          0. Deploy the Zabbix Java Gateway component ([instructions](https://www.zabbix.com/documentation/8.0/manual/concepts/java)).
          1. Enable and configure JMX access to Jira Data Center. See documentation for [instructions](https://confluence.atlassian.com/adminjiraserver/live-monitoring-using-the-jmx-interface-939707304.html).
          2. Assign the "Jira Data Center by JMX" template to the host with a JMX interface.
          2. If your Jira installation requires authentication for JMX, set the values in the host macros `{$JMX.USERNAME}` and `{$JMX.PASSWORD}`.
          3. (Optional) Set custom macro values and add macros with context for specific metrics following the macro description.
          4. (Optional) Assign the "Generic Java JMX" template for garbage collector monitoring.
          5. (Optional) Assign the "Apache Tomcat by JMX" template for web server monitoring.
        
        tested_on:
          - Jira Data Center 9.14.1
          - Jira Data Center 9.12.4
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Overview
        
        This template is used for monitoring Jira Data Center health. It is designed for standalone operation for on-premises Jira installations.
        
        This template uses a single data source, JMX, which requires JMX RMI setup of your Jira application and Java Gateway setup on the Zabbix side.
        If you need "Garbage collector" and "Web server" monitoring, add "Generic Java JMX" and "Apache Tomcat by JMX" templates on the same host.
        
        ## Setup
        
        Metrics are collected by JMX.
        0. Deploy the Zabbix Java Gateway component ([instructions](https://www.zabbix.com/documentation/8.0/manual/concepts/java)).
        1. Enable and configure JMX access to Jira Data Center. See documentation for [instructions](https://confluence.atlassian.com/adminjiraserver/live-monitoring-using-the-jmx-interface-939707304.html).
        2. Assign the "Jira Data Center by JMX" template to the host with a JMX interface.
        2. If your Jira installation requires authentication for JMX, set the values in the host wizard configuration fields `JMX user` and `JMX password`.
        3. (Optional) Set custom host wizard configuration field values and add macros with context for specific metrics following the macro description.
        4. (Optional) Assign the "Generic Java JMX" template for garbage collector monitoring.
        5. (Optional) Assign the "Apache Tomcat by JMX" template for web server monitoring.
      vendor:
        name: Zabbix
        version: 8.0-1
      groups:
        - name: Templates/Applications
      items:
        - uuid: 27334384618d4b2f91d700b188463a56
          name: 'License: Users: Get'
          type: JMX
          key: 'jmx.discovery[attributes,"com.atlassian.jira:type=jira.license"]'
          history: '0'
          value_type: TEXT
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'License data for the discovery rule.'
          preprocessing:
            - type: JAVASCRIPT
              parameters:
                - |
                  var data = JSON.parse(value).data;
                  var result = {};
                  
                  data.forEach(function(item) {
                  	var attributes = item["{#JMXATTR}"].split(".");
                  	var license = attributes[0].replace("jira-","");
                  	var property = attributes.slice(1).join('_');
                  	if (!result[license]) {
                  		result[license] = {'properties': {} };
                  	}
                  
                  	result[license]['properties'][property] = item["{#JMXVALUE}"];
                  });
                  
                  return JSON.stringify(result);
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: license
            - tag: component
              value: raw
        - uuid: 11a89b91831b4b5d899bff63ba935cbb
          name: 'DB: Connections: Limit'
          type: JMX
          key: 'jmx["com.atlassian.jira:name=BasicDataSource,connectionpool=connections",MaxTotal]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'Total allowed database connection count.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: database
        - uuid: f064dbd8781848c09184fb83a3a46097
          name: 'DB: Connections: Active'
          type: JMX
          key: 'jmx["com.atlassian.jira:name=BasicDataSource,connectionpool=connections",NumActive]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'Active database connection count.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: database
        - uuid: 2928e1e3b68940938a0b107eb5d72b95
          name: 'DB: Reads'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=db.reads",invocation\.count]'
          value_type: FLOAT
          units: rps
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: |
            Database read operations from Jira per second.
            Units: rps - read operations per second.
          preprocessing:
            - type: CHANGE_PER_SECOND
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: database
        - uuid: ad5c16fa48864dc6b625a23f95ecf07a
          name: 'DB: Writes'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=db.writes",invocation\.count]'
          value_type: FLOAT
          units: wps
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: |
            Database write operations from Jira per second.
            Units: wps - write operations per second.
          preprocessing:
            - type: CHANGE_PER_SECOND
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: database
        - uuid: 942556b043734986a2c5e261e97d5b1c
          name: 'Entity: Attachments'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=entity.attachments.total",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The number of attachments.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: application
            - tag: component
              value: entity
        - uuid: 7aa003c53cb14555a88ee02e804ca45f
          name: 'Entity: Components'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=entity.components.total",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The number of components.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: application
        - uuid: 8ddf2cb59bb44d8a8fe7f2ca9e44ad20
          name: 'Entity: Custom fields'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=entity.customfields.total",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The number of custom fields.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: application
        - uuid: 2c8d303953ed44b6815129a6a77ee5c6
          name: 'Entity: Filters'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=entity.filters.total",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The number of filters.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: application
        - uuid: 5d9a669481ab448eb5c9e0b64f3517b0
          name: 'Entity: Issues'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=entity.issues.total",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The number of issues.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: application
            - tag: component
              value: entity
            - tag: component
              value: issue
        - uuid: b6a8a8ed8a9242858560b0743cc955aa
          name: 'Entity: Versions created'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=entity.versions.total",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The number of versions created.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: application
        - uuid: 2152f7eb0bff4c9888e131634b770673
          name: 'Issue: Created per minute'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=issue.created.count",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'Issues created per minute.'
          preprocessing:
            - type: SIMPLE_CHANGE
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: application
            - tag: component
              value: issue
        - uuid: 25fdfd0e3dce4d95ac2cdaed41ba5fb6
          name: 'Issue: Search per minute'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=issue.search.count",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'Issue searches performed per minute.'
          preprocessing:
            - type: SIMPLE_CHANGE
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: application
            - tag: component
              value: issue
        - uuid: 060d5f5ccf3a4ab197e4b95d9eb88b17
          name: 'Issue: Updates per minute'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=issue.updated.count",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'Issue updates performed per minute.'
          preprocessing:
            - type: SIMPLE_CHANGE
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: application
            - tag: component
              value: issue
        - uuid: bb565c20d5ad4cf1a94aea5966ec12fa
          name: 'DB: Connections: Failed per minute'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=failures,name=counter",Count]'
          delay: 0;m0-59
          value_type: FLOAT
          units: fpm
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: |
            The count of database connection failures registered in one minute.
            Units: fpm - fails per minute.
          preprocessing:
            - type: SIMPLE_CHANGE
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: database
        - uuid: 8fb52b3e150a4f5fb84e8b527aaaf5a5
          name: 'DB: Connections: Latency'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=latency,name=value",Value]'
          value_type: FLOAT
          units: ms
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The latest measure of latency when querying the database.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: database
        - uuid: 2d22d7c78abe40b8a82fb70a8d1091d1
          name: 'DB: Pool: Connections: Active'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=pool,category03=numActive,name=value",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'Active connection count of the database pool.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: database
        - uuid: c18d258cdb8f420e8cb18a9e6e7c2bf8
          name: 'DB: Pool: Connections: Idle'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=pool,category03=numIdle,name=value",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'Idle connection count of the database pool.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: database
          triggers:
            - uuid: 5fd9800d1c3641c584e32106ea61e33d
              expression: 'min(/Jira Data Center by JMX/jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=pool,category03=numIdle,name=value",Value],5m)<=0'
              name: 'Jira Data Center: DB: Pool: Out of idle connections'
              opdata: 'Idle connections: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'Fires when out of idle connections in database pool for 5 minutes.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: performance
        - uuid: fc7870021dc04bf499db8834be67987e
          name: 'DB: Connections: State'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=state,name=value",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The state of the database connection.'
          valuemap:
            name: 'Connection availability'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: database
          triggers:
            - uuid: 524b7cb0ac9940ad80e11f1c93f1d7df
              expression: 'max(/Jira Data Center by JMX/jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=state,name=value",Value],3m)=0'
              name: 'Jira Data Center: DB: Connection lost'
              opdata: 'Connection state: {ITEM.LASTVALUE1}'
              priority: AVERAGE
              description: 'Database connection lost'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: availability
        - uuid: 25d810c7fd5e4116a8e2323b7a2537a0
          name: 'HTTP: Pool: Connections: Active'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=http,category01=connection,category02=pool,category03=numActive,name=value",Value]'
          value_type: FLOAT
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The latest measure of the number of active connections in the HTTP connection pool.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: http
        - uuid: b244d220b7e24d48913f4e8e1b490732
          name: 'HTTP: Pool: Connections: Idle'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=http,category01=connection,category02=pool,category03=numIdle,name=value",Value]'
          value_type: FLOAT
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The latest measure of the number of idle connections in the HTTP connection pool.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: http
          triggers:
            - uuid: 7f0fde38527c4bb2930a1e57343c4422
              expression: 'min(/Jira Data Center by JMX/jmx["com.atlassian.jira:type=metrics,category00=http,category01=connection,category02=pool,category03=numIdle,name=value",Value],5m)<=0'
              name: 'Jira Data Center: HTTP: Pool: Out of idle connections'
              opdata: 'active {ITEM.LASTVALUE1} from {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'All available connections are utilized. It can cause outages for users as the system is unable to serve their requests.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: capacity
        - uuid: 195bc0648f6445bbbe205a5869383c68
          name: 'HTTP: Sessions: Active'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=http,category01=connection,category02=sessions,category03=active,name=value",Value]'
          value_type: FLOAT
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The latest measure of the number of active user sessions.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: http
        - uuid: 0d5a76f579284baf9eaa47180ed2c3fa
          name: 'HTTP: Requests per minute'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=http,category01=requests,name=value",Value]'
          value_type: FLOAT
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The latest measure of the total number of HTTP requests per minute.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: http
        - uuid: 7029cc0f375740c79790b410b92579a1
          name: 'Mail: Queue: Processing state'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=jobRunning,name=value",Value]'
          value_type: FLOAT
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The latest indicator of the state of a mail queue job.'
          valuemap:
            name: 'Mail sender'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: mail
        - uuid: 27f65a6cc7a147c2a95d3348db0cc9eb
          name: 'Mail: Sent per minute'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numEmailsSentPerMin,name=value",Value]'
          value_type: FLOAT
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The latest measure of the number of emails sent by the SMTP server per minute.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: mail
        - uuid: ec7e12f99490496c814e9000108ec8c9
          name: 'Mail: Queue: Error'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numErrors,name=value",Value]'
          value_type: FLOAT
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The latest measure of the number of items in an error mail queue.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: mail
          triggers:
            - uuid: f0940aecb8f24e788dae0e62c81a0c65
              expression: 'max(/Jira Data Center by JMX/jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numErrors,name=value",Value],5m)>0'
              name: 'Jira Data Center: Mail: Error queue contains one or more items'
              priority: WARNING
              description: |
                A mail queue attempts to resend items up to 10 times. If the operation fails for the 11th time, the items are put into an error mail queue.
                You can remove items from the error mail queue in one of the following ways:
                  - Manually clear the whole error queue.
                  - Manually resend all items from the error queue to a mail queue.
                You should pay attention to the cases where an error mail queue item gets back to an error mail queue after you resend the items manually. These cases might indicate permanent performance issues.
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: availability
        - uuid: 67789113243b4689af58e42d0a127878
          name: 'Mail: Queue'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numItems,name=value",Value]'
          value_type: FLOAT
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The latest measure of the number of items in a mail queue.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: mail
          triggers:
            - uuid: 6fc20e23f96f4bf8a856d1c86679cbd5
              expression: 'min(/Jira Data Center by JMX/jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numItems,name=value",Value],30m)>0'
              name: 'Jira Data Center: Mail: Queue: Doesn’t empty over an extended period'
              priority: WARNING
              description: 'Might indicate SMTP performance or connection problems.'
              manual_close: 'YES'
              dependencies:
                - name: 'Jira Data Center: Mail: Queue job is not running'
                  expression: 'max(/Jira Data Center by JMX/jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=jobRunning,name=value",Value],15m)=0 and min(/Jira Data Center by JMX/jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numItems,name=value",Value],15m)>0'
              tags:
                - tag: scope
                  value: performance
        - uuid: 3d311c2e46af4c98b11f5f1a50b5318e
          name: 'Mail: Processed per minute'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numItemsProcessedPerMin,name=value",Value]'
          value_type: FLOAT
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The latest measure of the number of items processed by a mail queue per minute.'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: mail
        - uuid: 6a81cf33cc834115b352324a18355368
          name: 'Quicksearch: Concurrent searches'
          type: JMX
          key: 'jmx["com.atlassian.jira:type=quicksearch.concurrent.search",Value]'
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          description: 'The number of concurrent searches that are being performed in real-time by using the quick search.'
          preprocessing:
            - type: SIMPLE_CHANGE
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
          tags:
            - tag: component
              value: application
      discovery_rules:
        - uuid: 6b671426094e4268b48f51eb97ddd8bf
          name: 'Storage discovery'
          type: JMX
          key: 'jmx.discovery[beans,"com.atlassian.jira:type=metrics,category00=home,category01=*,category02=write,category03=latency,*,name=value"]'
          delay: 1h
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          filter:
            evaltype: AND
            conditions:
              - macro: '{#JMXCATEGORY01}'
                value: '{$JIRA_DC.LLD.FILTER.MATCHES.HOMEFOLDERS}'
              - macro: '{#JMXCATEGORY01}'
                value: '{$JIRA_DC.LLD.FILTER.NOT.MATCHES.HOMEFOLDERS}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovery of the Jira storage metrics.'
          item_prototypes:
            - uuid: 933c9c8b11e848f88775ee9b54f8d292
              name: 'Storage [{#JMXCATEGORY01}]: Latency'
              type: JMX
              key: 'jmx["{#JMXOBJ}",Value]'
              delay: 15m
              value_type: FLOAT
              units: s
              username: '{$JMX.USER}'
              password: '{$JMX.PASSWORD}'
              description: 'The median latency of writing a small file (~30 bytes) to `{#JMXCATEGORY01}`.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
              jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
              tags:
                - tag: component
                  value: storage
              trigger_prototypes:
                - uuid: 7aaf19b9466942f7a2f4aed1fb5d5973
                  expression: 'min(/Jira Data Center by JMX/jmx["{#JMXOBJ}",Value],5m)>{$JIRA_DC.STORAGE.LATENCY.WARN:"{#JMXCATEGORY01}"}'
                  name: 'Jira Data Center: Storage [{#JMXCATEGORY01}]: Slow performance'
                  event_name: 'Jira Data Center: Storage [{#JMXCATEGORY01}]: Slow performance (latency > {$JIRA_DC.STORAGE.LATENCY.WARN:"{#JMXCATEGORY01}"}s)'
                  opdata: 'Average latency: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'Fires when latency grows above the threshold: `{$JIRA_DC.STORAGE.LATENCY.WARN:"{#JMXCATEGORY01}"}`s'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: performance
          graph_prototypes:
            - uuid: 5f5f61fe9bc848be87789a8ac6e2fbb2
              name: 'Storage [{#JMXCATEGORY01}]: Latency'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'Jira Data Center by JMX'
                    key: 'jmx["{#JMXOBJ}",Value]'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
        - uuid: 886f8b2c518d4f3bb3d4441e29bf13fc
          name: 'Indexing latency discovery'
          type: JMX
          key: 'jmx.discovery[beans,"com.atlassian.jira:type=metrics,category00=indexing,name=*"]'
          delay: 1h
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          filter:
            evaltype: AND
            conditions:
              - macro: '{#JMXNAME}'
                value: '{$JIRA_DC.LLD.FILTER.MATCHES.INDEXING}'
              - macro: '{#JMXNAME}'
                value: '{$JIRA_DC.LLD.FILTER.NOT.MATCHES.INDEXING}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovery of the Jira indexing metrics.'
          item_prototypes:
            - uuid: 2b02e3232de34ae9803f80ac94ade79c
              name: 'Indexing [{#JMXNAME}]: Latency'
              type: JMX
              key: 'jmx["com.atlassian.jira:type=metrics,category00=indexing,name={#JMXNAME}",Mean]'
              delay: 15m
              value_type: FLOAT
              units: s
              username: '{$JMX.USER}'
              password: '{$JMX.PASSWORD}'
              description: 'Average time spent on indexing operations.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
              jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
              tags:
                - tag: component
                  value: indexing
              trigger_prototypes:
                - uuid: 73c679de66e941fcbabe54cb9807fcf4
                  expression: 'min(/Jira Data Center by JMX/jmx["com.atlassian.jira:type=metrics,category00=indexing,name={#JMXNAME}",Mean],5m)>{$JIRA_DC.INDEXING.LATENCY.WARN:"{#JMXNAME}"}'
                  name: 'Jira Data Center: Indexing [{#JMXNAME}]: Slow performance'
                  event_name: 'Jira Data Center: Indexing [{#JMXNAME}]: Slow performance (latency > {$JIRA_DC.INDEXING.LATENCY.WARN:"{#JMXNAME}"}s)'
                  opdata: 'Average latency: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'Fires when latency grows above the threshold: `{$JIRA_DC.INDEXING.LATENCY.WARN:"{#JMXNAME}"}`s'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: performance
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
        - uuid: 70db70727f824102b769a652713432ad
          name: 'Issue latency discovery'
          type: JMX
          key: 'jmx.discovery[beans,"com.atlassian.jira:type=metrics,category00=issue,name=*"]'
          delay: 1h
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          filter:
            evaltype: AND
            conditions:
              - macro: '{#JMXNAME}'
                value: '{$JIRA_DC.LLD.FILTER.MATCHES.ISSUE}'
              - macro: '{#JMXNAME}'
                value: '{$JIRA_DC.LLD.FILTER.NOT.MATCHES.ISSUE}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovery of the Jira issue latency metrics.'
          item_prototypes:
            - uuid: da6d68fa14f24f58bcbe1157b9818321
              name: 'Issue [{#JMXNAME}]: Latency'
              type: JMX
              key: 'jmx["{#JMXOBJ}",Mean]'
              delay: 15m
              value_type: FLOAT
              units: s
              username: '{$JMX.USER}'
              password: '{$JMX.PASSWORD}'
              description: 'Average time spent on issue `{#JMXNAME}` operations.'
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '0.001'
              jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
              tags:
                - tag: component
                  value: issue
              trigger_prototypes:
                - uuid: 5df1f61ce5d24204bcef4b8f021ea98a
                  expression: 'min(/Jira Data Center by JMX/jmx["{#JMXOBJ}",Mean],5m)>{$JIRA_DC.ISSUE.LATENCY.WARN:"{#JMXNAME}"}'
                  name: 'Jira Data Center: Issue [{#JMXNAME}]: Slow operations'
                  event_name: 'Jira Data Center: Issue [{#JMXNAME}]: Slow operations (longer then {$JIRA_DC.ISSUE.LATENCY.WARN:"{#JMXNAME}"}s)'
                  opdata: 'Average latency: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'Fires when latency grows above the threshold: `{$JIRA_DC.ISSUE.LATENCY.WARN:"{#JMXNAME}"}`s'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: performance
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
        - uuid: 2bd3e8ce78f84ccba599137b0e0ab6a0
          name: 'Mail server discovery'
          type: JMX
          key: 'jmx.discovery[beans,"com.atlassian.jira:type=metrics,category00=mail,category01=*,category02=connection,category03=state,name=*"]'
          delay: 1h
          username: '{$JMX.USER}'
          password: '{$JMX.PASSWORD}'
          filter:
            evaltype: AND
            conditions:
              - macro: '{#JMXCATEGORY01}'
                value: '{$JIRA_DC.LLD.FILTER.MATCHES.MAIL}'
              - macro: '{#JMXCATEGORY01}'
                value: '{$JIRA_DC.LLD.FILTER.NOT.MATCHES.MAIL}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovery of the Jira connected mail servers.'
          item_prototypes:
            - uuid: 5281bee6b829433a875c0e026d805206
              name: 'Mail [{#JMXCATEGORY01},{#JMXNAME}]: Connection state'
              type: JMX
              key: 'jmx["{#JMXOBJ}",Connected]'
              username: '{$JMX.USER}'
              password: '{$JMX.PASSWORD}'
              description: 'Shows connection state of Jira to discovered mail server: `{#JMXCATEGORY01}-{#JMXNAME}`'
              valuemap:
                name: 'Connection availability'
              preprocessing:
                - type: BOOL_TO_DECIMAL
              jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
              tags:
                - tag: component
                  value: mail
                - tag: mail
                  value: '{#JMXCATEGORY01}-{#JMXNAME}'
              trigger_prototypes:
                - uuid: a28f2598b457479299d4fbf917d8189d
                  expression: 'max(/Jira Data Center by JMX/jmx["{#JMXOBJ}",Connected],5m)=0'
                  name: 'Jira Data Center: Mail [{#JMXCATEGORY01}-{#JMXNAME}]: Server disconnected'
                  opdata: 'Server state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Trigger is fired when discovered mail server `{#JMXCATEGORY01}-{#JMXNAME}` becomes unavailable'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 949854436d6542f9a859a65cec20572d
              name: 'Mail [{#JMXCATEGORY01},{#JMXNAME}]: Failures per minute'
              type: JMX
              key: 'jmx["{#JMXOBJ}",TotalFailures]'
              username: '{$JMX.USER}'
              password: '{$JMX.PASSWORD}'
              description: 'Count of failed connections to discovered mail server `{#JMXCATEGORY01}-{#JMXNAME}` per minute'
              preprocessing:
                - type: SIMPLE_CHANGE
              jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
              tags:
                - tag: component
                  value: mail
                - tag: mail
                  value: '{#JMXCATEGORY01}-{#JMXNAME}'
          graph_prototypes:
            - uuid: f51ddde64f414715bb5074f96cee8768
              name: 'Mail [{#JMXCATEGORY01},{#JMXNAME}]: State and failures'
              graph_items:
                - drawtype: FILLED_REGION
                  color: 199C0D
                  item:
                    host: 'Jira Data Center by JMX'
                    key: 'jmx["{#JMXOBJ}",Connected]'
                - sortorder: '1'
                  drawtype: BOLD_LINE
                  color: F63100
                  yaxisside: RIGHT
                  item:
                    host: 'Jira Data Center by JMX'
                    key: 'jmx["{#JMXOBJ}",TotalFailures]'
          jmx_endpoint: 'service:jmx:rmi:///jndi/rmi://{HOST.CONN}:{HOST.PORT}/jmxrmi'
        - uuid: 750f1986954f4cfda847bc66ecbfd910
          name: 'License discovery'
          type: DEPENDENT
          key: jmx.license.discovery
          filter:
            evaltype: AND
            conditions:
              - macro: '{#LICENSE.TYPE}'
                value: '{$JIRA_DC.LLD.FILTER.MATCHES.LICENSE}'
              - macro: '{#LICENSE.TYPE}'
                value: '{$JIRA_DC.LLD.FILTER.NOT.MATCHES.LICENSE}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovery of the Jira licenses.'
          item_prototypes:
            - uuid: e2f1224ac6de4a24a50bf6b4356fdd25
              name: 'License [{#LICENSE.TYPE}]: Users: Current'
              type: DEPENDENT
              key: 'jmx.license.get.user.current["{#LICENSE.TYPE}"]'
              value_type: FLOAT
              description: 'Current user count for `{#LICENSE.TYPE}`.'
              valuemap:
                name: 'Limit mapping'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.{#LICENSE.TYPE}.properties.current_user_count'
              master_item:
                key: 'jmx.discovery[attributes,"com.atlassian.jira:type=jira.license"]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: license
                - tag: license
                  value: '{#LICENSE.TYPE}'
            - uuid: 77e789c5d8484367997f45ce24b65cd9
              name: 'License [{#LICENSE.TYPE}]: Users: Maximum'
              type: DEPENDENT
              key: 'jmx.license.get.user.max["{#LICENSE.TYPE}"]'
              value_type: FLOAT
              description: |
                User count limit for `{#LICENSE.TYPE}`.
                `-1` = No limits for the license type.
              valuemap:
                name: 'Limit mapping'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$.{#LICENSE.TYPE}.properties.max_user_count'
              master_item:
                key: 'jmx.discovery[attributes,"com.atlassian.jira:type=jira.license"]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: license
                - tag: license
                  value: '{#LICENSE.TYPE}'
          trigger_prototypes:
            - uuid: 26439a9cf50f4dfea02e5c763feee50c
              expression: 'last(/Jira Data Center by JMX/jmx.license.get.user.max["{#LICENSE.TYPE}"])>=0 * (100*last(/Jira Data Center by JMX/jmx.license.get.user.current["{#LICENSE.TYPE}"])/last(/Jira Data Center by JMX/jmx.license.get.user.max["{#LICENSE.TYPE}"])>{$JIRA_DC.LICENSE.USER.CAPACITY.WARN:"{#LICENSE.TYPE}"})'
              name: 'Jira Data Center: License [{#LICENSE.TYPE}]: Low user capacity'
              event_name: 'Jira Data Center: License [{#LICENSE.TYPE}]: Low user capacity (created > {$JIRA_DC.LICENSE.USER.CAPACITY.WARN:"{#LICENSE.TYPE}"}%)'
              opdata: 'created {ITEM.LASTVALUE1} from {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'Fires when relative user quantity grows above the threshold: `{$JIRA_DC.LICENSE.USER.CAPACITY.WARN:"{#LICENSE.TYPE}"}`%'
              manual_close: 'YES'
              dependencies:
                - name: 'Jira Data Center: License [{#LICENSE.TYPE}]: User count reached the limit'
                  expression: 'last(/Jira Data Center by JMX/jmx.license.get.user.max["{#LICENSE.TYPE}"])>=0 * ((last(/Jira Data Center by JMX/jmx.license.get.user.max["{#LICENSE.TYPE}"])-last(/Jira Data Center by JMX/jmx.license.get.user.current["{#LICENSE.TYPE}"]))<=0)'
              tags:
                - tag: scope
                  value: capacity
            - uuid: 62e93342b6a64b999d485eab28c55bf1
              expression: 'last(/Jira Data Center by JMX/jmx.license.get.user.max["{#LICENSE.TYPE}"])>=0 * ((last(/Jira Data Center by JMX/jmx.license.get.user.max["{#LICENSE.TYPE}"])-last(/Jira Data Center by JMX/jmx.license.get.user.current["{#LICENSE.TYPE}"]))<=0)'
              name: 'Jira Data Center: License [{#LICENSE.TYPE}]: User count reached the limit'
              opdata: 'created {ITEM.LASTVALUE1} from {ITEM.LASTVALUE2}'
              priority: AVERAGE
              description: |
                Fires when user quantity reaches the limit.
                It won't fire if the limit is disabled (set to `-1`).
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: capacity
          graph_prototypes:
            - uuid: c79af894d8b944f6bbedf86dfe1a5e84
              name: 'License [{#LICENSE.TYPE}]: Users'
              ymin_type_1: FIXED
              graph_items:
                - drawtype: FILLED_REGION
                  color: F63100
                  item:
                    host: 'Jira Data Center by JMX'
                    key: 'jmx.license.get.user.current["{#LICENSE.TYPE}"]'
                - sortorder: '1'
                  drawtype: FILLED_REGION
                  color: 199C0D
                  item:
                    host: 'Jira Data Center by JMX'
                    key: 'jmx.license.get.user.max["{#LICENSE.TYPE}"]'
          master_item:
            key: 'jmx.discovery[attributes,"com.atlassian.jira:type=jira.license"]'
          lld_macro_paths:
            - lld_macro: '{#LICENSE.PROPERTIES}'
              path: $.properties
            - lld_macro: '{#LICENSE.TYPE}'
              path: $.license
          preprocessing:
            - type: JAVASCRIPT
              parameters:
                - |
                  var data = JSON.parse(value);
                  var lld_form = [];
                  
                  for (var key in data) {
                  	lld_form.push({"license": key});
                  }
                  return JSON.stringify(lld_form);
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
      tags:
        - tag: class
          value: software
        - tag: subclass
          value: automation
        - tag: subclass
          value: communication
        - tag: target
          value: jira-datacenter
      macros:
        - macro: '{$JIRA_DC.DB.CONNECTION.USAGE.WARN}'
          value: '80'
          description: 'Warning threshold for database connections usage (%).'
          config:
            type: TEXT
            priority: '4'
            section_name: Thresholds
            label: 'Warning threshold for database connections (%)'
            description: 'Warning threshold for database connections usage (%). In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$JIRA_DC.INDEXING.LATENCY.WARN}'
          value: '5'
          description: 'Warning threshold for indexing operation latency (in seconds).'
          config:
            type: TEXT
            priority: '7'
            section_name: Thresholds
            label: 'Warning threshold for indexing operation latency (seconds)'
            description: 'Warning threshold for indexing operation latency (in seconds).'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$JIRA_DC.ISSUE.LATENCY.WARN}'
          value: '5'
          description: 'Warning threshold for issue operation latency (in seconds).'
          config:
            type: TEXT
            priority: '5'
            section_name: Thresholds
            label: 'Warning threshold for issue operation latency (seconds)'
            description: 'Warning threshold for issue operation latency (in seconds).'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$JIRA_DC.LICENSE.USER.CAPACITY.WARN}'
          value: '80'
          description: 'User capacity warning threshold (%).'
          config:
            type: TEXT
            priority: '3'
            section_name: Thresholds
            label: 'User capacity warning threshold (%)'
            description: 'User capacity warning threshold (%). In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$JIRA_DC.LLD.FILTER.MATCHES.HOMEFOLDERS}'
          value: local|share
          description: 'Used for storage metric discovery.'
          config:
            type: TEXT
            priority: '8'
            section_name: Filters
            label: 'Storage metric discovery filter (include)'
            description: 'Used for storage metric discovery.'
        - macro: '{$JIRA_DC.LLD.FILTER.MATCHES.INDEXING}'
          value: '.*'
          description: 'Used for indexing metric discovery.'
          config:
            type: TEXT
            priority: '10'
            section_name: Filters
            label: 'Indexing metric discovery filter (include)'
            description: 'Used for indexing metric discovery.'
        - macro: '{$JIRA_DC.LLD.FILTER.MATCHES.ISSUE}'
          value: '.*'
          description: 'Used for issue discovery.'
          config:
            type: TEXT
            priority: '12'
            section_name: Filters
            label: 'Issue discovery filter (include)'
            description: 'Used for issue discovery.'
        - macro: '{$JIRA_DC.LLD.FILTER.MATCHES.LICENSE}'
          value: '.*'
          description: 'Used for license discovery.'
          config:
            type: TEXT
            priority: '16'
            section_name: Filters
            label: 'License discovery filter (include)'
            description: 'Used for license discovery.'
        - macro: '{$JIRA_DC.LLD.FILTER.MATCHES.MAIL}'
          value: '.*'
          description: 'Used for mail server connection metric discovery.'
          config:
            type: TEXT
            priority: '14'
            section_name: Filters
            label: 'Mail server connection metric discovery filter (include)'
            description: 'Used for mail server connection metric discovery.'
        - macro: '{$JIRA_DC.LLD.FILTER.NOT.MATCHES.HOMEFOLDERS}'
          value: 'NO MATCH'
          description: 'Used for storage metric discovery.'
          config:
            type: TEXT
            priority: '9'
            section_name: Filters
            label: 'Storage metric discovery filter (exclude)'
            description: 'Used for storage metric discovery.'
        - macro: '{$JIRA_DC.LLD.FILTER.NOT.MATCHES.INDEXING}'
          value: 'NO MATCH'
          description: 'Used for indexing metric discovery.'
          config:
            type: TEXT
            priority: '11'
            section_name: Filters
            label: 'Indexing metric discovery filter (exclude)'
            description: 'Used for indexing metric discovery.'
        - macro: '{$JIRA_DC.LLD.FILTER.NOT.MATCHES.ISSUE}'
          value: 'NO MATCH'
          description: 'Used for issue discovery.'
          config:
            type: TEXT
            priority: '13'
            section_name: Filters
            label: 'Issue discovery filter (exclude)'
            description: 'Used for issue discovery.'
        - macro: '{$JIRA_DC.LLD.FILTER.NOT.MATCHES.LICENSE}'
          value: 'NO MATCH'
          description: 'Used for license discovery.'
          config:
            type: TEXT
            priority: '17'
            section_name: Filters
            label: 'License discovery filter (exclude)'
            description: 'Used for license discovery.'
        - macro: '{$JIRA_DC.LLD.FILTER.NOT.MATCHES.MAIL}'
          value: 'NO MATCH'
          description: 'Used for mail server connection metric discovery.'
          config:
            type: TEXT
            priority: '15'
            section_name: Filters
            label: 'Mail server connection metric discovery filter (exclude)'
            description: 'Used for mail server connection metric discovery.'
        - macro: '{$JIRA_DC.STORAGE.LATENCY.WARN}'
          value: '5'
          description: 'Warning threshold for storage write operation latency (in seconds).'
          config:
            type: TEXT
            priority: '6'
            section_name: Thresholds
            label: 'Warning threshold for storage write latency (seconds)'
            description: 'Warning threshold for storage write operation latency (in seconds).'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$JMX.PASSWORD}'
          type: SECRET_TEXT
          description: 'Password for JMX.'
          config:
            type: TEXT
            priority: '2'
            label: 'JMX password'
            description: 'Password for JMX.'
            required: 'YES'
        - macro: '{$JMX.USER}'
          description: 'User for JMX.'
          config:
            type: TEXT
            priority: '1'
            label: 'JMX user'
            description: 'User for JMX.'
            required: 'YES'
      dashboards:
        - uuid: 0917c28fa1874a088f03a15e60c96c57
          name: 'Jira: Data Center'
          pages:
            - name: Application
              widgets:
                - type: item
                  name: 'Jira: Issue count'
                  width: '12'
                  height: '3'
                  fields:
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=entity.issues.total",Value]'
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '3'
                    - type: INTEGER
                      name: show.2
                      value: '4'
                    - type: INTEGER
                      name: time_h_pos
                      value: '2'
                    - type: INTEGER
                      name: time_size
                      value: '9'
                    - type: INTEGER
                      name: time_v_pos
                      value: '2'
                    - type: INTEGER
                      name: value_size
                      value: '25'
                - type: svggraph
                  name: 'Jira: Issue: Operations per minute'
                  'y': '3'
                  width: '24'
                  height: '6'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: 00FF00
                    - type: STRING
                      name: ds.0.color.1
                      value: 0000FF
                    - type: STRING
                      name: ds.0.color.2
                      value: FFBF00
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=issue.created.count",Value]'
                    - type: ITEM
                      name: ds.0.itemids.1
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=issue.updated.count",Value]'
                    - type: ITEM
                      name: ds.0.itemids.2
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=issue.search.count",Value]'
                    - type: INTEGER
                      name: legend_lines
                      value: '3'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AAEAA
                - type: item
                  name: 'Jira: Attachment count'
                  x: '12'
                  width: '12'
                  height: '3'
                  fields:
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=entity.attachments.total",Value]'
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '3'
                    - type: INTEGER
                      name: show.2
                      value: '4'
                    - type: INTEGER
                      name: time_h_pos
                      value: '2'
                    - type: INTEGER
                      name: time_size
                      value: '9'
                    - type: INTEGER
                      name: time_v_pos
                      value: '2'
                    - type: INTEGER
                      name: value_size
                      value: '25'
                - type: item
                  name: 'Jira: Filter count'
                  x: '24'
                  width: '12'
                  height: '3'
                  fields:
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=entity.filters.total",Value]'
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '3'
                    - type: INTEGER
                      name: show.2
                      value: '4'
                    - type: INTEGER
                      name: time_h_pos
                      value: '2'
                    - type: INTEGER
                      name: time_size
                      value: '9'
                    - type: INTEGER
                      name: time_v_pos
                      value: '2'
                    - type: INTEGER
                      name: value_size
                      value: '25'
                - type: svggraph
                  name: 'Jira: Issue: Latency'
                  x: '24'
                  'y': '3'
                  width: '24'
                  height: '6'
                  fields:
                    - type: INTEGER
                      name: ds.0.aggregate_function
                      value: '3'
                    - type: STRING
                      name: ds.0.aggregate_interval
                      value: 30m
                    - type: STRING
                      name: ds.0.color
                      value: FFBF00
                    - type: STRING
                      name: ds.0.items.0
                      value: 'Issue [*]: Latency'
                    - type: INTEGER
                      name: ds.0.type
                      value: '3'
                    - type: INTEGER
                      name: legend_columns
                      value: '1'
                    - type: INTEGER
                      name: legend_lines
                      value: '5'
                    - type: STRING
                      name: or.0.color
                      value: 00FF00
                    - type: STRING
                      name: or.0.items.0
                      value: '*Create*'
                    - type: STRING
                      name: or.1.color
                      value: 0000FF
                    - type: STRING
                      name: or.1.items.0
                      value: '*Update*'
                    - type: STRING
                      name: or.2.color
                      value: FF0000
                    - type: STRING
                      name: or.2.items.0
                      value: '*Delete*'
                    - type: STRING
                      name: or.3.color
                      value: FFBF00
                    - type: STRING
                      name: or.3.items.0
                      value: '*ReIndex*'
                    - type: STRING
                      name: or.4.color
                      value: 4000FF
                    - type: STRING
                      name: or.4.items.0
                      value: '*DeIndex*'
                    - type: STRING
                      name: reference
                      value: AAEAC
                    - type: INTEGER
                      name: show_problems
                      value: '1'
                - type: item
                  name: 'Jira: Component count'
                  x: '36'
                  width: '12'
                  height: '3'
                  fields:
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=entity.components.total",Value]'
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '3'
                    - type: INTEGER
                      name: show.2
                      value: '4'
                    - type: INTEGER
                      name: time_h_pos
                      value: '2'
                    - type: INTEGER
                      name: time_size
                      value: '9'
                    - type: INTEGER
                      name: time_v_pos
                      value: '2'
                    - type: INTEGER
                      name: value_size
                      value: '25'
                - type: item
                  name: 'Jira: Custom field count'
                  x: '48'
                  width: '12'
                  height: '3'
                  fields:
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=entity.customfields.total",Value]'
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '3'
                    - type: INTEGER
                      name: show.2
                      value: '4'
                    - type: INTEGER
                      name: time_h_pos
                      value: '2'
                    - type: INTEGER
                      name: time_size
                      value: '9'
                    - type: INTEGER
                      name: time_v_pos
                      value: '2'
                    - type: INTEGER
                      name: value_size
                      value: '25'
                - type: svggraph
                  name: 'Jira: Quicksearch: Concurrent searches'
                  x: '48'
                  'y': '3'
                  width: '24'
                  height: '6'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FFBF00
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=quicksearch.concurrent.search",Value]'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AAEAB
                - type: item
                  name: 'Jira: Version count'
                  x: '60'
                  width: '12'
                  height: '3'
                  fields:
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=entity.versions.total",Value]'
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '3'
                    - type: INTEGER
                      name: show.2
                      value: '4'
                    - type: INTEGER
                      name: time_h_pos
                      value: '2'
                    - type: INTEGER
                      name: time_size
                      value: '9'
                    - type: INTEGER
                      name: time_v_pos
                      value: '2'
                    - type: INTEGER
                      name: value_size
                      value: '25'
            - name: Database
              widgets:
                - type: item
                  name: 'Jira: DB: Connection state'
                  width: '24'
                  height: '5'
                  fields:
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=state,name=value",Value]'
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '3'
                    - type: INTEGER
                      name: show.2
                      value: '4'
                    - type: STRING
                      name: thresholds.0.color
                      value: 4CAF50
                    - type: STRING
                      name: thresholds.0.threshold
                      value: '1'
                    - type: STRING
                      name: thresholds.1.color
                      value: EF5350
                    - type: STRING
                      name: thresholds.1.threshold
                      value: '0'
                    - type: INTEGER
                      name: time_h_pos
                      value: '2'
                    - type: INTEGER
                      name: time_size
                      value: '9'
                    - type: INTEGER
                      name: time_v_pos
                      value: '2'
                    - type: INTEGER
                      name: value_size
                      value: '25'
                - type: svggraph
                  name: 'Jira: DB: Connections: Latency'
                  'y': '5'
                  width: '36'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FF0000
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=latency,name=value",Value]'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AAAAA
                    - type: INTEGER
                      name: show_problems
                      value: '1'
                - type: svggraph
                  name: 'Jira: DB: Connections'
                  'y': '10'
                  width: '36'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FF0000
                    - type: STRING
                      name: ds.0.color.1
                      value: 00FF00
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:name=BasicDataSource,connectionpool=connections",NumActive]'
                    - type: ITEM
                      name: ds.0.itemids.1
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:name=BasicDataSource,connectionpool=connections",MaxTotal]'
                    - type: INTEGER
                      name: legend_columns
                      value: '1'
                    - type: INTEGER
                      name: legend_lines
                      value: '2'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AAAFA
                    - type: INTEGER
                      name: show_problems
                      value: '1'
                - type: svggraph
                  name: 'Jira: DB: Writes per second'
                  x: '24'
                  width: '24'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: 00BFFF
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=db.writes",invocation\.count]'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AAAAE
                - type: svggraph
                  name: 'Jira: DB: Pool connections'
                  x: '36'
                  'y': '5'
                  width: '36'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FF0000
                    - type: STRING
                      name: ds.0.color.1
                      value: 00FF00
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=pool,category03=numActive,name=value",Value]'
                    - type: ITEM
                      name: ds.0.itemids.1
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=pool,category03=numIdle,name=value",Value]'
                    - type: INTEGER
                      name: ds.0.stacked
                      value: '1'
                    - type: INTEGER
                      name: legend_columns
                      value: '1'
                    - type: INTEGER
                      name: legend_lines
                      value: '2'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AAAAB
                    - type: INTEGER
                      name: show_problems
                      value: '1'
                - type: svggraph
                  name: 'Jira: DB: Connections: Failed per minute'
                  x: '36'
                  'y': '10'
                  width: '36'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FF0000
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=db,category01=connection,category02=failures,name=counter",Count]'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AAAFE
                    - type: INTEGER
                      name: show_problems
                      value: '1'
                - type: svggraph
                  name: 'Jira: DB: Reads per second'
                  x: '48'
                  width: '24'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FFBF00
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=db.reads",invocation\.count]'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AAAAF
            - name: HTTP
              widgets:
                - type: svggraph
                  name: 'Jira: HTTP: Sessions: Active'
                  width: '24'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FFBF00
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=http,category01=connection,category02=sessions,category03=active,name=value",Value]'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AABAA
                    - type: INTEGER
                      name: show_problems
                      value: '1'
                - type: svggraph
                  name: 'Jira: HTTP: Pool connections'
                  x: '24'
                  width: '24'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FF0000
                    - type: STRING
                      name: ds.0.color.1
                      value: 00FF00
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=http,category01=connection,category02=pool,category03=numActive,name=value",Value]'
                    - type: ITEM
                      name: ds.0.itemids.1
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=http,category01=connection,category02=pool,category03=numIdle,name=value",Value]'
                    - type: INTEGER
                      name: ds.0.stacked
                      value: '1'
                    - type: INTEGER
                      name: legend_columns
                      value: '1'
                    - type: INTEGER
                      name: legend_lines
                      value: '2'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AABAB
                    - type: INTEGER
                      name: show_problems
                      value: '1'
                - type: svggraph
                  name: 'Jira: HTTP: Requests per minute'
                  x: '48'
                  width: '24'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FFBF00
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=http,category01=requests,name=value",Value]'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AABAC
            - name: Mail
              widgets:
                - type: item
                  name: 'Jira: Mail: Queue: Processing state'
                  width: '24'
                  height: '5'
                  fields:
                    - type: INTEGER
                      name: decimal_places
                      value: '0'
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=jobRunning,name=value",Value]'
                    - type: INTEGER
                      name: show.0
                      value: '2'
                    - type: INTEGER
                      name: show.1
                      value: '3'
                    - type: INTEGER
                      name: show.2
                      value: '4'
                    - type: STRING
                      name: thresholds.0.color
                      value: FFBF00
                    - type: STRING
                      name: thresholds.0.threshold
                      value: '1'
                    - type: INTEGER
                      name: time_h_pos
                      value: '2'
                    - type: INTEGER
                      name: time_size
                      value: '9'
                    - type: INTEGER
                      name: time_v_pos
                      value: '2'
                    - type: INTEGER
                      name: value_size
                      value: '25'
                - type: svggraph
                  name: 'Jira: Mail: Processed per minute'
                  'y': '5'
                  width: '36'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FFBF00
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numItemsProcessedPerMin,name=value",Value]'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AADAE
                - type: graphprototype
                  name: 'Jira: Mail server discovery'
                  'y': '10'
                  width: '72'
                  height: '5'
                  fields:
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Jira Data Center by JMX'
                        name: 'Mail [{#JMXCATEGORY01},{#JMXNAME}]: State and failures'
                    - type: STRING
                      name: reference
                      value: AADFA
                - type: svggraph
                  name: 'Jira: Mail: Queue'
                  x: '24'
                  width: '24'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FFBF00
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numItems,name=value",Value]'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AADAA
                    - type: INTEGER
                      name: show_problems
                      value: '1'
                - type: svggraph
                  name: 'Jira: Mail: Sent per minute'
                  x: '36'
                  'y': '5'
                  width: '36'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: 00FF00
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numEmailsSentPerMin,name=value",Value]'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AADAF
                - type: svggraph
                  name: 'Jira: Mail: Queue: Error'
                  x: '48'
                  width: '24'
                  height: '5'
                  fields:
                    - type: STRING
                      name: ds.0.color.0
                      value: FF0000
                    - type: INTEGER
                      name: ds.0.dataset_type
                      value: '0'
                    - type: ITEM
                      name: ds.0.itemids.0
                      value:
                        host: 'Jira Data Center by JMX'
                        key: 'jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numErrors,name=value",Value]'
                    - type: INTEGER
                      name: legend_statistic
                      value: '1'
                    - type: STRING
                      name: reference
                      value: AADAC
                    - type: INTEGER
                      name: show_problems
                      value: '1'
            - name: License
              widgets:
                - type: honeycomb
                  name: 'Jira: License: Users'
                  width: '72'
                  height: '5'
                  fields:
                    - type: STRING
                      name: items.0
                      value: 'License [*]: Users: *'
                    - type: STRING
                      name: primary_label
                      value: '{{ITEM.NAME}.regsub("\[(.*)]: Users: (.*)","\1: \2")}'
                    - type: STRING
                      name: reference
                      value: BAAAA
                    - type: INTEGER
                      name: secondary_label_decimal_places
                      value: '0'
            - name: Storage
              widgets:
                - type: graphprototype
                  name: 'Jira: Storage latency'
                  width: '72'
                  height: '5'
                  fields:
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Jira Data Center by JMX'
                        name: 'Storage [{#JMXCATEGORY01}]: Latency'
                    - type: STRING
                      name: reference
                      value: AAFAA
            - name: Indexing
              widgets:
                - type: svggraph
                  name: 'Jira: Indexing: Latency'
                  width: '72'
                  height: '6'
                  fields:
                    - type: INTEGER
                      name: ds.0.aggregate_function
                      value: '3'
                    - type: STRING
                      name: ds.0.aggregate_interval
                      value: 30m
                    - type: STRING
                      name: ds.0.color
                      value: FFBF00
                    - type: STRING
                      name: ds.0.items.0
                      value: 'Indexing [*]: Latency'
                    - type: INTEGER
                      name: ds.0.type
                      value: '3'
                    - type: INTEGER
                      name: legend_columns
                      value: '2'
                    - type: INTEGER
                      name: legend_lines
                      value: '7'
                    - type: STRING
                      name: or.0.color
                      value: BF00FF
                    - type: STRING
                      name: or.0.items.0
                      value: '*CreateChangeHistoryDocument*'
                    - type: STRING
                      name: or.1.color
                      value: 0080FF
                    - type: STRING
                      name: or.1.items.0
                      value: '*CreateIssueDocumentBatch*'
                    - type: STRING
                      name: or.2.color
                      value: 00FFFF
                    - type: STRING
                      name: or.2.items.0
                      value: '*LuceneConditionalUpdateDocument*'
                    - type: STRING
                      name: or.3.color
                      value: 00FF00
                    - type: STRING
                      name: or.3.items.0
                      value: '*LuceneUpdateDocument*'
                    - type: STRING
                      name: or.4.color
                      value: FFFF00
                    - type: STRING
                      name: or.4.items.0
                      value: '*changehistoryAddSearchExtractors*'
                    - type: STRING
                      name: or.5.color
                      value: FF8000
                    - type: STRING
                      name: or.5.items.0
                      value: '*issueAddSearchExtractors*'
                    - type: STRING
                      name: or.6.color
                      value: CC6600
                    - type: STRING
                      name: or.6.items.0
                      value: '*CreateCommentDocument*'
                    - type: STRING
                      name: or.7.color
                      value: 4000FF
                    - type: STRING
                      name: or.7.items.0
                      value: '*IssueAddFieldIndexers*'
                    - type: STRING
                      name: or.8.color
                      value: FF0000
                    - type: STRING
                      name: or.8.items.0
                      value: '*LuceneDeleteDocument*'
                    - type: STRING
                      name: or.9.color
                      value: '666699'
                    - type: STRING
                      name: or.9.items.0
                      value: '*WaitForLucene*'
                    - type: STRING
                      name: or.10.color
                      value: FFBF00
                    - type: STRING
                      name: or.10.items.0
                      value: '*commentAddSearchExtractors*'
                    - type: STRING
                      name: or.11.color
                      value: 00FFBF
                    - type: STRING
                      name: or.11.items.0
                      value: '*worklogAddSearchExtractors*'
                    - type: STRING
                      name: reference
                      value: ABAAA
                    - type: INTEGER
                      name: show_problems
                      value: '1'
      valuemaps:
        - uuid: 6d06a74d603f4ffd8540c8b87f910c7e
          name: 'Connection availability'
          mappings:
            - value: '0'
              newvalue: Down
            - value: '1'
              newvalue: Up
        - uuid: ae5cd12f5e3f4da7aab84db686771cb1
          name: 'Limit mapping'
          mappings:
            - value: '-1'
              newvalue: Limitless
        - uuid: c5e16a1b701e429e8eff56c598530d60
          name: 'Mail sender'
          mappings:
            - value: '0'
              newvalue: Inactive
            - value: '1'
              newvalue: Running
    - uuid: a326034825984bbd8a3a5885f3939bb3
      template: 'Juniper by SNMP'
      name: 'Juniper by SNMP'
      description: |
        Template Net Juniper
        
        MIBs used:
        EtherLike-MIB
        JUNIPER-ALARM-MIB
        HOST-RESOURCES-MIB
        SNMPv2-MIB
        JUNIPER-MIB
        IF-MIB
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |2
         Template Net Juniper
        
            MIBs used:
            EtherLike-MIB
            JUNIPER-ALARM-MIB
            HOST-RESOURCES-MIB
            SNMPv2-MIB
            JUNIPER-MIB
            IF-MIB
      vendor:
        name: Zabbix
        version: 8.0-2
      groups:
        - name: 'Templates/Network devices'
      items:
        - uuid: e5cf73357ca349818155522325a7c6bc
          name: 'ICMP ping'
          type: SIMPLE
          key: icmpping
          description: |
            The host accessibility by ICMP ping.
            
            0 - ICMP ping fails;
            1 - ICMP ping successful.
          valuemap:
            name: 'Service state'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: d90e80fd900246dcab90447ee2a6a7a1
              expression: 'max(/Juniper by SNMP/icmpping,#3)=0'
              name: 'Juniper: Unavailable by ICMP ping'
              priority: HIGH
              description: 'Last three attempts returned timeout. Please check device connectivity.'
              tags:
                - tag: scope
                  value: availability
        - uuid: 3a1c4412bb9340169827209df2554a50
          name: 'ICMP loss'
          type: SIMPLE
          key: icmppingloss
          value_type: FLOAT
          units: '%'
          description: 'The percentage of lost packets.'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: d3911ede372e4eb3b89b30e8e340a716
              expression: 'min(/Juniper by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Juniper by SNMP/icmppingloss,5m)<100'
              name: 'Juniper: High ICMP ping loss'
              opdata: 'Loss: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'ICMP packets loss detected.'
              dependencies:
                - name: 'Juniper: Unavailable by ICMP ping'
                  expression: 'max(/Juniper by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: ad350f912d2f4ead90aacdefa245cdf3
          name: 'ICMP response time'
          type: SIMPLE
          key: icmppingsec
          value_type: FLOAT
          units: s
          description: 'The ICMP ping response time (in seconds).'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 751d9855903f4f00b674b511fe992121
              expression: 'avg(/Juniper by SNMP/icmppingsec,5m)>{$ICMP_RESPONSE_TIME_WARN}'
              name: 'Juniper: High ICMP ping response time'
              opdata: 'Value: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'Average ICMP response time is too high.'
              dependencies:
                - name: 'Juniper: High ICMP ping loss'
                  expression: 'min(/Juniper by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Juniper by SNMP/icmppingloss,5m)<100'
                - name: 'Juniper: Unavailable by ICMP ping'
                  expression: 'max(/Juniper by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: e5470bc511a5499e9b8dc8bf4de8f054
          name: 'SNMP traps (fallback)'
          type: SNMP_TRAP
          key: snmptrap.fallback
          value_type: LOG
          description: 'The item is used to collect all SNMP traps unmatched by other snmptrap items'
          logtimefmt: 'hh:mm:sszyyyy/MM/dd'
          tags:
            - tag: component
              value: network
        - uuid: b8583eaf0353493ba18e751c9355dfa7
          name: 'System contact details'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.4.0]'
          key: 'system.contact[sysContact.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string.
          inventory_link: CONTACT
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: ca8d30d561184ff4bf1b4ef07feb7302
          name: 'System description'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: 'system.descr[sysDescr.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            A textual description of the entity. This value should
            include the full name and version identification of the system's hardware type, software operating-system, and
            networking software.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 7a472141ebcf4816bffe9bb49f003db6
          name: 'Hardware model name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.2636.3.1.2.0]'
          key: system.hw.model
          delay: 1h
          value_type: CHAR
          description: |
            MIB: JUNIPER-MIB
            The name, model, or detailed description of the box,indicating which product the box is about, for example 'M40'.
          inventory_link: MODEL
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
        - uuid: b836efdbd3ac4becac319030250c1beb
          name: 'Hardware serial number'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.2636.3.1.3.0]'
          key: system.hw.serialnumber
          delay: 1h
          value_type: CHAR
          description: |
            MIB: JUNIPER-MIB
            The serial number of this subject, blank if unknown or unavailable.
          inventory_link: SERIALNO_A
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 9f1f3316ed6f4d50a4c9f71a15f35d50
              expression: 'last(/Juniper by SNMP/system.hw.serialnumber,#1)<>last(/Juniper by SNMP/system.hw.serialnumber,#2) and length(last(/Juniper by SNMP/system.hw.serialnumber))>0'
              name: 'Juniper: Device has been replaced'
              event_name: 'Juniper: Device has been replaced (new serial number received)'
              priority: INFO
              description: 'Device serial number has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
        - uuid: 833dd7b3b4e94dc89b4e7098cec3fce2
          name: 'Uptime (hardware)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.25.1.1.0]'
          key: 'system.hw.uptime[hrSystemUptime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: HOST-RESOURCES-MIB
            The amount of time since this host was last initialized. Note that this is different from sysUpTime in the SNMPv2-MIB [RFC1907] because sysUpTime is the uptime of the network management portion of the system.
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
              error_handler: CUSTOM_VALUE
              error_handler_params: '0'
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: 7a0062fa788c4abdbeb83df30276a0fd
          name: 'System location'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.6.0]'
          key: 'system.location[sysLocation.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            Physical location of the node (e.g., `equipment room`, `3rd floor`). If not provided, the value is a zero-length string.
          inventory_link: LOCATION
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 87d8d5844b044be1a2a3261f98116fb0
          name: 'System name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.5.0]'
          key: system.name
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            An administratively-assigned name for this managed node.By convention, this is the node's fully-qualified domain name. If the name is unknown, the value is the zero-length string.
          inventory_link: NAME
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 97157acd882944e29d6fb9fa1a2d9506
              expression: 'last(/Juniper by SNMP/system.name,#1)<>last(/Juniper by SNMP/system.name,#2) and length(last(/Juniper by SNMP/system.name))>0'
              name: 'Juniper: System name has changed'
              event_name: 'Juniper: System name has changed (new name: {ITEM.VALUE})'
              priority: INFO
              description: 'The name of the system has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
                - tag: scope
                  value: security
        - uuid: bd29b0df96ac4b93bbd0746257d3601d
          name: 'Uptime (network)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.3.0]'
          key: 'system.net.uptime[sysUpTime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: SNMPv2-MIB
            Time (in hundredths of a second) since the network management portion of the system was last re-initialized.
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: ebfd8c6f87d3401197bb8d9835206878
          name: 'System object ID'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.2.0]'
          key: 'system.objectid[sysObjectID.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determining`what kind of box' is being managed.  For example, if vendor`Flintstones, Inc.' was assigned the subtree1.3.6.1.4.1.4242, it could assign the identifier 1.3.6.1.4.1.4242.1.1 to its `Fred Router'.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 414a29c595b2439dacb15b4fa0734ab4
          name: 'Overall system health status'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.2636.3.4.2.3.1.0]'
          key: 'system.status[jnxRedAlarmState.0]'
          delay: 30s
          trends: '0'
          description: |
            MIB: JUNIPER-ALARM-MIB
            The red alarm indication on the craft interface panel.
            The red alarm is on when there is some system
            failure or power supply failure or the system
            is experiencing a hardware malfunction or some
            threshold is being exceeded.
            
            This red alarm state could be turned off by the
            ACO/LT (Alarm Cut Off / Lamp Test) button on the
            front panel module.
          valuemap:
            name: 'JUNIPER-ALARM-MIB::jnxRedAlarmState'
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 1190bb9c05424ac5a0052bd191c274f2
              expression: 'count(/Juniper by SNMP/system.status[jnxRedAlarmState.0],#1,"eq","{$HEALTH_CRIT_STATUS}")=1'
              name: 'Juniper: System status is in critical state'
              opdata: 'Current state: {ITEM.LASTVALUE1}'
              priority: HIGH
              description: 'Please check the device for errors'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: 24cd5862c2de4cbaad0b3bbce7f26a65
          name: 'Operating system'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: 'system.sw.os[sysDescr.0]'
          delay: 1h
          value_type: CHAR
          description: 'MIB: SNMPv2-MIB'
          inventory_link: OS
          preprocessing:
            - type: REGEX
              parameters:
                - 'kernel (JUNOS [0-9a-zA-Z\.\-]+)'
                - \1
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: os
          triggers:
            - uuid: 9249511ecf4a4a2d952aa0c4fe55a5d0
              expression: 'last(/Juniper by SNMP/system.sw.os[sysDescr.0],#1)<>last(/Juniper by SNMP/system.sw.os[sysDescr.0],#2) and length(last(/Juniper by SNMP/system.sw.os[sysDescr.0]))>0'
              name: 'Juniper: Operating system description has changed'
              priority: INFO
              description: 'Operating system description has changed. Possible reasons that system has been updated or replaced. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              dependencies:
                - name: 'Juniper: System name has changed'
                  expression: 'last(/Juniper by SNMP/system.name,#1)<>last(/Juniper by SNMP/system.name,#2) and length(last(/Juniper by SNMP/system.name))>0'
              tags:
                - tag: scope
                  value: notice
        - uuid: 80ff69518e07493aac6059e1009d9a9f
          name: 'SNMP agent availability'
          type: INTERNAL
          key: 'zabbix[host,snmp,available]'
          description: |
            Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list.
            Possible values:
            0 - not available
            1 - available
            2 - unknown
          valuemap:
            name: zabbix.host.available
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 417527b3749c4a1c891d761c0978fb2e
              expression: 'max(/Juniper by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
              name: 'Juniper: No SNMP data collection'
              opdata: 'Current state: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'SNMP is not available for polling. Please check device connectivity and SNMP settings.'
              dependencies:
                - name: 'Juniper: Unavailable by ICMP ping'
                  expression: 'max(/Juniper by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
      discovery_rules:
        - uuid: 3ce46d56008248cf960c6bf689ea7c0b
          name: 'CPU and Memory Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.2636.3.1.13.1.5]'
          key: jnxOperatingTable.discovery
          delay: 1h
          filter:
            conditions:
              - macro: '{#SNMPVALUE}'
                value: 'Routing Engine.*'
          description: |
            Scanning JUNIPER-MIB::jnxOperatingTable for CPU and Memory
            http://kb.juniper.net/InfoCenter/index?page=content&id=KB17526&actp=search. Filter limits results to Routing Engines
          item_prototypes:
            - uuid: 932c89bb249d412fabd3549ddcbf654e
              name: '{#SNMPVALUE}: CPU utilization'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.2636.3.1.13.1.8.{#SNMPINDEX}]'
              key: 'system.cpu.util[jnxOperatingCPU.{#SNMPINDEX}]'
              value_type: FLOAT
              units: '%'
              description: |
                MIB: JUNIPER-MIB
                The CPU utilization in percentage of this subject. Zero if unavailable or inapplicable.
                Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX%20SNMP%20Monitoring%20Guide_v1.1.pdf
              tags:
                - tag: component
                  value: cpu
              trigger_prototypes:
                - uuid: 248c49bc4f47437b9b91e20b57da197d
                  expression: 'min(/Juniper by SNMP/system.cpu.util[jnxOperatingCPU.{#SNMPINDEX}],5m)>{$CPU.UTIL.CRIT}'
                  name: 'Juniper: {#SNMPVALUE}: High CPU utilization'
                  event_name: 'Juniper: {#SNMPVALUE}: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
                  opdata: 'Current utilization: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'The CPU utilization is too high. The system might be slow to respond.'
                  tags:
                    - tag: scope
                      value: performance
            - uuid: f60e29b4392e4a3e882a4175e618890c
              name: '{#SNMPVALUE}: Memory utilization'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.2636.3.1.13.1.11.{#SNMPINDEX}]'
              key: 'vm.memory.util[jnxOperatingBuffer.{#SNMPINDEX}]'
              value_type: FLOAT
              units: '%'
              description: |
                MIB: JUNIPER-MIB
                The buffer pool utilization in percentage of this subject.  Zero if unavailable or inapplicable.
                Reference: http://kb.juniper.net/library/CUSTOMERSERVICE/GLOBAL_JTAC/BK26199/SRX%20SNMP%20Monitoring%20Guide_v1.1.pdf
              tags:
                - tag: component
                  value: memory
              trigger_prototypes:
                - uuid: ab1f3dcba55d41da974c3ac60ca5b8f2
                  expression: 'min(/Juniper by SNMP/vm.memory.util[jnxOperatingBuffer.{#SNMPINDEX}],5m)>{$MEMORY.UTIL.MAX}'
                  name: 'Juniper: {#SNMPVALUE}: High memory utilization'
                  event_name: 'Juniper: {#SNMPVALUE}: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
                  priority: AVERAGE
                  description: 'The system is running out of free memory.'
                  tags:
                    - tag: scope
                      value: capacity
                    - tag: scope
                      value: performance
          graph_prototypes:
            - uuid: 7cc53c92b6be4fc59d2928e73f6fe8c3
              name: '{#SNMPVALUE}: CPU utilization'
              ymin_type_1: FIXED
              ymax_type_1: FIXED
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Juniper by SNMP'
                    key: 'system.cpu.util[jnxOperatingCPU.{#SNMPINDEX}]'
            - uuid: 646779d729d8417383eb0e1240a69767
              name: '{#SNMPVALUE}: Memory utilization'
              ymin_type_1: FIXED
              ymax_type_1: FIXED
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Juniper by SNMP'
                    key: 'vm.memory.util[jnxOperatingBuffer.{#SNMPINDEX}]'
        - uuid: 6e60561a198d43cf8c0fbe9a8ba1c492
          name: 'FAN Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.2636.3.1.13.1.5.4]'
          key: jnxOperatingTable.discovery.fans
          delay: 1h
          description: 'Scanning JUNIPER-MIB::jnxOperatingTable for Fans'
          item_prototypes:
            - uuid: be611a0c7aee4d72a0b5c53d199b7469
              name: '{#SNMPVALUE}: Fan status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.2636.3.1.13.1.6.4.{#SNMPINDEX}]'
              key: 'sensor.fan.status[jnxOperatingState.4.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: 'MIB: JUNIPER-MIB'
              valuemap:
                name: 'JUNIPER-ALARM-MIB::jnxOperatingState'
              tags:
                - tag: component
                  value: fan
              trigger_prototypes:
                - uuid: f8f1dee0b0ff465d98c6f6bcdfaff17f
                  expression: 'count(/Juniper by SNMP/sensor.fan.status[jnxOperatingState.4.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS}")=1'
                  name: 'Juniper: {#SNMPVALUE}: Fan is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the fan unit'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
        - uuid: aa36adb11a874374a739d96a2f9a0b3d
          name: 'PSU Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.2636.3.1.13.1.5.2]'
          key: jnxOperatingTable.discovery.psu
          delay: 1h
          description: 'Scanning JUNIPER-MIB::jnxOperatingTable for Power Supplies'
          item_prototypes:
            - uuid: c7101436ab3a4c0696cf74bc3c97c265
              name: '{#SNMPVALUE}: Power supply status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.2636.3.1.13.1.6.2.{#SNMPINDEX}]'
              key: 'sensor.psu.status[jnxOperatingState.2.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: JUNIPER-MIB
                If they are using DC power supplies there is a known issue on PR 1064039 where the fans do not detect the temperature correctly and fail to cool the power supply causing the shutdown to occur.
                This is fixed in Junos 13.3R7 https://forums.juniper.net/t5/Routing/PEM-0-not-OK-MX104/m-p/289644#M14122
              valuemap:
                name: 'JUNIPER-ALARM-MIB::jnxOperatingState'
              tags:
                - tag: component
                  value: power
              trigger_prototypes:
                - uuid: e577226331f6483fbd1e414bb7d365f7
                  expression: 'count(/Juniper by SNMP/sensor.psu.status[jnxOperatingState.2.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS}")=1'
                  name: 'Juniper: {#SNMPVALUE}: Power supply is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the power supply unit for errors'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
        - uuid: e28a9bc06ada4427a7e135aa41c4f76b
          name: 'Temperature discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.2636.3.1.13.1.7,{#SENSOR_INFO},1.3.6.1.4.1.2636.3.1.13.1.5]'
          key: jnxOperatingTable.discovery.temp
          delay: 1h
          filter:
            conditions:
              - macro: '{#SNMPVALUE}'
                value: '[^0]+'
          description: |
            Scanning JUNIPER-MIB::jnxOperatingTable for Temperature
            http://kb.juniper.net/InfoCenter/index?page=content&id=KB17526&actp=search. Filter limits results to Routing Engines
          item_prototypes:
            - uuid: 96f44fbce5de45e6918efd140283453b
              name: '{#SENSOR_INFO}: Temperature'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.2636.3.1.13.1.7.{#SNMPINDEX}]'
              key: 'sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}]'
              delay: 3m
              value_type: FLOAT
              units: °C
              description: |
                MIB: JUNIPER-MIB
                The temperature in Celsius (degrees C) of {#SENSOR_INFO}
              tags:
                - tag: component
                  value: temperature
              trigger_prototypes:
                - uuid: c82ca2b550f540b7a4c8f9548e15cfb0
                  expression: 'avg(/Juniper by SNMP/sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SENSOR_INFO}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/Juniper by SNMP/sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SENSOR_INFO}"}-3'
                  name: 'Juniper: {#SENSOR_INFO}: Temperature is above critical threshold'
                  event_name: 'Juniper: {#SENSOR_INFO}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SENSOR_INFO}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: HIGH
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: 51113c80e4bd46de8ea247e0bd3b19dd
                  expression: 'avg(/Juniper by SNMP/sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}],5m)>{$TEMP_WARN:"{#SENSOR_INFO}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'max(/Juniper by SNMP/sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}],5m)<{$TEMP_WARN:"{#SENSOR_INFO}"}-3'
                  name: 'Juniper: {#SENSOR_INFO}: Temperature is above warning threshold'
                  event_name: 'Juniper: {#SENSOR_INFO}: Temperature is above warning threshold: >{$TEMP_WARN:"{#SENSOR_INFO}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: WARNING
                  description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
                  dependencies:
                    - name: 'Juniper: {#SENSOR_INFO}: Temperature is above critical threshold'
                      expression: 'avg(/Juniper by SNMP/sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SENSOR_INFO}"}'
                      recovery_expression: 'max(/Juniper by SNMP/sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SENSOR_INFO}"}-3'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
                - uuid: 35b56753b2424f0989ca09cb67f7d9a3
                  expression: 'avg(/Juniper by SNMP/sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"{#SENSOR_INFO}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'min(/Juniper by SNMP/sensor.temp.value[jnxOperatingTemp.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"{#SENSOR_INFO}"}+3'
                  name: 'Juniper: {#SENSOR_INFO}: Temperature is too low'
                  event_name: 'Juniper: {#SENSOR_INFO}: Temperature is too low: <{$TEMP_CRIT_LOW:"{#SENSOR_INFO}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
        - uuid: 8ec2a60b8bfe43e7b9227042da1cf2ac
          name: 'Network interfaces discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFADMINSTATUS},1.3.6.1.2.1.2.2.1.7,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2,{#IFTYPE},1.3.6.1.2.1.2.2.1.3]'
          key: net.if.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.MATCHES}'
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.MATCHES}'
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.MATCHES}'
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.MATCHES}'
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.MATCHES}'
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.MATCHES}'
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovering interfaces from IF-MIB.'
          item_prototypes:
            - uuid: 3ccc2d240a264ac59388dfcabbd0d794
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.13.{#SNMPINDEX}]'
              key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of inbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 3d94079eddb141ceac3b6a134168e422
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.14.{#SNMPINDEX}]'
              key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of inbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 0cde648550284243a078965f165a069a
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits received'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}]'
              key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets received on the interface, including framing characters. This object is a 64-bit version of ifInOctets. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: d440b154c6194043a657fca8c4ed3179
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of outbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: e9ed9d3d6b8b4340b7f1e22ca066a61d
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.20.{#SNMPINDEX}]'
              key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of outbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of outbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 9c2bd3364f984af498b7bedbccc23c77
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}]'
              key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets transmitted out of the interface, including framing characters. This object is a 64-bit version of ifOutOctets.Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 339529dba51f4ae5abe508a2461e0e71
              name: 'Interface {#IFNAME}({#IFALIAS}): Speed'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}]'
              key: 'net.if.speed[ifHighSpeed.{#SNMPINDEX}]'
              delay: 5m
              trends: '0'
              units: bps
              description: |
                MIB: IF-MIB
                An estimate of the interface's current bandwidth in units of 1,000,000 bits per second. If this object reports a value of `n' then the speed of the interface is somewhere in the range of `n-500,000' to`n+499,999'.  For interfaces which do not vary in bandwidth or for those where no accurate estimation can be made, this object should contain the nominal bandwidth. For a sub-layer which has no concept of bandwidth, this object should be zero.
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1000000'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 51cda26d008e458790fd722a95072814
              name: 'Interface {#IFNAME}({#IFALIAS}): Operational status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}]'
              key: 'net.if.status[ifOperStatus.{#SNMPINDEX}]'
              trends: '0'
              description: |
                MIB: IF-MIB
                The current operational state of the interface.
                - The testing(3) state indicates that no operational packet scan be passed
                - If ifAdminStatus is down(2) then ifOperStatus should be down(2)
                - If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic
                - It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection)
                - It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state
                - It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components.
              valuemap:
                name: 'IF-MIB::ifOperStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: c993121dca984691bd2cdf0d41c318b4
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
                  name: 'Juniper: Interface {#IFNAME}({#IFALIAS}): Link down'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: |
                    This trigger expression works as follows:
                    1. It can be triggered if the operations status is down.
                    2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine the context macro to "0", marking this interface as not important. No new trigger will be fired if this interface is down.
                    3. `{TEMPLATE_NAME:METRIC.diff()}=1` - the trigger fires only if the operational status was up to (1) sometime before (so, does not fire for "eternal off" interfaces.)
                    
                    WARNING: if closed manually - it will not fire again on the next poll, because of .diff.
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 68dd9241092f4f2994d6e5d53cec96b7
              name: 'Interface {#IFNAME}({#IFALIAS}): Interface type'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.3.{#SNMPINDEX}]'
              key: 'net.if.type[ifType.{#SNMPINDEX}]'
              delay: 1h
              trends: '0'
              description: |
                MIB: IF-MIB
                The type of interface.
                Additional values for ifType are assigned by the Internet Assigned Numbers Authority (IANA),
                through updating the syntax of the IANAifType textual convention.
              valuemap:
                name: 'IF-MIB::ifType'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
          trigger_prototypes:
            - uuid: faabf122af7e4cca8fdc6e57060b2e69
              expression: |
                change(/Juniper by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])<0 and last(/Juniper by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
                and (
                last(/Juniper by SNMP/net.if.type[ifType.{#SNMPINDEX}])=6 or
                last(/Juniper by SNMP/net.if.type[ifType.{#SNMPINDEX}])=7 or
                last(/Juniper by SNMP/net.if.type[ifType.{#SNMPINDEX}])=11 or
                last(/Juniper by SNMP/net.if.type[ifType.{#SNMPINDEX}])=62 or
                last(/Juniper by SNMP/net.if.type[ifType.{#SNMPINDEX}])=69 or
                last(/Juniper by SNMP/net.if.type[ifType.{#SNMPINDEX}])=117
                )
                and
                (last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2)
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                (change(/Juniper by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 and last(/Juniper by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}],#2)>0) or
                (last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2)
              name: 'Juniper: Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before'
              opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
              priority: INFO
              description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              dependencies:
                - name: 'Juniper: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: f937622c6f7540579a60328398430f00
              expression: |
                (avg(/Juniper by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Juniper by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) or
                avg(/Juniper by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Juniper by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])) and
                last(/Juniper by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                avg(/Juniper by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Juniper by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) and
                avg(/Juniper by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Juniper by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])
              name: 'Juniper: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage'
              event_name: 'Juniper: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
              opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'The utilization of the network interface is close to its estimated maximum bandwidth.'
              manual_close: 'YES'
              dependencies:
                - name: 'Juniper: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: 5731e4345a544b45b6a70a71284b878d
              expression: |
                min(/Juniper by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
                or min(/Juniper by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                max(/Juniper by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
                and max(/Juniper by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
              name: 'Juniper: Interface {#IFNAME}({#IFALIAS}): High error rate'
              event_name: 'Juniper: Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
              opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'It recovers when it is below 80% of the `{$IF.ERRORS.WARN:"{#IFNAME}"}` threshold.'
              manual_close: 'YES'
              dependencies:
                - name: 'Juniper: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Juniper by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
          graph_prototypes:
            - uuid: bdb09ef524a34b65aaee2c574cd77bde
              name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Juniper by SNMP'
                    key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
                - sortorder: '1'
                  drawtype: BOLD_LINE
                  color: F63100
                  item:
                    host: 'Juniper by SNMP'
                    key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
                - sortorder: '2'
                  color: 00611C
                  yaxisside: RIGHT
                  item:
                    host: 'Juniper by SNMP'
                    key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
                - sortorder: '3'
                  color: F7941D
                  yaxisside: RIGHT
                  item:
                    host: 'Juniper by SNMP'
                    key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
                - sortorder: '4'
                  color: FC6EA3
                  yaxisside: RIGHT
                  item:
                    host: 'Juniper by SNMP'
                    key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
                - sortorder: '5'
                  color: 6C59DC
                  yaxisside: RIGHT
                  item:
                    host: 'Juniper by SNMP'
                    key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
        - uuid: f4446053584f49fcb1375a3a4ba537e9
          name: 'EtherLike-MIB Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.2.1.10.7.2.1.19,{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2]'
          key: net.if.duplex.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFOPERSTATUS}'
                value: '1'
              - macro: '{#SNMPVALUE}'
                value: (2|3)
          description: 'Discovering interfaces from IF-MIB and EtherLike-MIB. Interfaces with up(1) Operational Status are discovered.'
          item_prototypes:
            - uuid: bbe031a739e9406bb89c028a24535dc5
              name: 'Interface {#IFNAME}({#IFALIAS}): Duplex status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.10.7.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}]'
              description: |
                MIB: EtherLike-MIB
                The current mode of operation of the MAC
                entity.  'unknown' indicates that the current
                duplex mode could not be determined.
                
                Management control of the duplex mode is
                accomplished through the MAU MIB.  When
                an interface does not support autonegotiation,
                or when autonegotiation is not enabled, the
                duplex mode is controlled using
                ifMauDefaultType.  When autonegotiation is
                supported and enabled, duplex mode is controlled
                using ifMauAutoNegAdvertisedBits.  In either
                case, the currently operating duplex mode is
                reflected both in this object and in ifMauType.
                
                Note that this object provides redundant
                information with ifMauType.  Normally, redundant
                objects are discouraged.  However, in this
                instance, it allows a management application to
                determine the duplex status of an interface
                without having to know every possible value of
                ifMauType.  This was felt to be sufficiently
                valuable to justify the redundancy.
                Reference: [IEEE 802.3 Std.], 30.3.1.1.32,aDuplexStatus.
              valuemap:
                name: 'EtherLike-MIB::dot3StatsDuplexStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: a2f686bf06cc4e0a8aa24675abd5d557
                  expression: 'last(/Juniper by SNMP/net.if.duplex[dot3StatsDuplexStatus.{#SNMPINDEX}])=2'
                  name: 'Juniper: Interface {#IFNAME}({#IFALIAS}): In half-duplex mode'
                  priority: WARNING
                  description: 'Please check autonegotiation settings and cabling.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: performance
          preprocessing:
            - type: JAVASCRIPT
              parameters:
                - |
                  try {
                  	var data = JSON.parse(value);
                  }
                  catch (error) {
                  	throw 'Failed to parse JSON of EtherLike-MIB discovery.';
                  }
                  var fields = ['{#SNMPVALUE}','{#IFOPERSTATUS}','{#IFALIAS}','{#IFNAME}','{#IFDESCR}'];
                  data.forEach(function (element) {
                  	fields.forEach(function (field) {
                  		element[field] = element[field] || '';
                  	});
                  });
                  return JSON.stringify(data);
      tags:
        - tag: class
          value: network
        - tag: target
          value: juniper
      macros:
        - macro: '{$CPU.UTIL.CRIT}'
          value: '90'
          config:
            type: TEXT
            priority: '10'
            section_name: Thresholds
            label: 'Threshold for CPU utilization (critical)'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$FAN_CRIT_STATUS}'
          value: '6'
          config:
            type: TEXT
            priority: '7'
            section_name: Other
            label: 'Fan critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$HEALTH_CRIT_STATUS}'
          value: '3'
          config:
            type: TEXT
            priority: '6'
            section_name: Other
            label: 'Health critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_LOSS_WARN}'
          value: '20'
          description: 'Warning threshold of ICMP packet loss in %.'
          config:
            type: TEXT
            priority: '12'
            section_name: Thresholds
            label: 'Threshold of ICMP packet loss'
            description: 'Warning threshold of ICMP packet loss in %. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_RESPONSE_TIME_WARN}'
          value: '0.15'
          description: 'Warning threshold of the average ICMP response time in seconds.'
          config:
            type: TEXT
            priority: '13'
            section_name: Thresholds
            label: 'Threshold of the average ICMP response'
            description: 'Warning threshold of the average ICMP response time in seconds. No less than 0.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.ERRORS.WARN}'
          value: '2'
          description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
          config:
            type: TEXT
            priority: '14'
            section_name: Thresholds
            label: 'Threshold of error packet rate'
            description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '15'
            section_name: Thresholds
            label: 'The threshold in the interface utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IFCONTROL}'
          value: '1'
          config:
            type: TEXT
            priority: '16'
            section_name: Thresholds
            label: 'Interfaces control'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$MEMORY.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '9'
            section_name: Thresholds
            label: 'Threshold for memory utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$NET.IF.IFADMINSTATUS.MATCHES}'
          value: '^.*'
          config:
            type: TEXT
            priority: '21'
            section_name: Filters
            label: 'Filter for network interface by adminstatus'
        - macro: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
          value: ^2$
          description: 'Ignore down(2) administrative status'
          config:
            type: TEXT
            priority: '22'
            section_name: Filters
            label: 'Filter for network interface by adminstatus (exclude)'
        - macro: '{$NET.IF.IFALIAS.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '25'
            section_name: Filters
            label: 'Filter for network interfaces by alias'
        - macro: '{$NET.IF.IFALIAS.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '26'
            section_name: Filters
            label: 'Filter for network interfaces by alias (exclude)'
        - macro: '{$NET.IF.IFDESCR.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '23'
            section_name: Filters
            label: 'Filter for network interfaces by description'
        - macro: '{$NET.IF.IFDESCR.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '24'
            section_name: Filters
            label: 'Filter for network interfaces by description (exclude)'
        - macro: '{$NET.IF.IFNAME.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '17'
            section_name: Filters
            label: 'Filter for network interface by name'
        - macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
          value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9a-z]+$|docker[0-9]+|br-[a-z0-9]{12})'
          description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
          config:
            type: TEXT
            priority: '18'
            section_name: Filters
            label: 'Filter for network interface by name (exclude)'
            description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
        - macro: '{$NET.IF.IFOPERSTATUS.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '19'
            section_name: Filters
            label: 'Filter for network interface by status'
        - macro: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
          value: ^6$
          description: 'Ignore notPresent(6)'
          config:
            type: TEXT
            priority: '20'
            section_name: Filters
            label: 'Filter for network interface by status (exclude)'
        - macro: '{$NET.IF.IFTYPE.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '27'
            section_name: Filters
            label: 'Filter for network interfaces by type'
        - macro: '{$NET.IF.IFTYPE.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '28'
            section_name: Filters
            label: 'Filter for network interfaces by type (exclude)'
        - macro: '{$PSU_CRIT_STATUS}'
          value: '6'
          config:
            type: TEXT
            priority: '8'
            section_name: Other
            label: 'Power supply critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$SNMP.TIMEOUT}'
          value: 5m
          description: 'Time interval for the SNMP availability trigger.'
          config:
            type: TEXT
            priority: '11'
            section_name: Other
            label: 'Time interval'
            description: 'Time interval for the SNMP availability trigger.'
        - macro: '{$TEMP_CRIT}'
          value: '60'
          config:
            type: TEXT
            priority: '1'
            section_name: Thresholds
            label: 'Threshold for temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_CRIT:"Routing Engine"}'
          value: '80'
          config:
            type: TEXT
            priority: '4'
            section_name: Thresholds
            label: 'Critical temperature (Routing Engine)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_CRIT_LOW}'
          value: '5'
          config:
            type: TEXT
            priority: '2'
            section_name: Thresholds
            label: 'Threshold for low temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_WARN}'
          value: '50'
          config:
            type: TEXT
            priority: '3'
            section_name: Thresholds
            label: 'Threshold for temperature (warning)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_WARN:"Routing Engine"}'
          value: '70'
          config:
            type: TEXT
            priority: '5'
            section_name: Thresholds
            label: 'Warning temperature (Routing Engine)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
      dashboards:
        - uuid: 1276b12d41594e38afa2308925983a50
          name: 'Juniper: General'
          pages:
            - name: 'Juniper: General'
              widgets:
                - type: graphprototype
                  name: 'Memory utilization'
                  width: '36'
                  height: '5'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Juniper by SNMP'
                        name: '{#SNMPVALUE}: Memory utilization'
                    - type: STRING
                      name: reference
                      value: AAAAA
                - type: graphprototype
                  name: 'CPU utilization'
                  x: '36'
                  width: '36'
                  height: '5'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Juniper by SNMP'
                        name: '{#SNMPVALUE}: CPU utilization'
                    - type: STRING
                      name: reference
                      value: AAAAB
      valuemaps:
        - uuid: 69625f8a027542638c3ca9b64522602d
          name: 'EtherLike-MIB::dot3StatsDuplexStatus'
          mappings:
            - value: '1'
              newvalue: unknown
            - value: '2'
              newvalue: halfDuplex
            - value: '3'
              newvalue: fullDuplex
        - uuid: 79269236a24e4a1d8f40a600ee1c3a65
          name: 'IF-MIB::ifOperStatus'
          mappings:
            - value: '1'
              newvalue: up
            - value: '2'
              newvalue: down
            - value: '4'
              newvalue: unknown
            - value: '5'
              newvalue: dormant
            - value: '6'
              newvalue: notPresent
            - value: '7'
              newvalue: lowerLayerDown
        - uuid: f345b4dd14784f7f96902ad7f95d4038
          name: 'IF-MIB::ifType'
          mappings:
            - value: '1'
              newvalue: other
            - value: '2'
              newvalue: regular1822
            - value: '3'
              newvalue: hdh1822
            - value: '4'
              newvalue: ddnX25
            - value: '5'
              newvalue: rfc877x25
            - value: '6'
              newvalue: ethernetCsmacd
            - value: '7'
              newvalue: iso88023Csmacd
            - value: '8'
              newvalue: iso88024TokenBus
            - value: '9'
              newvalue: iso88025TokenRing
            - value: '10'
              newvalue: iso88026Man
            - value: '11'
              newvalue: starLan
            - value: '12'
              newvalue: proteon10Mbit
            - value: '13'
              newvalue: proteon80Mbit
            - value: '14'
              newvalue: hyperchannel
            - value: '15'
              newvalue: fddi
            - value: '16'
              newvalue: lapb
            - value: '17'
              newvalue: sdlc
            - value: '18'
              newvalue: ds1
            - value: '19'
              newvalue: e1
            - value: '20'
              newvalue: basicISDN
            - value: '21'
              newvalue: primaryISDN
            - value: '22'
              newvalue: propPointToPointSerial
            - value: '23'
              newvalue: ppp
            - value: '24'
              newvalue: softwareLoopback
            - value: '25'
              newvalue: eon
            - value: '26'
              newvalue: ethernet3Mbit
            - value: '27'
              newvalue: nsip
            - value: '28'
              newvalue: slip
            - value: '29'
              newvalue: ultra
            - value: '30'
              newvalue: ds3
            - value: '31'
              newvalue: sip
            - value: '32'
              newvalue: frameRelay
            - value: '33'
              newvalue: rs232
            - value: '34'
              newvalue: para
            - value: '35'
              newvalue: arcnet
            - value: '36'
              newvalue: arcnetPlus
            - value: '37'
              newvalue: atm
            - value: '38'
              newvalue: miox25
            - value: '39'
              newvalue: sonet
            - value: '40'
              newvalue: x25ple
            - value: '41'
              newvalue: iso88022llc
            - value: '42'
              newvalue: localTalk
            - value: '43'
              newvalue: smdsDxi
            - value: '44'
              newvalue: frameRelayService
            - value: '45'
              newvalue: v35
            - value: '46'
              newvalue: hssi
            - value: '47'
              newvalue: hippi
            - value: '48'
              newvalue: modem
            - value: '49'
              newvalue: aal5
            - value: '50'
              newvalue: sonetPath
            - value: '51'
              newvalue: sonetVT
            - value: '52'
              newvalue: smdsIcip
            - value: '53'
              newvalue: propVirtual
            - value: '54'
              newvalue: propMultiplexor
            - value: '55'
              newvalue: ieee80212
            - value: '56'
              newvalue: fibreChannel
            - value: '57'
              newvalue: hippiInterface
            - value: '58'
              newvalue: frameRelayInterconnect
            - value: '59'
              newvalue: aflane8023
            - value: '60'
              newvalue: aflane8025
            - value: '61'
              newvalue: cctEmul
            - value: '62'
              newvalue: fastEther
            - value: '63'
              newvalue: isdn
            - value: '64'
              newvalue: v11
            - value: '65'
              newvalue: v36
            - value: '66'
              newvalue: g703at64k
            - value: '67'
              newvalue: g703at2mb
            - value: '68'
              newvalue: qllc
            - value: '69'
              newvalue: fastEtherFX
            - value: '70'
              newvalue: channel
            - value: '71'
              newvalue: ieee80211
            - value: '72'
              newvalue: ibm370parChan
            - value: '73'
              newvalue: escon
            - value: '74'
              newvalue: dlsw
            - value: '75'
              newvalue: isdns
            - value: '76'
              newvalue: isdnu
            - value: '77'
              newvalue: lapd
            - value: '78'
              newvalue: ipSwitch
            - value: '79'
              newvalue: rsrb
            - value: '80'
              newvalue: atmLogical
            - value: '81'
              newvalue: ds0
            - value: '82'
              newvalue: ds0Bundle
            - value: '83'
              newvalue: bsc
            - value: '84'
              newvalue: async
            - value: '85'
              newvalue: cnr
            - value: '86'
              newvalue: iso88025Dtr
            - value: '87'
              newvalue: eplrs
            - value: '88'
              newvalue: arap
            - value: '89'
              newvalue: propCnls
            - value: '90'
              newvalue: hostPad
            - value: '91'
              newvalue: termPad
            - value: '92'
              newvalue: frameRelayMPI
            - value: '93'
              newvalue: x213
            - value: '94'
              newvalue: adsl
            - value: '95'
              newvalue: radsl
            - value: '96'
              newvalue: sdsl
            - value: '97'
              newvalue: vdsl
            - value: '98'
              newvalue: iso88025CRFPInt
            - value: '99'
              newvalue: myrinet
            - value: '100'
              newvalue: voiceEM
            - value: '101'
              newvalue: voiceFXO
            - value: '102'
              newvalue: voiceFXS
            - value: '103'
              newvalue: voiceEncap
            - value: '104'
              newvalue: voiceOverIp
            - value: '105'
              newvalue: atmDxi
            - value: '106'
              newvalue: atmFuni
            - value: '107'
              newvalue: atmIma
            - value: '108'
              newvalue: pppMultilinkBundle
            - value: '109'
              newvalue: ipOverCdlc
            - value: '110'
              newvalue: ipOverClaw
            - value: '111'
              newvalue: stackToStack
            - value: '112'
              newvalue: virtualIpAddress
            - value: '113'
              newvalue: mpc
            - value: '114'
              newvalue: ipOverAtm
            - value: '115'
              newvalue: iso88025Fiber
            - value: '116'
              newvalue: tdlc
            - value: '117'
              newvalue: gigabitEthernet
            - value: '118'
              newvalue: hdlc
            - value: '119'
              newvalue: lapf
            - value: '120'
              newvalue: v37
            - value: '121'
              newvalue: x25mlp
            - value: '122'
              newvalue: x25huntGroup
            - value: '123'
              newvalue: trasnpHdlc
            - value: '124'
              newvalue: interleave
            - value: '125'
              newvalue: fast
            - value: '126'
              newvalue: ip
            - value: '127'
              newvalue: docsCableMaclayer
            - value: '128'
              newvalue: docsCableDownstream
            - value: '129'
              newvalue: docsCableUpstream
            - value: '130'
              newvalue: a12MppSwitch
            - value: '131'
              newvalue: tunnel
            - value: '132'
              newvalue: coffee
            - value: '133'
              newvalue: ces
            - value: '134'
              newvalue: atmSubInterface
            - value: '135'
              newvalue: l2vlan
            - value: '136'
              newvalue: l3ipvlan
            - value: '137'
              newvalue: l3ipxvlan
            - value: '138'
              newvalue: digitalPowerline
            - value: '139'
              newvalue: mediaMailOverIp
            - value: '140'
              newvalue: dtm
            - value: '141'
              newvalue: dcn
            - value: '142'
              newvalue: ipForward
            - value: '143'
              newvalue: msdsl
            - value: '144'
              newvalue: ieee1394
            - value: '145'
              newvalue: if-gsn
            - value: '146'
              newvalue: dvbRccMacLayer
            - value: '147'
              newvalue: dvbRccDownstream
            - value: '148'
              newvalue: dvbRccUpstream
            - value: '149'
              newvalue: atmVirtual
            - value: '150'
              newvalue: mplsTunnel
            - value: '151'
              newvalue: srp
            - value: '152'
              newvalue: voiceOverAtm
            - value: '153'
              newvalue: voiceOverFrameRelay
            - value: '154'
              newvalue: idsl
            - value: '155'
              newvalue: compositeLink
            - value: '156'
              newvalue: ss7SigLink
            - value: '157'
              newvalue: propWirelessP2P
            - value: '158'
              newvalue: frForward
            - value: '159'
              newvalue: rfc1483
            - value: '160'
              newvalue: usb
            - value: '161'
              newvalue: ieee8023adLag
            - value: '162'
              newvalue: bgppolicyaccounting
            - value: '163'
              newvalue: frf16MfrBundle
            - value: '164'
              newvalue: h323Gatekeeper
            - value: '165'
              newvalue: h323Proxy
            - value: '166'
              newvalue: mpls
            - value: '167'
              newvalue: mfSigLink
            - value: '168'
              newvalue: hdsl2
            - value: '169'
              newvalue: shdsl
            - value: '170'
              newvalue: ds1FDL
            - value: '171'
              newvalue: pos
            - value: '172'
              newvalue: dvbAsiIn
            - value: '173'
              newvalue: dvbAsiOut
            - value: '174'
              newvalue: plc
            - value: '175'
              newvalue: nfas
            - value: '176'
              newvalue: tr008
            - value: '177'
              newvalue: gr303RDT
            - value: '178'
              newvalue: gr303IDT
            - value: '179'
              newvalue: isup
            - value: '180'
              newvalue: propDocsWirelessMaclayer
            - value: '181'
              newvalue: propDocsWirelessDownstream
            - value: '182'
              newvalue: propDocsWirelessUpstream
            - value: '183'
              newvalue: hiperlan2
            - value: '184'
              newvalue: propBWAp2Mp
            - value: '185'
              newvalue: sonetOverheadChannel
            - value: '186'
              newvalue: digitalWrapperOverheadChannel
            - value: '187'
              newvalue: aal2
            - value: '188'
              newvalue: radioMAC
            - value: '189'
              newvalue: atmRadio
            - value: '190'
              newvalue: imt
            - value: '191'
              newvalue: mvl
            - value: '192'
              newvalue: reachDSL
            - value: '193'
              newvalue: frDlciEndPt
            - value: '194'
              newvalue: atmVciEndPt
            - value: '195'
              newvalue: opticalChannel
            - value: '196'
              newvalue: opticalTransport
            - value: '197'
              newvalue: propAtm
            - value: '198'
              newvalue: voiceOverCable
            - value: '199'
              newvalue: infiniband
            - value: '200'
              newvalue: teLink
            - value: '201'
              newvalue: q2931
            - value: '202'
              newvalue: virtualTg
            - value: '203'
              newvalue: sipTg
            - value: '204'
              newvalue: sipSig
            - value: '205'
              newvalue: docsCableUpstreamChannel
            - value: '206'
              newvalue: econet
            - value: '207'
              newvalue: pon155
            - value: '208'
              newvalue: pon622
            - value: '209'
              newvalue: bridge
            - value: '210'
              newvalue: linegroup
            - value: '211'
              newvalue: voiceEMFGD
            - value: '212'
              newvalue: voiceFGDEANA
            - value: '213'
              newvalue: voiceDID
            - value: '214'
              newvalue: mpegTransport
            - value: '215'
              newvalue: sixToFour
            - value: '216'
              newvalue: gtp
            - value: '217'
              newvalue: pdnEtherLoop1
            - value: '218'
              newvalue: pdnEtherLoop2
            - value: '219'
              newvalue: opticalChannelGroup
            - value: '220'
              newvalue: homepna
            - value: '221'
              newvalue: gfp
            - value: '222'
              newvalue: ciscoISLvlan
            - value: '223'
              newvalue: actelisMetaLOOP
            - value: '224'
              newvalue: fcipLink
            - value: '225'
              newvalue: rpr
            - value: '226'
              newvalue: qam
            - value: '227'
              newvalue: lmp
            - value: '228'
              newvalue: cblVectaStar
            - value: '229'
              newvalue: docsCableMCmtsDownstream
            - value: '230'
              newvalue: adsl2
            - value: '231'
              newvalue: macSecControlledIF
            - value: '232'
              newvalue: macSecUncontrolledIF
            - value: '233'
              newvalue: aviciOpticalEther
            - value: '234'
              newvalue: atmbond
            - value: '235'
              newvalue: voiceFGDOS
            - value: '236'
              newvalue: mocaVersion1
            - value: '237'
              newvalue: ieee80216WMAN
            - value: '238'
              newvalue: adsl2plus
            - value: '239'
              newvalue: dvbRcsMacLayer
            - value: '240'
              newvalue: dvbTdm
            - value: '241'
              newvalue: dvbRcsTdma
            - value: '242'
              newvalue: x86Laps
            - value: '243'
              newvalue: wwanPP
            - value: '244'
              newvalue: wwanPP2
            - value: '245'
              newvalue: voiceEBS
            - value: '246'
              newvalue: ifPwType
            - value: '247'
              newvalue: ilan
            - value: '248'
              newvalue: pip
            - value: '249'
              newvalue: aluELP
            - value: '250'
              newvalue: gpon
            - value: '251'
              newvalue: vdsl2
            - value: '252'
              newvalue: capwapDot11Profile
            - value: '253'
              newvalue: capwapDot11Bss
            - value: '254'
              newvalue: capwapWtpVirtualRadio
            - value: '255'
              newvalue: bits
            - value: '256'
              newvalue: docsCableUpstreamRfPort
            - value: '257'
              newvalue: cableDownstreamRfPort
            - value: '258'
              newvalue: vmwareVirtualNic
            - value: '259'
              newvalue: ieee802154
            - value: '260'
              newvalue: otnOdu
            - value: '261'
              newvalue: otnOtu
            - value: '262'
              newvalue: ifVfiType
            - value: '263'
              newvalue: g9981
            - value: '264'
              newvalue: g9982
            - value: '265'
              newvalue: g9983
            - value: '266'
              newvalue: aluEpon
            - value: '267'
              newvalue: aluEponOnu
            - value: '268'
              newvalue: aluEponPhysicalUni
            - value: '269'
              newvalue: aluEponLogicalLink
            - value: '270'
              newvalue: aluGponOnu
            - value: '271'
              newvalue: aluGponPhysicalUni
            - value: '272'
              newvalue: vmwareNicTeam
            - value: '277'
              newvalue: docsOfdmDownstream
            - value: '278'
              newvalue: docsOfdmaUpstream
            - value: '279'
              newvalue: gfast
            - value: '280'
              newvalue: sdci
            - value: '281'
              newvalue: xboxWireless
            - value: '282'
              newvalue: fastdsl
            - value: '283'
              newvalue: docsCableScte55d1FwdOob
            - value: '284'
              newvalue: docsCableScte55d1RetOob
            - value: '285'
              newvalue: docsCableScte55d2DsOob
            - value: '286'
              newvalue: docsCableScte55d2UsOob
            - value: '287'
              newvalue: docsCableNdf
            - value: '288'
              newvalue: docsCableNdr
            - value: '289'
              newvalue: ptm
            - value: '290'
              newvalue: ghn
        - uuid: 64128e7f2adf44988b0ca3edd76cba61
          name: 'JUNIPER-ALARM-MIB::jnxOperatingState'
          mappings:
            - value: '1'
              newvalue: unknown
            - value: '2'
              newvalue: running
            - value: '3'
              newvalue: ready
            - value: '4'
              newvalue: reset
            - value: '5'
              newvalue: runningAtFullSpeed
            - value: '6'
              newvalue: 'down or off'
            - value: '7'
              newvalue: standby
        - uuid: 3aaa451c55cd4e72ab84b65dd8310564
          name: 'JUNIPER-ALARM-MIB::jnxRedAlarmState'
          mappings:
            - value: '1'
              newvalue: other
            - value: '2'
              newvalue: 'off'
            - value: '3'
              newvalue: 'on - RedAlarm'
        - uuid: e3bf54eef520492a94ad3d7bd7c3dede
          name: 'Service state'
          mappings:
            - value: '0'
              newvalue: Down
            - value: '1'
              newvalue: Up
        - uuid: 022ceae4990140a59b2ceca83a826dd5
          name: zabbix.host.available
          mappings:
            - value: '0'
              newvalue: 'not available'
            - value: '1'
              newvalue: available
            - value: '2'
              newvalue: unknown
    - uuid: 5920713da492452889adabc25e259caa
      template: 'Netgear Fastpath by SNMP'
      name: 'Netgear Fastpath by SNMP'
      description: |
        Template Net Netgear Fastpath
        
        MIBs used:
        HOST-RESOURCES-MIB
        SNMPv2-MIB
        FASTPATH-SWITCHING-MIB
        FASTPATH-BOXSERVICES-PRIVATE-MIB
        IF-MIB
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Overview
        
        https://kb.netgear.com/24352/MIBs-for-Smart-switches
      vendor:
        name: Zabbix
        version: 8.0-2
      groups:
        - name: 'Templates/Network devices'
      items:
        - uuid: a3d05c4b2b2e40ba8cd29255012f5582
          name: 'ICMP ping'
          type: SIMPLE
          key: icmpping
          description: |
            The host accessibility by ICMP ping.
            
            0 - ICMP ping fails;
            1 - ICMP ping successful.
          valuemap:
            name: 'Service state'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 424d07aafe9f4e8c8f647db6a43363d0
              expression: 'max(/Netgear Fastpath by SNMP/icmpping,#3)=0'
              name: 'Netgear Fastpath: Unavailable by ICMP ping'
              priority: HIGH
              description: 'Last three attempts returned timeout. Please check device connectivity.'
              tags:
                - tag: scope
                  value: availability
        - uuid: 4c2b7fe079ba45f6b150d9aeda4b8ab1
          name: 'ICMP loss'
          type: SIMPLE
          key: icmppingloss
          value_type: FLOAT
          units: '%'
          description: 'The percentage of lost packets.'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 9d2efd0614ba4e16b3479ed515d3a9a2
              expression: 'min(/Netgear Fastpath by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Netgear Fastpath by SNMP/icmppingloss,5m)<100'
              name: 'Netgear Fastpath: High ICMP ping loss'
              opdata: 'Loss: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'ICMP packets loss detected.'
              dependencies:
                - name: 'Netgear Fastpath: Unavailable by ICMP ping'
                  expression: 'max(/Netgear Fastpath by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: f6d11b8498e04df9bcf392aee2aacde3
          name: 'ICMP response time'
          type: SIMPLE
          key: icmppingsec
          value_type: FLOAT
          units: s
          description: 'The ICMP ping response time (in seconds).'
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: 99888c77fc084d43b742a1f156d87832
              expression: 'avg(/Netgear Fastpath by SNMP/icmppingsec,5m)>{$ICMP_RESPONSE_TIME_WARN}'
              name: 'Netgear Fastpath: High ICMP ping response time'
              opdata: 'Value: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'Average ICMP response time is too high.'
              dependencies:
                - name: 'Netgear Fastpath: High ICMP ping loss'
                  expression: 'min(/Netgear Fastpath by SNMP/icmppingloss,5m)>{$ICMP_LOSS_WARN} and min(/Netgear Fastpath by SNMP/icmppingloss,5m)<100'
                - name: 'Netgear Fastpath: Unavailable by ICMP ping'
                  expression: 'max(/Netgear Fastpath by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
        - uuid: 6f2e3553d7874f81b184b1b25a3d9ac6
          name: 'SNMP traps (fallback)'
          type: SNMP_TRAP
          key: snmptrap.fallback
          value_type: LOG
          description: 'The item is used to collect all SNMP traps unmatched by other snmptrap items'
          logtimefmt: 'hh:mm:sszyyyy/MM/dd'
          tags:
            - tag: component
              value: network
        - uuid: 44a19d5435e8476dafa2e52b481b9c75
          name: 'System contact details'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.4.0]'
          key: 'system.contact[sysContact.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The textual identification of the contact person for this managed node, together with information on how to contact this person. If no contact information is known, the value is the zero-length string.
          inventory_link: CONTACT
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: e8ffc912f0ee47cca513861fcecfddb0
          name: 'CPU utilization'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.4526.10.1.1.4.9.0]'
          key: 'system.cpu.util[agentSwitchCpuProcessTotalUtilization.0]'
          value_type: FLOAT
          units: '%'
          description: |
            MIB: FASTPATH-SWITCHING-MIB
            The CPU utilization expressed in %.
          preprocessing:
            - type: REGEX
              parameters:
                - '60 Secs \( ([0-9\.]+)%\).+300 Secs'
                - \1
          tags:
            - tag: component
              value: cpu
          triggers:
            - uuid: 1e47f984c5514205aad2be5db1157fd2
              expression: 'min(/Netgear Fastpath by SNMP/system.cpu.util[agentSwitchCpuProcessTotalUtilization.0],5m)>{$CPU.UTIL.CRIT}'
              name: 'Netgear Fastpath: High CPU utilization'
              event_name: 'Netgear Fastpath: High CPU utilization (over {$CPU.UTIL.CRIT}% for 5m)'
              opdata: 'Current utilization: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'The CPU utilization is too high. The system might be slow to respond.'
              tags:
                - tag: scope
                  value: performance
        - uuid: 59c81fd37e334a0ba60b1256d3730624
          name: 'System description'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.1.0]'
          key: 'system.descr[sysDescr.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            A textual description of the entity. This value should
            include the full name and version identification of the system's hardware type, software operating-system, and
            networking software.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 2470e113b1174c70a1265bf4c4252b5f
          name: 'Hardware model name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.4526.10.1.1.1.3.0]'
          key: system.hw.model
          delay: 1h
          value_type: CHAR
          description: 'MIB: FASTPATH-SWITCHING-MIB'
          inventory_link: MODEL
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
        - uuid: 697f863cf86544d4a366e8827976ed50
          name: 'Hardware serial number'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.4526.10.1.1.1.4.0]'
          key: system.hw.serialnumber
          delay: 1h
          value_type: CHAR
          description: |
            MIB: FASTPATH-SWITCHING-MIB
            Serial number of the switch
          inventory_link: SERIALNO_A
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: eba057a7ef5743ecb2c037476c97fc38
              expression: 'last(/Netgear Fastpath by SNMP/system.hw.serialnumber,#1)<>last(/Netgear Fastpath by SNMP/system.hw.serialnumber,#2) and length(last(/Netgear Fastpath by SNMP/system.hw.serialnumber))>0'
              name: 'Netgear Fastpath: Device has been replaced'
              event_name: 'Netgear Fastpath: Device has been replaced (new serial number received)'
              priority: INFO
              description: 'Device serial number has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
        - uuid: d0e66c64c0b2449a9c5ffbbdaf176963
          name: 'Uptime (hardware)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.25.1.1.0]'
          key: 'system.hw.uptime[hrSystemUptime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: HOST-RESOURCES-MIB
            The amount of time since this host was last initialized. Note that this is different from sysUpTime in the SNMPv2-MIB [RFC1907] because sysUpTime is the uptime of the network management portion of the system.
          preprocessing:
            - type: CHECK_NOT_SUPPORTED
              parameters:
                - '-1'
              error_handler: CUSTOM_VALUE
              error_handler_params: '0'
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: eeeceba5d9dd43de856ada8b5460f3d5
          name: 'System location'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.6.0]'
          key: 'system.location[sysLocation.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            Physical location of the node (e.g., `equipment room`, `3rd floor`). If not provided, the value is a zero-length string.
          inventory_link: LOCATION
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 53b0dbb74854494eb834804a1f0afbe7
          name: 'System name'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.5.0]'
          key: system.name
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            An administratively-assigned name for this managed node.By convention, this is the node's fully-qualified domain name. If the name is unknown, the value is the zero-length string.
          inventory_link: NAME
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 61e82ab169374a51a1ebd876cc7813a8
              expression: 'last(/Netgear Fastpath by SNMP/system.name,#1)<>last(/Netgear Fastpath by SNMP/system.name,#2) and length(last(/Netgear Fastpath by SNMP/system.name))>0'
              name: 'Netgear Fastpath: System name has changed'
              event_name: 'Netgear Fastpath: System name has changed (new name: {ITEM.VALUE})'
              priority: INFO
              description: 'The name of the system has changed. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: notice
                - tag: scope
                  value: security
        - uuid: 6538a853fd47460585dbc2b4853ea65b
          name: 'Uptime (network)'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.3.0]'
          key: 'system.net.uptime[sysUpTime.0]'
          delay: 30s
          trends: '0'
          units: uptime
          description: |
            MIB: SNMPv2-MIB
            Time (in hundredths of a second) since the network management portion of the system was last re-initialized.
          preprocessing:
            - type: MULTIPLIER
              parameters:
                - '0.01'
          tags:
            - tag: component
              value: system
        - uuid: 8d5bfc785de5459c967659306d66b7e5
          name: 'System object ID'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.2.1.1.2.0]'
          key: 'system.objectid[sysObjectID.0]'
          delay: 15m
          value_type: CHAR
          description: |
            MIB: SNMPv2-MIB
            The vendor's authoritative identification of the network management subsystem contained in the entity. This value is allocated within the SMI enterprises subtree (1.3.6.1.4.1) and provides an easy and unambiguous means for determining`what kind of box' is being managed.  For example, if vendor`Flintstones, Inc.' was assigned the subtree1.3.6.1.4.1.4242, it could assign the identifier 1.3.6.1.4.1.4242.1.1 to its `Fred Router'.
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 12h
          tags:
            - tag: component
              value: system
        - uuid: 5bd8c956163d4201a7e896abde28044b
          name: 'Operating system'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.4526.10.1.1.1.10.0]'
          key: 'system.sw.os[agentInventoryOperatingSystem.0]'
          delay: 1h
          value_type: CHAR
          description: |
            MIB: FASTPATH-SWITCHING-MIB
            Operating System running on this unit
          inventory_link: OS
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: os
          triggers:
            - uuid: bf0a6ff122a14f4c9baa640d27c8f982
              expression: 'last(/Netgear Fastpath by SNMP/system.sw.os[agentInventoryOperatingSystem.0],#1)<>last(/Netgear Fastpath by SNMP/system.sw.os[agentInventoryOperatingSystem.0],#2) and length(last(/Netgear Fastpath by SNMP/system.sw.os[agentInventoryOperatingSystem.0]))>0'
              name: 'Netgear Fastpath: Operating system description has changed'
              priority: INFO
              description: 'The description of the operating system has changed. Possible reasons are that the system has been updated or replaced. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              dependencies:
                - name: 'Netgear Fastpath: System name has changed'
                  expression: 'last(/Netgear Fastpath by SNMP/system.name,#1)<>last(/Netgear Fastpath by SNMP/system.name,#2) and length(last(/Netgear Fastpath by SNMP/system.name))>0'
              tags:
                - tag: scope
                  value: notice
        - uuid: f94ffd4d6eb84ae88cdf5033df65f249
          name: 'Available memory'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.4526.10.1.1.5.1.0]'
          key: 'vm.memory.available[agentSwitchCpuProcessMemFree.0]'
          units: B
          description: |
            MIB: FASTPATH-SWITCHING-MIB
            The total memory freed for utilization.
          tags:
            - tag: component
              value: memory
        - uuid: 98037eeab349478c8c393b163ec5193e
          name: 'Total memory'
          type: SNMP_AGENT
          snmp_oid: 'get[1.3.6.1.4.1.4526.10.1.1.5.2.0]'
          key: 'vm.memory.total[agentSwitchCpuProcessMemAvailable.0]'
          units: B
          description: |
            MIB: FASTPATH-SWITCHING-MIB
            The total Memory allocated for the tasks
          tags:
            - tag: component
              value: memory
        - uuid: 86ef153d78b5466cac76a32f81d8b958
          name: 'Memory utilization'
          type: CALCULATED
          key: 'vm.memory.util[memoryUsedPercentage.0]'
          value_type: FLOAT
          units: '%'
          params: '(last(//vm.memory.total[agentSwitchCpuProcessMemAvailable.0])-last(//vm.memory.available[agentSwitchCpuProcessMemFree.0]))/last(//vm.memory.total[agentSwitchCpuProcessMemAvailable.0])*100'
          description: 'Memory utilization in %.'
          tags:
            - tag: component
              value: memory
          triggers:
            - uuid: 21c1a017dcc14148a9020207a6fd7488
              expression: 'min(/Netgear Fastpath by SNMP/vm.memory.util[memoryUsedPercentage.0],5m)>{$MEMORY.UTIL.MAX}'
              name: 'Netgear Fastpath: High memory utilization'
              event_name: 'Netgear Fastpath: High memory utilization (>{$MEMORY.UTIL.MAX}% for 5m)'
              priority: AVERAGE
              description: 'The system is running out of free memory.'
              tags:
                - tag: scope
                  value: capacity
                - tag: scope
                  value: performance
        - uuid: 755ae00add264d2ba735b45f7dc5ca23
          name: 'SNMP agent availability'
          type: INTERNAL
          key: 'zabbix[host,snmp,available]'
          description: |
            Availability of SNMP checks on the host. The value of this item corresponds to availability icons in the host list.
            Possible values:
            0 - not available
            1 - available
            2 - unknown
          valuemap:
            name: zabbix.host.available
          tags:
            - tag: component
              value: health
            - tag: component
              value: network
          triggers:
            - uuid: cc91cb171901433bbb35752127e54ad0
              expression: 'max(/Netgear Fastpath by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
              name: 'Netgear Fastpath: No SNMP data collection'
              opdata: 'Current state: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'SNMP is not available for polling. Please check device connectivity and SNMP settings.'
              dependencies:
                - name: 'Netgear Fastpath: Unavailable by ICMP ping'
                  expression: 'max(/Netgear Fastpath by SNMP/icmpping,#3)=0'
              tags:
                - tag: scope
                  value: availability
      discovery_rules:
        - uuid: 8fb96a540bab4deba00626237797cb62
          name: 'FAN Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.4526.10.43.1.6.1.1]'
          key: fan.discovery
          delay: 1h
          description: 'FASTPATH-BOXSERVICES-PRIVATE-MIB::1.3.6.1.4.1.4526.10.43.1.6.1.1'
          item_prototypes:
            - uuid: 9f515526de2c47108182b444d1d093c3
              name: '#{#SNMPVALUE}: Fan status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.4526.10.43.1.6.1.3.{#SNMPINDEX}]'
              key: 'sensor.fan.status[boxServicesFanItemState.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB
                The status of fan
              valuemap:
                name: 'FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesFanItemState'
              tags:
                - tag: component
                  value: fan
              trigger_prototypes:
                - uuid: ce48c2b0a07d4528b95668c853b6b4e0
                  expression: 'count(/Netgear Fastpath by SNMP/sensor.fan.status[boxServicesFanItemState.{#SNMPINDEX}],#1,"eq","{$FAN_CRIT_STATUS:\"failed\"}")=1'
                  name: 'Netgear Fastpath: #{#SNMPVALUE}: Fan is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the fan unit'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
        - uuid: d37bcb60aa354c55b363e33c5ec3af9d
          name: 'Network interfaces discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#IFOPERSTATUS},1.3.6.1.2.1.2.2.1.8,{#IFADMINSTATUS},1.3.6.1.2.1.2.2.1.7,{#IFALIAS},1.3.6.1.2.1.31.1.1.1.18,{#IFNAME},1.3.6.1.2.1.31.1.1.1.1,{#IFDESCR},1.3.6.1.2.1.2.2.1.2,{#IFTYPE},1.3.6.1.2.1.2.2.1.3]'
          key: net.if.discovery
          delay: 1h
          filter:
            evaltype: AND
            conditions:
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.MATCHES}'
              - macro: '{#IFADMINSTATUS}'
                value: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.MATCHES}'
              - macro: '{#IFALIAS}'
                value: '{$NET.IF.IFALIAS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.MATCHES}'
              - macro: '{#IFDESCR}'
                value: '{$NET.IF.IFDESCR.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.MATCHES}'
              - macro: '{#IFNAME}'
                value: '{$NET.IF.IFNAME.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.MATCHES}'
              - macro: '{#IFOPERSTATUS}'
                value: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.MATCHES}'
              - macro: '{#IFTYPE}'
                value: '{$NET.IF.IFTYPE.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovering interfaces from IF-MIB.'
          item_prototypes:
            - uuid: 832ec51626724ebdb03b8d6134b6f786
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.13.{#SNMPINDEX}]'
              key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of inbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 50f169f55fb949aebf4233b702f2edb9
              name: 'Interface {#IFNAME}({#IFALIAS}): Inbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.14.{#SNMPINDEX}]'
              key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of inbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of inbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 055c64e171144b119b2e0b2c427e1c77
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits received'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.6.{#SNMPINDEX}]'
              key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets received on the interface, including framing characters. This object is a 64-bit version of ifInOctets. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 036b6e8533044a0a8c5101f0dbc38c2f
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets discarded'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.19.{#SNMPINDEX}]'
              key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                The number of outbound packets which were chosen to be discarded
                even though no errors had been detected to prevent their being deliverable to a higher-layer protocol.
                One possible reason for discarding such a packet could be to free up buffer space.
                Discontinuities in the value of this counter can occur at re-initialization of the management system,
                and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 6ec1a97308a74aea8b68a1854d6692eb
              name: 'Interface {#IFNAME}({#IFALIAS}): Outbound packets with errors'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.20.{#SNMPINDEX}]'
              key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
              delay: 3m
              description: |
                MIB: IF-MIB
                For packet-oriented interfaces, the number of outbound packets that contained errors preventing them from being deliverable to a higher-layer protocol.  For character-oriented or fixed-length interfaces, the number of outbound transmission units that contained errors preventing them from being deliverable to a higher-layer protocol. Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 36d9193337164198a0fcb76bc3d9adcf
              name: 'Interface {#IFNAME}({#IFALIAS}): Bits sent'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.10.{#SNMPINDEX}]'
              key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
              delay: 3m
              units: bps
              description: |
                MIB: IF-MIB
                The total number of octets transmitted out of the interface, including framing characters. This object is a 64-bit version of ifOutOctets.Discontinuities in the value of this counter can occur at re-initialization of the management system, and at other times as indicated by the value of ifCounterDiscontinuityTime.
              preprocessing:
                - type: CHANGE_PER_SECOND
                - type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: f5f25ce6e6604f0b9b2d685d664c7469
              name: 'Interface {#IFNAME}({#IFALIAS}): Speed'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.31.1.1.1.15.{#SNMPINDEX}]'
              key: 'net.if.speed[ifHighSpeed.{#SNMPINDEX}]'
              delay: 5m
              trends: '0'
              units: bps
              description: |
                MIB: IF-MIB
                An estimate of the interface's current bandwidth in units of 1,000,000 bits per second. If this object reports a value of `n' then the speed of the interface is somewhere in the range of `n-500,000' to`n+499,999'.  For interfaces which do not vary in bandwidth or for those where no accurate estimation can be made, this object should contain the nominal bandwidth. For a sub-layer which has no concept of bandwidth, this object should be zero.
              preprocessing:
                - type: MULTIPLIER
                  parameters:
                    - '1000000'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
            - uuid: 96d56a8cb6024d5d9841b7ac817e5aab
              name: 'Interface {#IFNAME}({#IFALIAS}): Operational status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.8.{#SNMPINDEX}]'
              key: 'net.if.status[ifOperStatus.{#SNMPINDEX}]'
              trends: '0'
              description: |
                MIB: IF-MIB
                The current operational state of the interface.
                - The testing(3) state indicates that no operational packet scan be passed
                - If ifAdminStatus is down(2) then ifOperStatus should be down(2)
                - If ifAdminStatus is changed to up(1) then ifOperStatus should change to up(1) if the interface is ready to transmit and receive network traffic
                - It should change todormant(5) if the interface is waiting for external actions (such as a serial line waiting for an incoming connection)
                - It should remain in the down(2) state if and only if there is a fault that prevents it from going to the up(1) state
                - It should remain in the notPresent(6) state if the interface has missing(typically, hardware) components.
              valuemap:
                name: 'IF-MIB::ifOperStatus'
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
              trigger_prototypes:
                - uuid: 8e06e74957de4467bb127e6f16cdd84c
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
                  name: 'Netgear Fastpath: Interface {#IFNAME}({#IFALIAS}): Link down'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: |
                    This trigger expression works as follows:
                    1. It can be triggered if the operations status is down.
                    2. `{$IFCONTROL:"{#IFNAME}"}=1` - a user can redefine the context macro to "0", marking this interface as not important. No new trigger will be fired if this interface is down.
                    3. `{TEMPLATE_NAME:METRIC.diff()}=1` - the trigger fires only if the operational status was up to (1) sometime before (so, does not fire for "eternal off" interfaces.)
                    
                    WARNING: if closed manually - it will not fire again on the next poll, because of .diff.
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 2baed21110ca4e50af898442668bdd8b
              name: 'Interface {#IFNAME}({#IFALIAS}): Interface type'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.2.1.2.2.1.3.{#SNMPINDEX}]'
              key: 'net.if.type[ifType.{#SNMPINDEX}]'
              delay: 1h
              trends: '0'
              description: |
                MIB: IF-MIB
                The type of interface.
                Additional values for ifType are assigned by the Internet Assigned Numbers Authority (IANA),
                through updating the syntax of the IANAifType textual convention.
              valuemap:
                name: 'IF-MIB::ifType'
              preprocessing:
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1d
              tags:
                - tag: component
                  value: network
                - tag: description
                  value: '{#IFALIAS}'
                - tag: interface
                  value: '{#IFNAME}'
          trigger_prototypes:
            - uuid: 443260352dec4467b6eafdd4c6a8ba9c
              expression: |
                change(/Netgear Fastpath by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])<0 and last(/Netgear Fastpath by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
                and (
                last(/Netgear Fastpath by SNMP/net.if.type[ifType.{#SNMPINDEX}])=6 or
                last(/Netgear Fastpath by SNMP/net.if.type[ifType.{#SNMPINDEX}])=7 or
                last(/Netgear Fastpath by SNMP/net.if.type[ifType.{#SNMPINDEX}])=11 or
                last(/Netgear Fastpath by SNMP/net.if.type[ifType.{#SNMPINDEX}])=62 or
                last(/Netgear Fastpath by SNMP/net.if.type[ifType.{#SNMPINDEX}])=69 or
                last(/Netgear Fastpath by SNMP/net.if.type[ifType.{#SNMPINDEX}])=117
                )
                and
                (last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2)
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                (change(/Netgear Fastpath by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0 and last(/Netgear Fastpath by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}],#2)>0) or
                (last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2)
              name: 'Netgear Fastpath: Interface {#IFNAME}({#IFALIAS}): Ethernet has changed to lower speed than it was before'
              opdata: 'Current reported speed: {ITEM.LASTVALUE1}'
              priority: INFO
              description: 'This Ethernet connection has transitioned down from its known maximum speed. This might be a sign of autonegotiation issues. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              dependencies:
                - name: 'Netgear Fastpath: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: 8b33b079505846558c6ee4f0afb05c5d
              expression: |
                (avg(/Netgear Fastpath by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Netgear Fastpath by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) or
                avg(/Netgear Fastpath by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)>({$IF.UTIL.MAX:"{#IFNAME}"}/100)*last(/Netgear Fastpath by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])) and
                last(/Netgear Fastpath by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])>0
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                avg(/Netgear Fastpath by SNMP/net.if.in[ifHCInOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Netgear Fastpath by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}]) and
                avg(/Netgear Fastpath by SNMP/net.if.out[ifHCOutOctets.{#SNMPINDEX}],15m)<(({$IF.UTIL.MAX:"{#IFNAME}"}-3)/100)*last(/Netgear Fastpath by SNMP/net.if.speed[ifHighSpeed.{#SNMPINDEX}])
              name: 'Netgear Fastpath: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage'
              event_name: 'Netgear Fastpath: Interface {#IFNAME}({#IFALIAS}): High bandwidth usage (>{$IF.UTIL.MAX:"{#IFNAME}"}%)'
              opdata: 'In: {ITEM.LASTVALUE1}, out: {ITEM.LASTVALUE3}, speed: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'The utilization of the network interface is close to its estimated maximum bandwidth.'
              manual_close: 'YES'
              dependencies:
                - name: 'Netgear Fastpath: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: performance
            - uuid: bfc9aaa24f17487184a8b88d4bf310a5
              expression: |
                min(/Netgear Fastpath by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
                or min(/Netgear Fastpath by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)>{$IF.ERRORS.WARN:"{#IFNAME}"}
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: |
                max(/Netgear Fastpath by SNMP/net.if.in.errors[ifInErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
                and max(/Netgear Fastpath by SNMP/net.if.out.errors[ifOutErrors.{#SNMPINDEX}],5m)<{$IF.ERRORS.WARN:"{#IFNAME}"}*0.8
              name: 'Netgear Fastpath: Interface {#IFNAME}({#IFALIAS}): High error rate'
              event_name: 'Netgear Fastpath: Interface {#IFNAME}({#IFALIAS}): High error rate (>{$IF.ERRORS.WARN:"{#IFNAME}"} for 5m)'
              opdata: 'errors in: {ITEM.LASTVALUE1}, errors out: {ITEM.LASTVALUE2}'
              priority: WARNING
              description: 'It recovers when it is below 80% of the `{$IF.ERRORS.WARN:"{#IFNAME}"}` threshold.'
              manual_close: 'YES'
              dependencies:
                - name: 'Netgear Fastpath: Interface {#IFNAME}({#IFALIAS}): Link down'
                  expression: '{$IFCONTROL:"{#IFNAME}"}=1 and last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])=2 and (last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#1)<>last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}],#2))'
                  recovery_expression: 'last(/Netgear Fastpath by SNMP/net.if.status[ifOperStatus.{#SNMPINDEX}])<>2 or {$IFCONTROL:"{#IFNAME}"}=0'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
          graph_prototypes:
            - uuid: 7edcc1da1c1343a094028153e8f74fdb
              name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
              graph_items:
                - drawtype: GRADIENT_LINE
                  color: 199C0D
                  item:
                    host: 'Netgear Fastpath by SNMP'
                    key: 'net.if.in[ifHCInOctets.{#SNMPINDEX}]'
                - sortorder: '1'
                  drawtype: BOLD_LINE
                  color: F63100
                  item:
                    host: 'Netgear Fastpath by SNMP'
                    key: 'net.if.out[ifHCOutOctets.{#SNMPINDEX}]'
                - sortorder: '2'
                  color: 00611C
                  yaxisside: RIGHT
                  item:
                    host: 'Netgear Fastpath by SNMP'
                    key: 'net.if.out.errors[ifOutErrors.{#SNMPINDEX}]'
                - sortorder: '3'
                  color: F7941D
                  yaxisside: RIGHT
                  item:
                    host: 'Netgear Fastpath by SNMP'
                    key: 'net.if.in.errors[ifInErrors.{#SNMPINDEX}]'
                - sortorder: '4'
                  color: FC6EA3
                  yaxisside: RIGHT
                  item:
                    host: 'Netgear Fastpath by SNMP'
                    key: 'net.if.out.discards[ifOutDiscards.{#SNMPINDEX}]'
                - sortorder: '5'
                  color: 6C59DC
                  yaxisside: RIGHT
                  item:
                    host: 'Netgear Fastpath by SNMP'
                    key: 'net.if.in.discards[ifInDiscards.{#SNMPINDEX}]'
        - uuid: 251d90e9c6ae4dad92328b677f6d6edf
          name: 'PSU Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.4526.10.43.1.7.1.1]'
          key: psu.discovery
          delay: 1h
          description: 'FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesPowSupplyIndex'
          item_prototypes:
            - uuid: aa5a704044b44909b2a348184ec71bc0
              name: '#{#SNMPVALUE}: Power supply status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.4526.10.43.1.7.1.3.{#SNMPINDEX}]'
              key: 'sensor.psu.status[boxServicesPowSupplyItemState.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB
                The status of power supply
              valuemap:
                name: 'FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesPowSupplyItemState'
              tags:
                - tag: component
                  value: power
              trigger_prototypes:
                - uuid: 78d4bcad8d7d4694ad492b37003fa0b0
                  expression: 'count(/Netgear Fastpath by SNMP/sensor.psu.status[boxServicesPowSupplyItemState.{#SNMPINDEX}],#1,"eq","{$PSU_CRIT_STATUS:\"failed\"}")=1'
                  name: 'Netgear Fastpath: #{#SNMPVALUE}: Power supply is in critical state'
                  opdata: 'Current state: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  description: 'Please check the power supply unit for errors'
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
        - uuid: c63b577cb8544b54a40a4d86bc926ada
          name: 'Temperature Discovery'
          type: SNMP_AGENT
          snmp_oid: 'discovery[{#SNMPVALUE},1.3.6.1.4.1.4526.10.43.1.8.1.1]'
          key: temp.discovery
          delay: 1h
          description: 'FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesTempSensorsTable'
          item_prototypes:
            - uuid: ac4a292ab2e548fea3326aaa92162140
              name: '#{#SNMPVALUE}: Temperature status'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.4526.10.43.1.8.1.3.{#SNMPINDEX}]'
              key: 'sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}]'
              delay: 3m
              trends: '0'
              description: |
                MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB
                The state of temperature sensor
              valuemap:
                name: 'FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesTempSensorState'
              tags:
                - tag: component
                  value: temperature
            - uuid: 488762ecfb1549d294886681a6ec34f6
              name: '#{#SNMPVALUE}: Temperature'
              type: SNMP_AGENT
              snmp_oid: 'get[1.3.6.1.4.1.4526.10.43.1.8.1.5.{#SNMPINDEX}]'
              key: 'sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}]'
              delay: 3m
              value_type: FLOAT
              units: °C
              description: |
                MIB: FASTPATH-BOXSERVICES-PRIVATE-MIB
                The temperature value reported by sensor
              tags:
                - tag: component
                  value: temperature
              trigger_prototypes:
                - uuid: 222b4523c61144d1a91bb1b5cbd63caf
                  expression: 'avg(/Netgear Fastpath by SNMP/sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}],5m)<{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
                  recovery_mode: RECOVERY_EXPRESSION
                  recovery_expression: 'min(/Netgear Fastpath by SNMP/sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}],5m)>{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}+3'
                  name: 'Netgear Fastpath: #{#SNMPVALUE}: Temperature is too low'
                  event_name: 'Netgear Fastpath: #{#SNMPVALUE}: Temperature is too low: <{$TEMP_CRIT_LOW:"{#SNMPVALUE}"}'
                  opdata: 'Current value: {ITEM.LASTVALUE1}'
                  priority: AVERAGE
                  tags:
                    - tag: scope
                      value: availability
                    - tag: scope
                      value: performance
          trigger_prototypes:
            - uuid: bead54e2d2f34d45bafb41600e84ac2d
              expression: |
                avg(/Netgear Fastpath by SNMP/sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}
                or
                last(/Netgear Fastpath by SNMP/sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}])={$TEMP_CRIT_STATUS}
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: 'max(/Netgear Fastpath by SNMP/sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
              name: 'Netgear Fastpath: #{#SNMPVALUE}: Temperature is above critical threshold'
              event_name: 'Netgear Fastpath: #{#SNMPVALUE}: Temperature is above critical threshold: >{$TEMP_CRIT:"{#SNMPVALUE}"}'
              opdata: 'Current value: {ITEM.LASTVALUE1}'
              priority: HIGH
              description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
            - uuid: f3444dbde8344a1782449ec4260972d1
              expression: |
                avg(/Netgear Fastpath by SNMP/sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}],5m)>{$TEMP_WARN:"{#SNMPVALUE}"}
                or
                last(/Netgear Fastpath by SNMP/sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}])={$TEMP_WARN_STATUS}
              recovery_mode: RECOVERY_EXPRESSION
              recovery_expression: 'max(/Netgear Fastpath by SNMP/sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}],5m)<{$TEMP_WARN:"{#SNMPVALUE}"}-3'
              name: 'Netgear Fastpath: #{#SNMPVALUE}: Temperature is above warning threshold'
              event_name: 'Netgear Fastpath: #{#SNMPVALUE}: Temperature is above warning threshold: >{$TEMP_WARN:"{#SNMPVALUE}"}'
              opdata: 'Current value: {ITEM.LASTVALUE1}'
              priority: WARNING
              description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
              dependencies:
                - name: 'Netgear Fastpath: #{#SNMPVALUE}: Temperature is above critical threshold'
                  expression: |
                    avg(/Netgear Fastpath by SNMP/sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}],5m)>{$TEMP_CRIT:"{#SNMPVALUE}"}
                    or
                    last(/Netgear Fastpath by SNMP/sensor.temp.status[boxServicesTempSensorState.{#SNMPINDEX}])={$TEMP_CRIT_STATUS}
                  recovery_expression: 'max(/Netgear Fastpath by SNMP/sensor.temp.value[boxServicesTempSensorTemperature.{#SNMPINDEX}],5m)<{$TEMP_CRIT:"{#SNMPVALUE}"}-3'
              tags:
                - tag: scope
                  value: availability
                - tag: scope
                  value: performance
      tags:
        - tag: class
          value: network
        - tag: target
          value: fastpath
        - tag: target
          value: netgear
      macros:
        - macro: '{$CPU.UTIL.CRIT}'
          value: '90'
          config:
            type: TEXT
            priority: '1'
            section_name: Thresholds
            label: 'Threshold for CPU utilization (critical)'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$FAN_CRIT_STATUS:"failed"}'
          value: '2'
          config:
            type: TEXT
            priority: '8'
            section_name: Other
            label: 'Fan critical status (failed)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_LOSS_WARN}'
          value: '20'
          description: 'Warning threshold of ICMP packet loss in %.'
          config:
            type: TEXT
            priority: '11'
            section_name: Thresholds
            label: 'Threshold of ICMP packet loss'
            description: 'Warning threshold of ICMP packet loss in %. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$ICMP_RESPONSE_TIME_WARN}'
          value: '0.15'
          description: 'Warning threshold of the average ICMP response time in seconds.'
          config:
            type: TEXT
            priority: '12'
            section_name: Thresholds
            label: 'Threshold of the average ICMP response'
            description: 'Warning threshold of the average ICMP response time in seconds. No less than 0.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.ERRORS.WARN}'
          value: '2'
          description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
          config:
            type: TEXT
            priority: '13'
            section_name: Thresholds
            label: 'Threshold of error packet rate'
            description: 'Warning threshold of error packet rate. Can be used with interface name as context.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IF.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '14'
            section_name: Thresholds
            label: 'The threshold in the interface utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$IFCONTROL}'
          value: '1'
          config:
            type: TEXT
            priority: '15'
            section_name: Thresholds
            label: 'Interfaces control'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$MEMORY.UTIL.MAX}'
          value: '90'
          config:
            type: TEXT
            priority: '9'
            section_name: Thresholds
            label: 'Threshold for memory utilization'
            description: 'In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$NET.IF.IFADMINSTATUS.MATCHES}'
          value: '^.*'
          config:
            type: TEXT
            priority: '20'
            section_name: Filters
            label: 'Filter for network interface by adminstatus'
        - macro: '{$NET.IF.IFADMINSTATUS.NOT_MATCHES}'
          value: ^2$
          description: 'Ignore down(2) administrative status'
          config:
            type: TEXT
            priority: '21'
            section_name: Filters
            label: 'Filter for network interface by adminstatus (exclude)'
        - macro: '{$NET.IF.IFALIAS.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '24'
            section_name: Filters
            label: 'Filter for network interfaces by alias'
        - macro: '{$NET.IF.IFALIAS.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '25'
            section_name: Filters
            label: 'Filter for network interfaces by alias (exclude)'
        - macro: '{$NET.IF.IFDESCR.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '22'
            section_name: Filters
            label: 'Filter for network interfaces by description'
        - macro: '{$NET.IF.IFDESCR.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '23'
            section_name: Filters
            label: 'Filter for network interfaces by description (exclude)'
        - macro: '{$NET.IF.IFNAME.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '16'
            section_name: Filters
            label: 'Filter for network interface by name'
        - macro: '{$NET.IF.IFNAME.NOT_MATCHES}'
          value: '(^Software Loopback Interface|^NULL[0-9.]*$|^[Ll]o[0-9.]*$|^[Ss]ystem$|^Nu[0-9.]*$|^veth[0-9a-z]+$|docker[0-9]+|br-[a-z0-9]{12})'
          description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
          config:
            type: TEXT
            priority: '17'
            section_name: Filters
            label: 'Filter for network interface by name (exclude)'
            description: 'Filter out loopbacks, nulls, docker veth links and docker0 bridge by default'
        - macro: '{$NET.IF.IFOPERSTATUS.MATCHES}'
          value: '^.*$'
          config:
            type: TEXT
            priority: '18'
            section_name: Filters
            label: 'Filter for network interface by status'
        - macro: '{$NET.IF.IFOPERSTATUS.NOT_MATCHES}'
          value: ^6$
          description: 'Ignore notPresent(6)'
          config:
            type: TEXT
            priority: '19'
            section_name: Filters
            label: 'Filter for network interface by status (exclude)'
        - macro: '{$NET.IF.IFTYPE.MATCHES}'
          value: '.*'
          config:
            type: TEXT
            priority: '26'
            section_name: Filters
            label: 'Filter for network interfaces by type'
        - macro: '{$NET.IF.IFTYPE.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          config:
            type: TEXT
            priority: '27'
            section_name: Filters
            label: 'Filter for network interfaces by type (exclude)'
        - macro: '{$PSU_CRIT_STATUS:"failed"}'
          value: '2'
          config:
            type: TEXT
            priority: '7'
            section_name: Other
            label: 'PSU critical status (failed)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$SNMP.TIMEOUT}'
          value: 5m
          description: 'Time interval for the SNMP availability trigger.'
          config:
            type: TEXT
            priority: '10'
            section_name: Other
            label: 'Time interval'
            description: 'Time interval for the SNMP availability trigger.'
        - macro: '{$TEMP_CRIT}'
          value: '60'
          config:
            type: TEXT
            priority: '2'
            section_name: Thresholds
            label: 'Threshold for temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_CRIT_LOW}'
          value: '5'
          config:
            type: TEXT
            priority: '3'
            section_name: Thresholds
            label: 'Threshold for low temperature (critical)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_CRIT_STATUS}'
          value: '3'
          config:
            type: TEXT
            priority: '6'
            section_name: Other
            label: 'Temperature critical status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_WARN}'
          value: '50'
          config:
            type: TEXT
            priority: '4'
            section_name: Thresholds
            label: 'Threshold for temperature (warning)'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$TEMP_WARN_STATUS}'
          value: '2'
          config:
            type: TEXT
            priority: '5'
            section_name: Other
            label: 'Temperature warning status'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
      dashboards:
        - uuid: f554c8db428d4c05909ec48a0f014ef1
          name: 'Network interfaces'
          pages:
            - widgets:
                - type: graphprototype
                  width: '72'
                  height: '5'
                  fields:
                    - type: INTEGER
                      name: columns
                      value: '1'
                    - type: GRAPH_PROTOTYPE
                      name: graphid.0
                      value:
                        host: 'Netgear Fastpath by SNMP'
                        name: 'Interface {#IFNAME}({#IFALIAS}): Network traffic'
                    - type: STRING
                      name: reference
                      value: AAAAA
        - uuid: 5432e9ce427549e0911cde9da29a3f9f
          name: Overview
          pages:
            - name: Resources
              widgets:
                - type: graph
                  width: '72'
                  height: '5'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'Netgear Fastpath by SNMP'
                        name: 'Netgear Fastpath: CPU utilization'
                    - type: STRING
                      name: reference
                      value: AAAAB
                - type: graph
                  'y': '5'
                  width: '72'
                  height: '5'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'Netgear Fastpath by SNMP'
                        name: 'Netgear Fastpath: Memory utilization'
                    - type: STRING
                      name: reference
                      value: AAAAC
                - type: graph
                  'y': '10'
                  width: '72'
                  height: '5'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'Netgear Fastpath by SNMP'
                        name: 'Netgear Fastpath: Memory usage'
                    - type: STRING
                      name: reference
                      value: AAAAD
      valuemaps:
        - uuid: 3046d246b1064c749c1c9144442c0fac
          name: 'FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesFanItemState'
          mappings:
            - value: '1'
              newvalue: operational
            - value: '2'
              newvalue: failed
            - value: '3'
              newvalue: powering
            - value: '4'
              newvalue: notpowering
            - value: '5'
              newvalue: notpresent
        - uuid: d11e2b2f01c641728d1b7f764fa49f37
          name: 'FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesPowSupplyItemState'
          mappings:
            - value: '1'
              newvalue: operational
            - value: '2'
              newvalue: failed
            - value: '3'
              newvalue: powering
            - value: '4'
              newvalue: notpowering
            - value: '5'
              newvalue: notpresent
        - uuid: 4da55a4de7284012890e1fd5458f039a
          name: 'FASTPATH-BOXSERVICES-PRIVATE-MIB::boxServicesTempSensorState'
          mappings:
            - value: '1'
              newvalue: normal
            - value: '2'
              newvalue: warning
            - value: '3'
              newvalue: critical
            - value: '4'
              newvalue: shutdown
            - value: '5'
              newvalue: notpresent
            - value: '6'
              newvalue: notoperational
        - uuid: fecd5d9485284373bf7a2675c2b29698
          name: 'IF-MIB::ifOperStatus'
          mappings:
            - value: '1'
              newvalue: up
            - value: '2'
              newvalue: down
            - value: '4'
              newvalue: unknown
            - value: '5'
              newvalue: dormant
            - value: '6'
              newvalue: notPresent
            - value: '7'
              newvalue: lowerLayerDown
        - uuid: fc2630e4b471489e86b27cad74869009
          name: 'IF-MIB::ifType'
          mappings:
            - value: '1'
              newvalue: other
            - value: '2'
              newvalue: regular1822
            - value: '3'
              newvalue: hdh1822
            - value: '4'
              newvalue: ddnX25
            - value: '5'
              newvalue: rfc877x25
            - value: '6'
              newvalue: ethernetCsmacd
            - value: '7'
              newvalue: iso88023Csmacd
            - value: '8'
              newvalue: iso88024TokenBus
            - value: '9'
              newvalue: iso88025TokenRing
            - value: '10'
              newvalue: iso88026Man
            - value: '11'
              newvalue: starLan
            - value: '12'
              newvalue: proteon10Mbit
            - value: '13'
              newvalue: proteon80Mbit
            - value: '14'
              newvalue: hyperchannel
            - value: '15'
              newvalue: fddi
            - value: '16'
              newvalue: lapb
            - value: '17'
              newvalue: sdlc
            - value: '18'
              newvalue: ds1
            - value: '19'
              newvalue: e1
            - value: '20'
              newvalue: basicISDN
            - value: '21'
              newvalue: primaryISDN
            - value: '22'
              newvalue: propPointToPointSerial
            - value: '23'
              newvalue: ppp
            - value: '24'
              newvalue: softwareLoopback
            - value: '25'
              newvalue: eon
            - value: '26'
              newvalue: ethernet3Mbit
            - value: '27'
              newvalue: nsip
            - value: '28'
              newvalue: slip
            - value: '29'
              newvalue: ultra
            - value: '30'
              newvalue: ds3
            - value: '31'
              newvalue: sip
            - value: '32'
              newvalue: frameRelay
            - value: '33'
              newvalue: rs232
            - value: '34'
              newvalue: para
            - value: '35'
              newvalue: arcnet
            - value: '36'
              newvalue: arcnetPlus
            - value: '37'
              newvalue: atm
            - value: '38'
              newvalue: miox25
            - value: '39'
              newvalue: sonet
            - value: '40'
              newvalue: x25ple
            - value: '41'
              newvalue: iso88022llc
            - value: '42'
              newvalue: localTalk
            - value: '43'
              newvalue: smdsDxi
            - value: '44'
              newvalue: frameRelayService
            - value: '45'
              newvalue: v35
            - value: '46'
              newvalue: hssi
            - value: '47'
              newvalue: hippi
            - value: '48'
              newvalue: modem
            - value: '49'
              newvalue: aal5
            - value: '50'
              newvalue: sonetPath
            - value: '51'
              newvalue: sonetVT
            - value: '52'
              newvalue: smdsIcip
            - value: '53'
              newvalue: propVirtual
            - value: '54'
              newvalue: propMultiplexor
            - value: '55'
              newvalue: ieee80212
            - value: '56'
              newvalue: fibreChannel
            - value: '57'
              newvalue: hippiInterface
            - value: '58'
              newvalue: frameRelayInterconnect
            - value: '59'
              newvalue: aflane8023
            - value: '60'
              newvalue: aflane8025
            - value: '61'
              newvalue: cctEmul
            - value: '62'
              newvalue: fastEther
            - value: '63'
              newvalue: isdn
            - value: '64'
              newvalue: v11
            - value: '65'
              newvalue: v36
            - value: '66'
              newvalue: g703at64k
            - value: '67'
              newvalue: g703at2mb
            - value: '68'
              newvalue: qllc
            - value: '69'
              newvalue: fastEtherFX
            - value: '70'
              newvalue: channel
            - value: '71'
              newvalue: ieee80211
            - value: '72'
              newvalue: ibm370parChan
            - value: '73'
              newvalue: escon
            - value: '74'
              newvalue: dlsw
            - value: '75'
              newvalue: isdns
            - value: '76'
              newvalue: isdnu
            - value: '77'
              newvalue: lapd
            - value: '78'
              newvalue: ipSwitch
            - value: '79'
              newvalue: rsrb
            - value: '80'
              newvalue: atmLogical
            - value: '81'
              newvalue: ds0
            - value: '82'
              newvalue: ds0Bundle
            - value: '83'
              newvalue: bsc
            - value: '84'
              newvalue: async
            - value: '85'
              newvalue: cnr
            - value: '86'
              newvalue: iso88025Dtr
            - value: '87'
              newvalue: eplrs
            - value: '88'
              newvalue: arap
            - value: '89'
              newvalue: propCnls
            - value: '90'
              newvalue: hostPad
            - value: '91'
              newvalue: termPad
            - value: '92'
              newvalue: frameRelayMPI
            - value: '93'
              newvalue: x213
            - value: '94'
              newvalue: adsl
            - value: '95'
              newvalue: radsl
            - value: '96'
              newvalue: sdsl
            - value: '97'
              newvalue: vdsl
            - value: '98'
              newvalue: iso88025CRFPInt
            - value: '99'
              newvalue: myrinet
            - value: '100'
              newvalue: voiceEM
            - value: '101'
              newvalue: voiceFXO
            - value: '102'
              newvalue: voiceFXS
            - value: '103'
              newvalue: voiceEncap
            - value: '104'
              newvalue: voiceOverIp
            - value: '105'
              newvalue: atmDxi
            - value: '106'
              newvalue: atmFuni
            - value: '107'
              newvalue: atmIma
            - value: '108'
              newvalue: pppMultilinkBundle
            - value: '109'
              newvalue: ipOverCdlc
            - value: '110'
              newvalue: ipOverClaw
            - value: '111'
              newvalue: stackToStack
            - value: '112'
              newvalue: virtualIpAddress
            - value: '113'
              newvalue: mpc
            - value: '114'
              newvalue: ipOverAtm
            - value: '115'
              newvalue: iso88025Fiber
            - value: '116'
              newvalue: tdlc
            - value: '117'
              newvalue: gigabitEthernet
            - value: '118'
              newvalue: hdlc
            - value: '119'
              newvalue: lapf
            - value: '120'
              newvalue: v37
            - value: '121'
              newvalue: x25mlp
            - value: '122'
              newvalue: x25huntGroup
            - value: '123'
              newvalue: trasnpHdlc
            - value: '124'
              newvalue: interleave
            - value: '125'
              newvalue: fast
            - value: '126'
              newvalue: ip
            - value: '127'
              newvalue: docsCableMaclayer
            - value: '128'
              newvalue: docsCableDownstream
            - value: '129'
              newvalue: docsCableUpstream
            - value: '130'
              newvalue: a12MppSwitch
            - value: '131'
              newvalue: tunnel
            - value: '132'
              newvalue: coffee
            - value: '133'
              newvalue: ces
            - value: '134'
              newvalue: atmSubInterface
            - value: '135'
              newvalue: l2vlan
            - value: '136'
              newvalue: l3ipvlan
            - value: '137'
              newvalue: l3ipxvlan
            - value: '138'
              newvalue: digitalPowerline
            - value: '139'
              newvalue: mediaMailOverIp
            - value: '140'
              newvalue: dtm
            - value: '141'
              newvalue: dcn
            - value: '142'
              newvalue: ipForward
            - value: '143'
              newvalue: msdsl
            - value: '144'
              newvalue: ieee1394
            - value: '145'
              newvalue: if-gsn
            - value: '146'
              newvalue: dvbRccMacLayer
            - value: '147'
              newvalue: dvbRccDownstream
            - value: '148'
              newvalue: dvbRccUpstream
            - value: '149'
              newvalue: atmVirtual
            - value: '150'
              newvalue: mplsTunnel
            - value: '151'
              newvalue: srp
            - value: '152'
              newvalue: voiceOverAtm
            - value: '153'
              newvalue: voiceOverFrameRelay
            - value: '154'
              newvalue: idsl
            - value: '155'
              newvalue: compositeLink
            - value: '156'
              newvalue: ss7SigLink
            - value: '157'
              newvalue: propWirelessP2P
            - value: '158'
              newvalue: frForward
            - value: '159'
              newvalue: rfc1483
            - value: '160'
              newvalue: usb
            - value: '161'
              newvalue: ieee8023adLag
            - value: '162'
              newvalue: bgppolicyaccounting
            - value: '163'
              newvalue: frf16MfrBundle
            - value: '164'
              newvalue: h323Gatekeeper
            - value: '165'
              newvalue: h323Proxy
            - value: '166'
              newvalue: mpls
            - value: '167'
              newvalue: mfSigLink
            - value: '168'
              newvalue: hdsl2
            - value: '169'
              newvalue: shdsl
            - value: '170'
              newvalue: ds1FDL
            - value: '171'
              newvalue: pos
            - value: '172'
              newvalue: dvbAsiIn
            - value: '173'
              newvalue: dvbAsiOut
            - value: '174'
              newvalue: plc
            - value: '175'
              newvalue: nfas
            - value: '176'
              newvalue: tr008
            - value: '177'
              newvalue: gr303RDT
            - value: '178'
              newvalue: gr303IDT
            - value: '179'
              newvalue: isup
            - value: '180'
              newvalue: propDocsWirelessMaclayer
            - value: '181'
              newvalue: propDocsWirelessDownstream
            - value: '182'
              newvalue: propDocsWirelessUpstream
            - value: '183'
              newvalue: hiperlan2
            - value: '184'
              newvalue: propBWAp2Mp
            - value: '185'
              newvalue: sonetOverheadChannel
            - value: '186'
              newvalue: digitalWrapperOverheadChannel
            - value: '187'
              newvalue: aal2
            - value: '188'
              newvalue: radioMAC
            - value: '189'
              newvalue: atmRadio
            - value: '190'
              newvalue: imt
            - value: '191'
              newvalue: mvl
            - value: '192'
              newvalue: reachDSL
            - value: '193'
              newvalue: frDlciEndPt
            - value: '194'
              newvalue: atmVciEndPt
            - value: '195'
              newvalue: opticalChannel
            - value: '196'
              newvalue: opticalTransport
            - value: '197'
              newvalue: propAtm
            - value: '198'
              newvalue: voiceOverCable
            - value: '199'
              newvalue: infiniband
            - value: '200'
              newvalue: teLink
            - value: '201'
              newvalue: q2931
            - value: '202'
              newvalue: virtualTg
            - value: '203'
              newvalue: sipTg
            - value: '204'
              newvalue: sipSig
            - value: '205'
              newvalue: docsCableUpstreamChannel
            - value: '206'
              newvalue: econet
            - value: '207'
              newvalue: pon155
            - value: '208'
              newvalue: pon622
            - value: '209'
              newvalue: bridge
            - value: '210'
              newvalue: linegroup
            - value: '211'
              newvalue: voiceEMFGD
            - value: '212'
              newvalue: voiceFGDEANA
            - value: '213'
              newvalue: voiceDID
            - value: '214'
              newvalue: mpegTransport
            - value: '215'
              newvalue: sixToFour
            - value: '216'
              newvalue: gtp
            - value: '217'
              newvalue: pdnEtherLoop1
            - value: '218'
              newvalue: pdnEtherLoop2
            - value: '219'
              newvalue: opticalChannelGroup
            - value: '220'
              newvalue: homepna
            - value: '221'
              newvalue: gfp
            - value: '222'
              newvalue: ciscoISLvlan
            - value: '223'
              newvalue: actelisMetaLOOP
            - value: '224'
              newvalue: fcipLink
            - value: '225'
              newvalue: rpr
            - value: '226'
              newvalue: qam
            - value: '227'
              newvalue: lmp
            - value: '228'
              newvalue: cblVectaStar
            - value: '229'
              newvalue: docsCableMCmtsDownstream
            - value: '230'
              newvalue: adsl2
            - value: '231'
              newvalue: macSecControlledIF
            - value: '232'
              newvalue: macSecUncontrolledIF
            - value: '233'
              newvalue: aviciOpticalEther
            - value: '234'
              newvalue: atmbond
            - value: '235'
              newvalue: voiceFGDOS
            - value: '236'
              newvalue: mocaVersion1
            - value: '237'
              newvalue: ieee80216WMAN
            - value: '238'
              newvalue: adsl2plus
            - value: '239'
              newvalue: dvbRcsMacLayer
            - value: '240'
              newvalue: dvbTdm
            - value: '241'
              newvalue: dvbRcsTdma
            - value: '242'
              newvalue: x86Laps
            - value: '243'
              newvalue: wwanPP
            - value: '244'
              newvalue: wwanPP2
            - value: '245'
              newvalue: voiceEBS
            - value: '246'
              newvalue: ifPwType
            - value: '247'
              newvalue: ilan
            - value: '248'
              newvalue: pip
            - value: '249'
              newvalue: aluELP
            - value: '250'
              newvalue: gpon
            - value: '251'
              newvalue: vdsl2
            - value: '252'
              newvalue: capwapDot11Profile
            - value: '253'
              newvalue: capwapDot11Bss
            - value: '254'
              newvalue: capwapWtpVirtualRadio
            - value: '255'
              newvalue: bits
            - value: '256'
              newvalue: docsCableUpstreamRfPort
            - value: '257'
              newvalue: cableDownstreamRfPort
            - value: '258'
              newvalue: vmwareVirtualNic
            - value: '259'
              newvalue: ieee802154
            - value: '260'
              newvalue: otnOdu
            - value: '261'
              newvalue: otnOtu
            - value: '262'
              newvalue: ifVfiType
            - value: '263'
              newvalue: g9981
            - value: '264'
              newvalue: g9982
            - value: '265'
              newvalue: g9983
            - value: '266'
              newvalue: aluEpon
            - value: '267'
              newvalue: aluEponOnu
            - value: '268'
              newvalue: aluEponPhysicalUni
            - value: '269'
              newvalue: aluEponLogicalLink
            - value: '270'
              newvalue: aluGponOnu
            - value: '271'
              newvalue: aluGponPhysicalUni
            - value: '272'
              newvalue: vmwareNicTeam
            - value: '277'
              newvalue: docsOfdmDownstream
            - value: '278'
              newvalue: docsOfdmaUpstream
            - value: '279'
              newvalue: gfast
            - value: '280'
              newvalue: sdci
            - value: '281'
              newvalue: xboxWireless
            - value: '282'
              newvalue: fastdsl
            - value: '283'
              newvalue: docsCableScte55d1FwdOob
            - value: '284'
              newvalue: docsCableScte55d1RetOob
            - value: '285'
              newvalue: docsCableScte55d2DsOob
            - value: '286'
              newvalue: docsCableScte55d2UsOob
            - value: '287'
              newvalue: docsCableNdf
            - value: '288'
              newvalue: docsCableNdr
            - value: '289'
              newvalue: ptm
            - value: '290'
              newvalue: ghn
        - uuid: 5f4a459df3414f51a6304e95e33719cb
          name: 'Service state'
          mappings:
            - value: '0'
              newvalue: Down
            - value: '1'
              newvalue: Up
        - uuid: 8f0e780896f9432486996071a231fba3
          name: zabbix.host.available
          mappings:
            - value: '0'
              newvalue: 'not available'
            - value: '1'
              newvalue: available
            - value: '2'
              newvalue: unknown
    - uuid: 4e3fb27f028e4c35b8c9fc43b11c07d7
      template: 'OpenStack by HTTP'
      name: 'OpenStack by HTTP'
      description: |
        Requests OpenStack API access token and discovers available OpenStack services using OpenStack Identity API by HTTP using script item and creates host prototypes for them.
        
        Template uses OpenStack application credentials for authorization.
        
        Zabbix currently supports OpenStack Nova service.
        
        Read the template documentation prior to using this template.
        
        You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Setup
        
        This is a master template that needs to be assigned to a host, and it will discover all OpenStack services supported by Zabbix automatically.
        
        Before using this template it is recommended to create a separate monitoring user on OpenStack that will have access to specific API resources. Zabbix uses OpenStack application credentials for authorization, as it is a more secure method than a username and password-based authentication.
        
        Below are instructions and examples on how to set up a user on OpenStack that will be used by Zabbix. Examples use the OpenStack CLI (command-line interface) tool, but this can also be done from OpenStack Horizon (web interface).
        
        > **If using the CLI tool, make sure you have the OpenStack RC file for your project with a user that has rights to create other users, roles, etc., and source it**, for example, `. zabbix-admin-openrc.sh`.
        >
        > The OpenStack RC file can be obtained from Horizon.
        
        The project that needs to be monitored is assumed to be already present in OpenStack. In the following examples, a project named `zabbix` is used:
        
        ```
        # openstack project list
        +----------------------------------+--------------------+
        | ID                               | Name               |
        +----------------------------------+--------------------+
        | 28d6bb25d62b4e7e8c2d59ce056a0334 | service            |
        | 4688a19e02324c42a34220e9b6a2407e | admin              |
        | bc78db4bb2044148a0abf90be512fa12 | zabbix             |
        +----------------------------------+--------------------+
        ```
        
        1. After the project name is noted, a monitoring user needs to be created. This can be done by executing an `openstack user create` command:
        
        ```
        # openstack user create --project zabbix --password-prompt zabbix-monitoring
        User Password:
        Repeat User Password:
        +---------------------+----------------------------------+
        | Field               | Value                            |
        +---------------------+----------------------------------+
        | default_project_id  | bc78db4bb2044148a0abf90be512fa12 |
        | domain_id           | default                          |
        | enabled             | True                             |
        | id                  | abd3eda9a29244568b1801e4825b6d71 |
        | name                | zabbix-monitoring                |
        | options             | {}                               |
        | password_expires_at | None                             |
        +---------------------+----------------------------------+
        ```
        
        2. When the monitoring user is created, it needs to be assigned a role. But first, a monitoring-specific role needs to be created:
        
        ```
        # openstack role create --description "A role for Zabbix monitoring user" monitoring
        +-------------+-----------------------------------+
        | Field       | Value                             |
        +-------------+-----------------------------------+
        | description | A role for Zabbix monitoring user |
        | domain_id   | None                              |
        | id          | 93577a7f13184cf7af76f7bdecf7f6ee  |
        | name        | monitoring                        |
        | options     | {}                                |
        +-------------+-----------------------------------+
        ```
        
        3. Then assign this newly created role to the monitoring user created in Step 1:
        ```
        # openstack role add --user zabbix-monitoring --project zabbix monitoring
        ```
        
        4. Verify that the role has been assigned correctly. There should be one role only:
        
        ```
        # openstack role assignment list --user zabbix-monitoring --project zabbix --names
        +------------+---------------------------+-------+----------------+--------+--------+-----------+
        | Role       | User                      | Group | Project        | Domain | System | Inherited |
        +------------+---------------------------+-------+----------------+--------+--------+-----------+
        | monitoring | zabbix-monitoring@Default |       | zabbix@Default |        |        | False     |
        +------------+---------------------------+-------+----------------+--------+--------+-----------+
        ```
        
        5. Get the OpenStack RC file for the monitoring user in this project, source it, and generate application credentials:
        ```
        # openstack application credential create --description "Application credential for Zabbix monitoring" zabbix-app-cred
          +--------------+----------------------------------------------------------------------------------------+
          | Field        | Value                                                                                  |
          +--------------+----------------------------------------------------------------------------------------+
          | description  | Application credential for Zabbix monitoring                                           |
          | expires_at   | None                                                                                   |
          | id           | c8087b91354249f3b157a50fc5ecfb3c                                                       |
          | name         | zabbix-app-cred                                                                        |
          | project_id   | bc78db4bb2044148a0abf90be512fa12                                                       |
          | roles        | monitoring                                                                             |
          | secret       | E1kC-s8QTWUaIpmexF18GW-FL3TI9-HXoexdExvGsw7uOhb3SEFW1zDa1qTs80Vqn-2xgviIPRuYOCDp2NDVUg |
          | system       | None                                                                                   |
          | unrestricted | False                                                                                  |
          | user_id      | abd3eda9a29244568b1801e4825b6d71                                                       |
          +--------------+----------------------------------------------------------------------------------------+
        ```
        
        While creating the application credential, it is also possible to define __access rules__ using the `--access-rules` flag, which offers even more fine-grained access to various API endpoints.
        This is optional and up to the user to decide if such rules are needed.
        
        Once the application credential is created, the values of `id` and `secret` need to be set as host wizard configuration field values:
        
        * value of `id` in `App credential ID`;
        * value of `secret` in `App credential password`.
        
        
        At this point, the monitoring user will not be able to access any resources on OpenStack, therefore some access rights need to be defined.
        Access rights are set using policies. Each service has its own policy file, therefore **further steps for setting up policies, are mentioned in the template documentation of each supported service**, e.g., __OpenStack Nova by HTTP__.
      vendor:
        name: Zabbix
        version: 8.0-1
      groups:
        - name: Templates/Cloud
      items:
        - uuid: 0518d08edbf2480abf15f4ef0e7a251a
          name: 'Get access token and service catalog'
          type: SCRIPT
          key: openstack.identity.auth
          delay: '{$OPENSTACK.AUTH.INTERVAL}'
          history: '0'
          value_type: TEXT
          params: |
            
            const request_path = '/v3/auth/tokens';
            
            function checkParams(params) {
            	['api_url', 'app_cred_id', 'app_cred_secret'].forEach(function (field) {
            		if (typeof params !== 'object' || typeof params[field] === 'undefined' || params[field] === '') {
            			throw 'Required param is not set: ' + field + '.';
            		}
            	});
            	return params;
            }
            
            function getHttpData(url, params, app_cred_id, app_cred_secret) {
            	const request = new HttpRequest();
            
            	request.addHeader('Content-Type: application/json');
            
            	const request_body = {
            		"auth": {
            			"identity": {
            				"methods": [
            					"application_credential"
            				],
            				"application_credential": {
            					"id": app_cred_id,
            					"secret": app_cred_secret
            				}
            			}
            		}
            	};
            
            	if (params['http_proxy']) {
            		request.setProxy(params['http_proxy'])
            		Zabbix.log(4, '[ Openstack Nova API ] Using http proxy: ' + params['http_proxy']);
            	}
            
            	const response = request.post(url, JSON.stringify(request_body));
            	Zabbix.log(4, '[ Openstack Identity API ] [ ' + url + ' ] Received response with status code ' + request.getStatus() + ': ' + response);
            
            	if (request.getStatus() !== 201) {
            		if (typeof (response.error && response.error.message) !== 'undefined') {
            			throw response.error.message;
            		} else {
            			throw 'Failed to receive data: invalid response status code. Check debug log for more information.';
            		}
            	}
            
            	return {'request': request, 'response': response};
            }
            
            function parseHttpData(http_data) {
            	var token;
            	const headers = http_data['request'].getHeaders(true);
            	if (typeof headers === "object") {
            		if (headers !== null) {
            			try {
            				token = headers["X-Subject-Token"][0];
            			} catch (error) {
            				throw 'Failed to parse response received from OpenStack Identity API. Check debug log for more information.';
            			}
            		} else {
            			throw 'Response object is empty. Check debug log for more information.';
            		}
            	} else {
            		throw 'Cannot process response data: received data is not an object. Check debug log for more information.';
            	}
            
            	const supported_services = ['nova'];
            
            	var ret = [];
            	const data = JSON.parse(http_data['response']);
            	if (data['token']['catalog']) {
            		const service_catalog = data['token']['catalog'];
            	} else {
            		throw 'Cannot find service catalog in HTTP response.'
            	}
            
            	service_catalog.forEach(function (service) {
            		if (supported_services.indexOf(service.name) > -1) {
            			service.endpoints.forEach(function (endpoint) {
            				if (endpoint.interface === 'public') {
            					ret.push({
            						'service_name': service.name[0].toUpperCase() + service.name.slice(1),
            						'service_url': endpoint.url,
            						'token': token
            					});
            				}
            			})
            		}
            	});
            
            	return JSON.stringify(ret);
            }
            
            const params = checkParams(JSON.parse(value)),
            	url = params.api_url,
            	auth_cred_id = params.app_cred_id,
            	auth_cred_secret = params.app_cred_secret;
            
            const httpData = getHttpData(url + request_path, params, auth_cred_id, auth_cred_secret);
            return parseHttpData(httpData);
          description: 'Authorizes user on the OpenStack Identity service and gets the service catalog.'
          timeout: 10s
          parameters:
            - name: api_url
              value: '{$OPENSTACK.KEYSTONE.API.ENDPOINT}'
            - name: app_cred_id
              value: '{$OPENSTACK.APP.CRED.ID}'
            - name: app_cred_secret
              value: '{$OPENSTACK.APP.CRED.SECRET}'
            - name: http_proxy
              value: '{$OPENSTACK.HTTP.PROXY}'
          tags:
            - tag: component
              value: raw
      discovery_rules:
        - uuid: f827e364d7bd4013b02504a58fdc2d39
          name: 'OpenStack: Nova discovery'
          type: DEPENDENT
          key: openstack.services.nova.discovery
          filter:
            conditions:
              - macro: '{#SERVICE_NAME}'
                value: ^Nova$
          description: 'Discovers OpenStack services from the monitoring user''s services catalog.'
          host_prototypes:
            - uuid: 580d769292ec48379c5b84cd5c72533b
              host: 'OpenStack {#SERVICE_NAME}'
              name: 'OpenStack {#SERVICE_NAME}'
              group_links:
                - group:
                    name: 'Virtual machines'
              templates:
                - name: 'OpenStack Nova by HTTP'
              macros:
                - macro: '{$OPENSTACK.NOVA.SERVICE.URL}'
                  value: '{#SERVICE_URL}'
                  description: 'OpenStack Nova service path.'
                - macro: '{$OPENSTACK.TOKEN}'
                  value: '{#TOKEN}'
                  description: 'OpenStack authorization token.'
          master_item:
            key: openstack.identity.auth
          lld_macro_paths:
            - lld_macro: '{#SERVICE_NAME}'
              path: $.service_name
            - lld_macro: '{#SERVICE_URL}'
              path: $.service_url
            - lld_macro: '{#TOKEN}'
              path: $.token
      tags:
        - tag: class
          value: cloud
        - tag: subclass
          value: automation
        - tag: subclass
          value: computing
        - tag: subclass
          value: containers
        - tag: subclass
          value: deploy
        - tag: subclass
          value: security
        - tag: subclass
          value: virtualization
        - tag: target
          value: openstack
      macros:
        - macro: '{$OPENSTACK.APP.CRED.ID}'
          description: 'Application credential ID for monitoring user access.'
          config:
            type: TEXT
            priority: '4'
            label: 'App credential ID'
            description: 'Application credential ID for monitoring user access.'
            required: 'YES'
        - macro: '{$OPENSTACK.APP.CRED.SECRET}'
          type: SECRET_TEXT
          description: 'Application credential password for monitoring user access.'
          config:
            type: TEXT
            priority: '5'
            label: 'App credential password'
            description: 'Application credential password for monitoring user access.'
            required: 'YES'
        - macro: '{$OPENSTACK.AUTH.INTERVAL}'
          value: 50m
          description: 'API token regeneration interval, in minutes. By default, OpenStack API tokens expire after 60m.'
          config:
            type: TEXT
            priority: '2'
            section_name: Other
            label: 'Token refresh interval (min)'
            description: 'API token regeneration interval, in minutes. By default, OpenStack API tokens expire after 60m.'
        - macro: '{$OPENSTACK.HTTP.PROXY}'
          description: 'Sets the HTTP proxy for the authorization item. Host prototypes will also use this value for HTTP proxy. If this parameter is empty, then no proxy is used.'
          config:
            type: TEXT
            priority: '3'
            section_name: Other
            label: 'HTTP proxy'
            description: 'Sets the HTTP proxy for the authorization item. Host prototypes will also use this value for HTTP proxy. If this parameter is empty, then no proxy is used.'
        - macro: '{$OPENSTACK.KEYSTONE.API.ENDPOINT}'
          description: 'API endpoint for Identity Service, e.g., https://local.openstack:5000.'
          config:
            type: TEXT
            priority: '1'
            label: 'Identity API URL'
            description: 'API endpoint for Identity Service, e.g., https://local.openstack:5000.'
            required: 'YES'
    - uuid: ff637e001b91472d8730eb7f10e65800
      template: 'OpenStack Nova by HTTP'
      name: 'OpenStack Nova by HTTP'
      description: |
        Discovers and monitors project limits, servers, services, hypervisors, availability zones, hypervisors and tenants with OpenStack Compute API by HTTP using script and HTTP agent items.
        
        This template receives token and service URL from parent host, therefore no additional configuration is necessary.
        
        Read the template documentation prior to using this template.
        
        You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Setup
        
        This template is not meant to be used independently. A host with the __OpenStack by HTTP__ template will discover the __Nova__ service automatically and create a host prototype with this template assigned to it.
        
        If needed, you can specify an HTTP proxy for the template to use by changing the value of `HTTP proxy` host wizard configuration field.
        
        For tenant usage statistics, it is possible to choose a custom time period for which the data will be queried. This can be set with the `Tenant usage period` host wizard configuration field value.
        The value can be one of the following:
        
        * `y` - current year until now;
        
        * `m` - current month until now (default value);
        
        * `w` - current week until now;
        
        * `d` - current day until now;
        
        This template discovers servers (instances) present in the project and monitors their statuses, but, depending on different use cases, most likely it is not necessary to monitor all servers.
        To filter which servers to monitor, set the `Server name filter (include)` and `Server name filter (exclude)` host wizard configuration field values accordingly. This logic also applies to other low-level discovery rules.
        
        **OpenStack configuration**
        
        For the OpenStack monitoring user to be able to access the API resources used in this template, it is needed to configure the policy file for OpenStack Nova.
        
        On the OpenStack server, open the `/etc/nova/policy.json` file in your favorite text editor.
        
        In this file, assign the following target resources to the role that the monitoring user uses:
        ```
        {
          "os_compute_api:servers:index": "role:monitoring",
          "os_compute_api:servers:show": "role:monitoring",
          "os_compute_api:os-services:list": "role:monitoring",
          "os_compute_api:os-hypervisors:list-detail": "role:monitoring",
          "os_compute_api:os-availability-zone:detail": "role:monitoring",
          "os_compute_api:os-simple-tenant-usage:list": "role:monitoring"
        }
        ```
        
        If some role is already assigned to the target, it is possible to add another role with `or`, for example, `role:firstRole or role:monitoring`.
        
        Note that a restart of OpenStack Nova services might be needed for these new changes to be applied.
      vendor:
        name: Zabbix
        version: 8.0-1
      groups:
        - name: Templates/Cloud
      items:
        - uuid: 87d263a6f797439c8c7699d96f4305fb
          name: 'Get availability zones'
          type: HTTP_AGENT
          key: openstack.nova.availability_zone.get
          delay: '{$OPENSTACK.NOVA.INTERVAL.AVAILABILITY_ZONE}'
          history: '0'
          value_type: TEXT
          description: 'Gets a list of availability zones and its data.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.availabilityZoneInfo
              error_handler: CUSTOM_ERROR
              error_handler_params: 'Could not get availability zones list'
          timeout: 10s
          url: '{$OPENSTACK.NOVA.SERVICE.URL}/os-availability-zone/detail'
          http_proxy: '{$OPENSTACK.HTTP.PROXY}'
          headers:
            - name: X-Auth-Token
              value: '{$OPENSTACK.TOKEN}'
          tags:
            - tag: component
              value: raw
        - uuid: c4297b412ad54bae85a1219e2d988bcb
          name: 'Get hypervisors'
          type: HTTP_AGENT
          key: openstack.nova.hypervisors.get
          delay: '{$OPENSTACK.NOVA.INTERVAL.HYPERVISOR}'
          history: '0'
          value_type: TEXT
          description: 'Gets a list of hypervisors and its data.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.hypervisors
              error_handler: CUSTOM_ERROR
              error_handler_params: 'Could not get hypervisors list'
          timeout: 10s
          url: '{$OPENSTACK.NOVA.SERVICE.URL}/os-hypervisors/detail'
          http_proxy: '{$OPENSTACK.HTTP.PROXY}'
          headers:
            - name: X-Auth-Token
              value: '{$OPENSTACK.TOKEN}'
          tags:
            - tag: component
              value: raw
        - uuid: 02698d2fcd2949868013dedb311b8db3
          name: 'Get absolute limits'
          type: HTTP_AGENT
          key: openstack.nova.limits.get
          delay: '{$OPENSTACK.NOVA.INTERVAL.LIMITS}'
          history: '0'
          value_type: TEXT
          description: 'Gets absolute limits for the project.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.limits.absolute
              error_handler: CUSTOM_ERROR
              error_handler_params: 'Could not get absolute project limits'
          timeout: 10s
          url: '{$OPENSTACK.NOVA.SERVICE.URL}/limits'
          http_proxy: '{$OPENSTACK.HTTP.PROXY}'
          headers:
            - name: X-Auth-Token
              value: '{$OPENSTACK.TOKEN}'
          tags:
            - tag: component
              value: raw
        - uuid: bea005220b704f1fb6ca523647ae24ce
          name: 'Instances count, current'
          type: DEPENDENT
          key: openstack.nova.limits.instances.current
          description: 'Number of servers in each tenant.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.totalInstancesUsed
          master_item:
            key: openstack.nova.limits.get
          tags:
            - tag: component
              value: environment
        - uuid: 29898c0cb13d4ccebc3da95c082da29b
          name: 'Instances count, free'
          type: CALCULATED
          key: openstack.nova.limits.instances.free
          delay: '{$OPENSTACK.NOVA.INTERVAL.LIMITS}'
          params: last(//openstack.nova.limits.instances.max)-last(//openstack.nova.limits.instances.current)
          description: 'Number of available servers for each tenant.'
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          tags:
            - tag: component
              value: environment
        - uuid: 7526be4743564c32a293f96daf7cb242
          name: 'Instances count, max'
          type: DEPENDENT
          key: openstack.nova.limits.instances.max
          description: 'Number of allowed servers for each tenant.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.maxTotalInstances
          master_item:
            key: openstack.nova.limits.get
          tags:
            - tag: component
              value: environment
        - uuid: 64ae014b201945f299f80080dc63176d
          name: 'RAM usage, current'
          type: DEPENDENT
          key: openstack.nova.limits.ram.current
          units: b
          description: 'Amount of used server RAM.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.totalRAMUsed
            - type: MULTIPLIER
              parameters:
                - '1048576'
          master_item:
            key: openstack.nova.limits.get
          tags:
            - tag: component
              value: environment
        - uuid: bdc1492bbb5c4bcd844eaa6f6e76c1ff
          name: 'RAM usage, free'
          type: CALCULATED
          key: openstack.nova.limits.ram.free
          delay: '{$OPENSTACK.NOVA.INTERVAL.LIMITS}'
          units: b
          params: last(//openstack.nova.limits.ram.max)-last(//openstack.nova.limits.ram.current)
          description: 'Amount of available server RAM.'
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          tags:
            - tag: component
              value: environment
        - uuid: 50f2128cace04cf5a783e438de813e72
          name: 'RAM usage, max'
          type: DEPENDENT
          key: openstack.nova.limits.ram.max
          units: b
          description: 'Amount of allowed server RAM.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.maxTotalRAMSize
            - type: MULTIPLIER
              parameters:
                - '1048576'
          master_item:
            key: openstack.nova.limits.get
          tags:
            - tag: component
              value: environment
        - uuid: 678f2c0017f54d8b827876005f6ca670
          name: 'vCPUs usage, current'
          type: DEPENDENT
          key: openstack.nova.limits.vcpu.current
          description: 'Number of used server cores in each tenant.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.totalCoresUsed
          master_item:
            key: openstack.nova.limits.get
          tags:
            - tag: component
              value: environment
        - uuid: 97d3b897722d4910aea8e4c3c5f6c9a9
          name: 'vCPUs usage, free'
          type: CALCULATED
          key: openstack.nova.limits.vcpu.free
          delay: '{$OPENSTACK.NOVA.INTERVAL.LIMITS}'
          params: last(//openstack.nova.limits.vcpu.max)-last(//openstack.nova.limits.vcpu.current)
          description: 'Number of available server cores for each tenant.'
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
          tags:
            - tag: component
              value: environment
        - uuid: e0583793b29b4bb195198d196cc1f0cc
          name: 'vCPUs usage, max'
          type: DEPENDENT
          key: openstack.nova.limits.vcpu.max
          description: 'Number of allowed server cores for each tenant.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.maxTotalCores
          master_item:
            key: openstack.nova.limits.get
          tags:
            - tag: component
              value: environment
        - uuid: 85d746d8b6cf404f95eeb7903c2e66e0
          name: 'Get servers'
          type: HTTP_AGENT
          key: openstack.nova.servers.get
          delay: '{$OPENSTACK.NOVA.INTERVAL.SERVERS}'
          history: '0'
          value_type: TEXT
          description: 'Gets a list of servers.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.servers
              error_handler: CUSTOM_ERROR
              error_handler_params: 'Could not get servers list'
          timeout: 10s
          url: '{$OPENSTACK.NOVA.SERVICE.URL}/servers'
          http_proxy: '{$OPENSTACK.HTTP.PROXY}'
          headers:
            - name: X-Auth-Token
              value: '{$OPENSTACK.TOKEN}'
          tags:
            - tag: component
              value: raw
        - uuid: 3db93b6116ad416eb10da851cce385a1
          name: 'Get compute services'
          type: HTTP_AGENT
          key: openstack.nova.services.get
          delay: '{$OPENSTACK.NOVA.INTERVAL.SERVICES}'
          history: '0'
          value_type: TEXT
          description: 'Gets a list of compute services and its data.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.services
              error_handler: CUSTOM_ERROR
              error_handler_params: 'Could not get compute services list'
          timeout: 10s
          url: '{$OPENSTACK.NOVA.SERVICE.URL}/os-services'
          http_proxy: '{$OPENSTACK.HTTP.PROXY}'
          headers:
            - name: X-Auth-Token
              value: '{$OPENSTACK.TOKEN}'
          tags:
            - tag: component
              value: raw
        - uuid: c258e567922c4f71a4dee9c0d6b88b1e
          name: 'Get tenants'
          type: SCRIPT
          key: openstack.nova.tenant.get
          delay: '{$OPENSTACK.NOVA.INTERVAL.TENANTS}'
          history: '0'
          value_type: TEXT
          params: |
            
            const request_path = '/os-simple-tenant-usage';
            
            function checkParams(params) {
            	['api_url', 'api_token', 'period'].forEach(function (field) {
            		if (typeof params !== 'object' || typeof params[field] === 'undefined' || params[field] === '') {
            			throw 'Required param is not set: ' + field + '.';
            		}
            		if (field === 'period') {
            			const supported_values = ['y', 'm', 'w', 'd']
            			if (supported_values.indexOf(params[field]) === -1) {
            				throw 'Tenant period not correctly set. Expected one of "y", "m", "w", "d"; received: ' + field + '.';
            			}
            		}
            	});
            	return params;
            }
            
            function buildUrl(url, period) {
            	const current_date = new Date();
            	var datetime_formatted = ''
            	switch (period) {
            		case 'y':
            			datetime_formatted =
            				current_date.getFullYear() + '-' +
            				'1-' +
            				'1T' +
            				'00:00:00'
            			break;
            		case 'm':
            			datetime_formatted =
            			current_date.getFullYear() + '-' +
            				(current_date.getMonth() + 1) + '-' +
            			'1T' +
            			'00:00:00'
            			break;
            		case 'w':
            			const first_date_of_week = current_date.getDate() - current_date.getDay() + 1
            			datetime_formatted =
            				current_date.getFullYear() + '-' +
            				(current_date.getMonth() + 1) + '-' +
            				first_date_of_week + 'T' +
            				'00:00:00'
            			break;
            		case 'd':
            			datetime_formatted =
            				current_date.getFullYear() + '-' +
            				(current_date.getMonth() + 1) + '-' +
            				current_date.getDate() + 'T' +
            				'00:00:00'
            			break;
            	}
            
            	return url + request_path + '?' +
            		'start=' + encodeURIComponent(datetime_formatted)
            }
            
            function getHttpData(url, params, api_token) {
            	const request = new HttpRequest();
            
            	request.addHeader('Content-Type: application/json');
            	request.addHeader('X-Auth-Token: ' + api_token);
            	if (params['http_proxy']) {
            		request.setProxy(params['http_proxy'])
            		Zabbix.log(4, '[ Openstack Nova API ] Using http proxy: ' + params['http_proxy']);
            	}
            
            	const response = request.get(url, JSON.stringify(params));
            	Zabbix.log(4, '[ Openstack Nova API ] [ ' + url + ' ] Received response with status code ' + request.getStatus() + ': ' + response);
            
            	if (request.getStatus() !== 200) {
            		if (typeof (response.error && response.error.message) !== 'undefined') {
            			throw response.error.message;
            		} else {
            			throw 'Failed to receive data: invalid response status code ( ' + request.getStatus() + ' ). Check debug log for more information.';
            		}
            	}
            
            	return response;
            }
            
            const params = checkParams(JSON.parse(value)),
            	url = params.api_url,
            	token = params.api_token,
            	period = params.period;
            
            return getHttpData(buildUrl(url, period), params, token);
          description: 'Gets a list of tenants and its data.'
          preprocessing:
            - type: JSONPATH
              parameters:
                - $.tenant_usages
              error_handler: CUSTOM_ERROR
              error_handler_params: 'Could not get tenant list'
          timeout: 10s
          parameters:
            - name: api_token
              value: '{$OPENSTACK.TOKEN}'
            - name: api_url
              value: '{$OPENSTACK.NOVA.SERVICE.URL}'
            - name: http_proxy
              value: '{$OPENSTACK.HTTP.PROXY}'
            - name: period
              value: '{$OPENSTACK.NOVA.TENANT.PERIOD}'
          tags:
            - tag: component
              value: raw
      discovery_rules:
        - uuid: 55f919d49a364921a0e63e51dcabe9e2
          name: 'Nova: Availability zones discovery'
          type: DEPENDENT
          key: openstack.nova.availability_zone.discovery
          filter:
            evaltype: AND
            conditions:
              - macro: '{#ZONE_NAME}'
                value: '{$OPENSTACK.AVAILABILITY_ZONE.DISCOVERY.NAME.MATCHES}'
              - macro: '{#ZONE_NAME}'
                value: '{$OPENSTACK.AVAILABILITY_ZONE.DISCOVERY.NAME.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovers OpenStack Nova availability zones.'
          item_prototypes:
            - uuid: 46f1348ce86742a6a645e137b0ecea63
              name: 'Availability zone [{#ZONE_NAME}]: Host count'
              type: DEPENDENT
              key: 'openstack.nova.availability_zone.host_count[{#ZONE_NAME}]'
              description: 'Count of hosts and service objects under single availability zone.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$[''hosts''].[*].[*].length()'
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed availability zone report'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.availability_zone.raw[{#ZONE_NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: zone
            - uuid: 988be318a8d345e4ba1d339e7e877a2c
              name: 'Availability zone [{#ZONE_NAME}]: Raw data'
              type: DEPENDENT
              key: 'openstack.nova.availability_zone.raw[{#ZONE_NAME}]'
              history: '0'
              value_type: TEXT
              description: 'Raw data of the availability zone.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$[?(@.zoneName == "{#ZONE_NAME}")].first()'
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed availability zone report'
              master_item:
                key: openstack.nova.availability_zone.get
              tags:
                - tag: component
                  value: raw
            - uuid: 2d99e000412244b998417c19399a8ff9
              name: 'Availability zone [{#ZONE_NAME}]: State'
              type: DEPENDENT
              key: 'openstack.nova.availability_zone.state[{#ZONE_NAME}]'
              description: 'Current state of the availability zone.'
              valuemap:
                name: 'Availability zone state'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.zoneState.available
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed availability zone report'
                - type: BOOL_TO_DECIMAL
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.availability_zone.raw[{#ZONE_NAME}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: zone
              trigger_prototypes:
                - uuid: 0b4865c81de741b8a96574eeb450cf40
                  expression: 'last(/OpenStack Nova by HTTP/openstack.nova.availability_zone.state[{#ZONE_NAME}])=0'
                  name: 'OpenStack Nova: Availability zone [{#ZONE_NAME}]: Zone is unavailable'
                  opdata: 'Current zone state: {ITEM.LASTVALUE}'
                  priority: WARNING
                  description: 'Availability zone is not available.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
          master_item:
            key: openstack.nova.availability_zone.get
          lld_macro_paths:
            - lld_macro: '{#ZONE_NAME}'
              path: $.zoneName
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
        - uuid: 84b17b240632413fbc3cd5b261cc2fd6
          name: 'Nova: Hypervisor discovery'
          type: DEPENDENT
          key: openstack.nova.hypervisors.discovery
          filter:
            evaltype: AND
            conditions:
              - macro: '{#HOSTNAME}'
                value: '{$OPENSTACK.HYPERVISOR.DISCOVERY.HOSTNAME.MATCHES}'
              - macro: '{#HOSTNAME}'
                value: '{$OPENSTACK.HYPERVISOR.DISCOVERY.HOSTNAME.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#HOST_IP}'
                value: '{$OPENSTACK.HYPERVISOR.DISCOVERY.IP.MATCHES}'
              - macro: '{#HOST_IP}'
                value: '{$OPENSTACK.HYPERVISOR.DISCOVERY.IP.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#TYPE}'
                value: '{$OPENSTACK.HYPERVISOR.DISCOVERY.TYPE.MATCHES}'
              - macro: '{#TYPE}'
                value: '{$OPENSTACK.HYPERVISOR.DISCOVERY.TYPE.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovers OpenStack Nova hypervisors.'
          item_prototypes:
            - uuid: 3edd8fcf7d3643119b7b21111155fcc0
              name: 'Hypervisor [{#ID}]:[{#HOSTNAME}]: Raw data'
              type: DEPENDENT
              key: 'openstack.nova.hypervisors.raw[{#ID}]'
              history: '0'
              value_type: TEXT
              description: 'Raw data of the hypervisor.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$[?(@.id == "{#ID}")].first()'
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed hypervisor report'
              master_item:
                key: openstack.nova.hypervisors.get
              tags:
                - tag: component
                  value: raw
            - uuid: ef893a8517414964ade5d40064291f87
              name: 'Hypervisor [{#ID}]:[{#HOSTNAME}]: State'
              type: DEPENDENT
              key: 'openstack.nova.hypervisors.state[{#ID}]'
              description: 'State of the hypervisor.'
              valuemap:
                name: 'General state'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.state
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed hypervisor report'
                - type: JAVASCRIPT
                  parameters:
                    - |
                      const idx = [
                      	'down',
                      	'up'
                      ].indexOf(value);
                      return idx !== -1 ? idx : 10;
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.hypervisors.raw[{#ID}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: hypervisor
              trigger_prototypes:
                - uuid: 5fb5ed829d9747499c385d268bf229ea
                  expression: 'last(/OpenStack Nova by HTTP/openstack.nova.hypervisors.state[{#ID}])=0'
                  name: 'OpenStack Nova: Hypervisor [{#ID}]:[{#HOSTNAME}]: State is "down"'
                  opdata: 'Current state: {ITEM.LASTVALUE}'
                  priority: WARNING
                  description: 'State of the hypervisor is "down".'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 26d06619594049c594998359a4659686
              name: 'Hypervisor [{#ID}]:[{#HOSTNAME}]: Status'
              type: DEPENDENT
              key: 'openstack.nova.hypervisors.status[{#ID}]'
              description: 'Status of the hypervisor.'
              valuemap:
                name: 'General status'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.status
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed hypervisor report'
                - type: JAVASCRIPT
                  parameters:
                    - |
                      const idx = [
                      	'disabled',
                      	'enabled'
                      ].indexOf(value);
                      return idx !== -1 ? idx : 10;
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.hypervisors.raw[{#ID}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: hypervisor
              trigger_prototypes:
                - uuid: 5022a6a84f884a31be1ff440a3c14732
                  expression: 'last(/OpenStack Nova by HTTP/openstack.nova.hypervisors.status[{#ID}])=0'
                  name: 'OpenStack Nova: Hypervisor [{#ID}]:[{#HOSTNAME}]: Status is "disabled"'
                  opdata: 'Current status: {ITEM.LASTVALUE}'
                  priority: INFO
                  description: 'Status of the hypervisor is disabled.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 5e9ced69d41d40ffabb04f9fd88b7730
              name: 'Hypervisor [{#ID}]:[{#HOSTNAME}]: Version'
              type: DEPENDENT
              key: 'openstack.nova.hypervisors.version[{#ID}]'
              value_type: FLOAT
              description: 'Hypervisor version.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.hypervisor_version
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed hypervisor report'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.hypervisors.raw[{#ID}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: hypervisor
              trigger_prototypes:
                - uuid: 958ce612bb0a4b1ea67aba594dbd53b3
                  expression: 'last(/OpenStack Nova by HTTP/openstack.nova.hypervisors.version[{#ID}])<>last(/OpenStack Nova by HTTP/openstack.nova.hypervisors.version[{#ID}],#2) and length(last(/OpenStack Nova by HTTP/openstack.nova.hypervisors.version[{#ID}]))>0'
                  name: 'OpenStack Nova: Hypervisor [{#ID}]:[{#HOSTNAME}]: Version has changed'
                  opdata: 'Current version: {ITEM.LASTVALUE}'
                  priority: INFO
                  description: 'Version of the hypervisor has changed. Acknowledge to close the problem manually.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: notice
          master_item:
            key: openstack.nova.hypervisors.get
          lld_macro_paths:
            - lld_macro: '{#HOSTNAME}'
              path: $.hypervisor_hostname
            - lld_macro: '{#HOST_IP}'
              path: $.host_ip
            - lld_macro: '{#ID}'
              path: $.id
            - lld_macro: '{#TYPE}'
              path: $.hypervisor_type
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
        - uuid: b38111e1499f414cbe662fada0d40b10
          name: 'Nova: Servers discovery'
          type: DEPENDENT
          key: openstack.nova.server.discovery
          filter:
            evaltype: AND
            conditions:
              - macro: '{#SERVER_NAME}'
                value: '{$OPENSTACK.SERVER.DISCOVERY.NAME.MATCHES}'
              - macro: '{#SERVER_NAME}'
                value: '{$OPENSTACK.SERVER.DISCOVERY.NAME.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovers OpenStack Nova servers.'
          item_prototypes:
            - uuid: 84fd4be0c5f84744ac6bd93d4d4e8f0e
              name: 'Server [{#SERVER_ID}]:[{#SERVER_NAME}]: Status'
              type: HTTP_AGENT
              key: 'openstack.nova.server.status.get[{#SERVER_ID}]'
              delay: '{$OPENSTACK.NOVA.INTERVAL.SERVERS}'
              description: 'Server status.'
              valuemap:
                name: 'Server status'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.server.status
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed server report'
                - type: JAVASCRIPT
                  parameters:
                    - |
                      const idx = [
                      	'SHUTOFF',
                      	'ACTIVE',
                      	'PAUSED',
                      	'BUILD',
                      	'DELETED',
                      	'ERROR',
                      	'HARD_REBOOT',
                      	'MIGRATING',
                      	'PASSWORD',
                      	'REBOOT',
                      	'REBUILD',
                      	'RESCUE',
                      	'RESIZE',
                      	'REVERT_RESIZE',
                      	'SHELVED',
                      	'SHELVED_OFFLOADED',
                      	'SOFT_DELETED',
                      	'SUSPENDED',
                      	'UNKNOWN',
                      	'VERIFY_RESIZE',
                      ].indexOf(value);
                      return idx !== -1 ? idx : 30;
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              timeout: 10s
              url: '{$OPENSTACK.NOVA.SERVICE.URL}/servers/{#SERVER_ID}'
              http_proxy: '{$OPENSTACK.HTTP.PROXY}'
              headers:
                - name: X-Auth-Token
                  value: '{$OPENSTACK.TOKEN}'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: server
              trigger_prototypes:
                - uuid: 490262a25fb842c9a9b83a2e0be83654
                  expression: 'last(/OpenStack Nova by HTTP/openstack.nova.server.status.get[{#SERVER_ID}])<>last(/OpenStack Nova by HTTP/openstack.nova.server.status.get[{#SERVER_ID}],#2) and length(last(/OpenStack Nova by HTTP/openstack.nova.server.status.get[{#SERVER_ID}]))>0'
                  name: 'OpenStack Nova: Server [{#SERVER_ID}]:[{#SERVER_NAME}]: Status has changed'
                  opdata: 'Current status: {ITEM.LASTVALUE}'
                  priority: INFO
                  description: 'Status of the server has changed. Acknowledge to close the problem manually.'
                  manual_close: 'YES'
                  dependencies:
                    - name: 'OpenStack Nova: Server [{#SERVER_ID}]:[{#SERVER_NAME}]: Status is "ERROR"'
                      expression: 'last(/OpenStack Nova by HTTP/openstack.nova.server.status.get[{#SERVER_ID}])=5'
                  tags:
                    - tag: scope
                      value: availability
                - uuid: 7d2ca81f24154099b3857aeaadef114f
                  expression: 'last(/OpenStack Nova by HTTP/openstack.nova.server.status.get[{#SERVER_ID}])=5'
                  name: 'OpenStack Nova: Server [{#SERVER_ID}]:[{#SERVER_NAME}]: Status is "ERROR"'
                  opdata: 'Current status: {ITEM.LASTVALUE}'
                  priority: HIGH
                  description: 'Server is in "ERROR" status.'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
          master_item:
            key: openstack.nova.servers.get
          lld_macro_paths:
            - lld_macro: '{#SERVER_ID}'
              path: $.id
            - lld_macro: '{#SERVER_NAME}'
              path: $.name
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
        - uuid: 4af40cd615d74e54a3759041470995fe
          name: 'Nova: Compute services discovery'
          type: DEPENDENT
          key: openstack.nova.services.discovery
          filter:
            evaltype: AND
            conditions:
              - macro: '{#BINARY}'
                value: '{$OPENSTACK.SERVICES.DISCOVERY.BINARY.MATCHES}'
              - macro: '{#BINARY}'
                value: '{$OPENSTACK.SERVICES.DISCOVERY.BINARY.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
              - macro: '{#HOST}'
                value: '{$OPENSTACK.SERVICES.DISCOVERY.HOST.MATCHES}'
              - macro: '{#HOST}'
                value: '{$OPENSTACK.SERVICES.DISCOVERY.HOST.NOT_MATCHES}'
                operator: NOT_MATCHES_REGEX
          description: 'Discovers OpenStack compute services.'
          item_prototypes:
            - uuid: 3bd724dad043411187a86466cf8ee2c6
              name: 'Compute service [{#HOST}]:[{#BINARY}]:[{#ID}]: Disabling reason'
              type: DEPENDENT
              key: 'openstack.nova.services.disabled.reason[{#ID}]'
              value_type: CHAR
              description: 'Reason for disabling a service.'
              valuemap:
                name: 'Compute service disabling reason'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.disabled_reason
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed services report'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.services.raw[{#ID}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: service
            - uuid: 60c5f4461ad84269983168b359a0ff87
              name: 'Compute service [{#HOST}]:[{#BINARY}]:[{#ID}]: Raw data'
              type: DEPENDENT
              key: 'openstack.nova.services.raw[{#ID}]'
              history: '0'
              value_type: TEXT
              description: 'Raw data of the service.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$[?(@.id == "{#ID}")].first()'
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed services report'
              master_item:
                key: openstack.nova.services.get
              tags:
                - tag: component
                  value: raw
            - uuid: 8f123b2f902647b381b2c9a5af3bee80
              name: 'Compute service [{#HOST}]:[{#BINARY}]:[{#ID}]: State'
              type: DEPENDENT
              key: 'openstack.nova.services.state[{#ID}]'
              description: 'State of the service.'
              valuemap:
                name: 'General state'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.state
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed services report'
                - type: JAVASCRIPT
                  parameters:
                    - |
                      const idx = [
                      	'down',
                      	'up'
                      ].indexOf(value);
                      return idx !== -1 ? idx : 10;
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.services.raw[{#ID}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: service
              trigger_prototypes:
                - uuid: 9479c68ee2db4104ac44f47931d96929
                  expression: 'last(/OpenStack Nova by HTTP/openstack.nova.services.state[{#ID}])=0'
                  name: 'OpenStack Nova: Compute service [{#HOST}]:[{#BINARY}]:[{#ID}]: State is "down"'
                  opdata: 'Current state: {ITEM.LASTVALUE}'
                  priority: WARNING
                  description: 'State of the service is "down".'
                  manual_close: 'YES'
                  tags:
                    - tag: scope
                      value: availability
            - uuid: 65288a6f75094c74bbb04651c87cb323
              name: 'Compute service [{#HOST}]:[{#BINARY}]:[{#ID}]: Status'
              type: DEPENDENT
              key: 'openstack.nova.services.status[{#ID}]'
              description: 'Status of the service.'
              valuemap:
                name: 'General status'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.status
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed services report'
                - type: JAVASCRIPT
                  parameters:
                    - |
                      const idx = [
                      	'disabled',
                      	'enabled'
                      ].indexOf(value);
                      return idx !== -1 ? idx : 10;
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.services.raw[{#ID}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: service
          trigger_prototypes:
            - uuid: 177fa631136c4340816ee9e2cf90f1ac
              expression: 'last(/OpenStack Nova by HTTP/openstack.nova.services.status[{#ID}])=0 and length(last(/OpenStack Nova by HTTP/openstack.nova.services.disabled.reason[{#ID}]))>=0'
              name: 'OpenStack Nova: Compute service [{#HOST}]:[{#BINARY}]:[{#ID}]: Status is "disabled"'
              opdata: 'Current state: {ITEM.LASTVALUE1}, disabling reason: "{ITEM.VALUE2}"'
              priority: INFO
              description: 'Status of the server is disabled. Acknowledge to close the problem manually.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: availability
          master_item:
            key: openstack.nova.services.get
          lld_macro_paths:
            - lld_macro: '{#BINARY}'
              path: $.binary
            - lld_macro: '{#HOST}'
              path: $.host
            - lld_macro: '{#ID}'
              path: $.id
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
        - uuid: dba72b914e5c45fd9049ee5e4194bdcf
          name: 'Nova: Tenant discovery'
          type: DEPENDENT
          key: openstack.nova.tenant.discovery
          description: 'Discovers tenants and their usage data.'
          item_prototypes:
            - uuid: 73e8e9b39da64358948407efd6aded6b
              name: 'Tenant [{#TENANT_ID}]: Total disk usage'
              type: DEPENDENT
              key: 'openstack.nova.tenant.disk_usage[{#TENANT_ID}]'
              value_type: FLOAT
              units: '!hours'
              description: |
                Total disk usage hours for the current tenant (project).
                Multiplying the server disk size (in GiB) by hours the server exists, and then adding that all together for each server.
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.total_local_gb_usage
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed tenant report'
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.round(value * 100) / 100;'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.tenant.raw[{#TENANT_ID}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: tenant
            - uuid: c96dd7741d344b7f95f571640712faa0
              name: 'Tenant [{#TENANT_ID}]: Raw data'
              type: DEPENDENT
              key: 'openstack.nova.tenant.raw[{#TENANT_ID}]'
              history: '0'
              value_type: TEXT
              description: 'Raw data of the tenant.'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - '$[?(@.tenant_id == "{#TENANT_ID}")].first()'
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the tenant report'
              master_item:
                key: openstack.nova.tenant.get
              tags:
                - tag: component
                  value: raw
            - uuid: 634ccd12a49e440fb72f622f3fa36034
              name: 'Tenant [{#TENANT_ID}]: Total hours'
              type: DEPENDENT
              key: 'openstack.nova.tenant.total_hours[{#TENANT_ID}]'
              value_type: FLOAT
              units: '!hours'
              description: 'Total duration that the servers exist (in hours).'
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.total_hours
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed tenant report'
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.round(value * 100) / 100;'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.tenant.raw[{#TENANT_ID}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: tenant
            - uuid: ce4fccd4d93a4621af8982d3e6b9dcbb
              name: 'Tenant [{#TENANT_ID}]: Total memory usage'
              type: DEPENDENT
              key: 'openstack.nova.tenant.total_memory_mb_usage[{#TENANT_ID}]'
              value_type: FLOAT
              units: '!hours'
              description: |
                Total memory usage hours for the current tenant (project).
                Multiplying the server memory size (in MiB) by hours the server exists, and then adding that all together for each server.
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.total_memory_mb_usage
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed tenant report'
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.round(value * 100) / 100;'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.tenant.raw[{#TENANT_ID}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: tenant
            - uuid: eee30f1ee62c40839bcf623c8a0a6ae6
              name: 'Tenant [{#TENANT_ID}]: Total vCPUs usage'
              type: DEPENDENT
              key: 'openstack.nova.tenant.total_vcpu[{#TENANT_ID}]'
              value_type: FLOAT
              units: '!hours'
              description: |
                Total vCPU usage hours for the current tenant (project).
                Multiplying the number of virtual CPUs of the server by hours the server exists, and then adding that all together for each server.
              preprocessing:
                - type: JSONPATH
                  parameters:
                    - $.total_vcpus_usage
                  error_handler: CUSTOM_ERROR
                  error_handler_params: 'Could not parse the detailed tenant report'
                - type: JAVASCRIPT
                  parameters:
                    - 'return Math.round(value * 100) / 100;'
                - type: DISCARD_UNCHANGED_HEARTBEAT
                  parameters:
                    - 1h
              master_item:
                key: 'openstack.nova.tenant.raw[{#TENANT_ID}]'
              tags:
                - tag: component
                  value: application
                - tag: component
                  value: tenant
          graph_prototypes:
            - uuid: d456ccd13e38476bb43a948fd42fae1d
              name: 'Tenant [{#TENANT_ID}]: Total disk utilization'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'OpenStack Nova by HTTP'
                    key: 'openstack.nova.tenant.disk_usage[{#TENANT_ID}]'
            - uuid: 97466fabfd21468584658ffe480d7e22
              name: 'Tenant [{#TENANT_ID}]: Total hours utilization'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'OpenStack Nova by HTTP'
                    key: 'openstack.nova.tenant.total_hours[{#TENANT_ID}]'
            - uuid: a6b67816bd694539b0ebb77255ab479c
              name: 'Tenant [{#TENANT_ID}]: Total memory utilization'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'OpenStack Nova by HTTP'
                    key: 'openstack.nova.tenant.total_memory_mb_usage[{#TENANT_ID}]'
            - uuid: b8b3899c252945138cc8e241f37d8d40
              name: 'Tenant [{#TENANT_ID}]: Total vCPUs utilization'
              graph_items:
                - color: 199C0D
                  item:
                    host: 'OpenStack Nova by HTTP'
                    key: 'openstack.nova.tenant.total_vcpu[{#TENANT_ID}]'
          master_item:
            key: openstack.nova.tenant.get
          lld_macro_paths:
            - lld_macro: '{#TENANT_ID}'
              path: $.tenant_id
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1h
      tags:
        - tag: class
          value: cloud
        - tag: subclass
          value: computing
        - tag: subclass
          value: containers
        - tag: subclass
          value: management
        - tag: subclass
          value: virtualization
        - tag: target
          value: nova
        - tag: target
          value: openstack
      macros:
        - macro: '{$OPENSTACK.AVAILABILITY_ZONE.DISCOVERY.NAME.MATCHES}'
          value: '.*'
          description: 'Sets the zone name regex filter to use in availability zone discovery for including.'
          config:
            type: TEXT
            priority: '29'
            section_name: Filters
            label: 'Availability zone name filter (include)'
            description: 'Sets the zone name regex filter to use in availability zone discovery for including.'
        - macro: '{$OPENSTACK.AVAILABILITY_ZONE.DISCOVERY.NAME.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the zone name regex filter to use in availability zone discovery for excluding.'
          config:
            type: TEXT
            priority: '30'
            section_name: Filters
            label: 'Availability zone name filter (exclude)'
            description: 'Sets the zone name regex filter to use in availability zone discovery for excluding.'
        - macro: '{$OPENSTACK.HTTP.PROXY}'
          description: 'Sets the HTTP proxy for script and HTTP agent items. If this parameter is empty, then no proxy is used.'
          config:
            type: TEXT
            priority: '3'
            section_name: Other
            label: 'HTTP proxy'
            description: 'Sets the HTTP proxy for script and HTTP agent items. If this parameter is empty, then no proxy is used.'
        - macro: '{$OPENSTACK.HYPERVISOR.DISCOVERY.HOSTNAME.MATCHES}'
          value: '.*'
          description: 'Sets the hostname regex filter to use in hypervisor discovery for including.'
          config:
            type: TEXT
            priority: '23'
            section_name: Filters
            label: 'Hypervisor hostname filter (include)'
            description: 'Sets the hostname regex filter to use in hypervisor discovery for including.'
        - macro: '{$OPENSTACK.HYPERVISOR.DISCOVERY.HOSTNAME.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the hostname regex filter to use in hypervisor discovery for excluding.'
          config:
            type: TEXT
            priority: '24'
            section_name: Filters
            label: 'Hypervisor hostname filter (exclude)'
            description: 'Sets the hostname regex filter to use in hypervisor discovery for excluding.'
        - macro: '{$OPENSTACK.HYPERVISOR.DISCOVERY.IP.MATCHES}'
          value: '.*'
          description: 'Sets the host IP address regex filter to use in hypervisor discovery for including.'
          config:
            type: TEXT
            priority: '27'
            section_name: Filters
            label: 'Hypervisor host IP filter (include)'
            description: 'Sets the host IP address regex filter to use in hypervisor discovery for including.'
        - macro: '{$OPENSTACK.HYPERVISOR.DISCOVERY.IP.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the host IP address regex filter to use in hypervisor discovery for excluding.'
          config:
            type: TEXT
            priority: '28'
            section_name: Filters
            label: 'Hypervisor host IP filter (exclude)'
            description: 'Sets the host IP address regex filter to use in hypervisor discovery for excluding.'
        - macro: '{$OPENSTACK.HYPERVISOR.DISCOVERY.TYPE.MATCHES}'
          value: '.*'
          description: 'Sets the type regex filter to use in hypervisor discovery for including.'
          config:
            type: TEXT
            priority: '25'
            section_name: Filters
            label: 'Hypervisor type filter (include)'
            description: 'Sets the type regex filter to use in hypervisor discovery for including.'
        - macro: '{$OPENSTACK.HYPERVISOR.DISCOVERY.TYPE.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the type regex filter to use in hypervisor discovery for excluding.'
          config:
            type: TEXT
            priority: '26'
            section_name: Filters
            label: 'Hypervisor type filter (exclude)'
            description: 'Sets the type regex filter to use in hypervisor discovery for excluding.'
        - macro: '{$OPENSTACK.NOVA.CPU.UTIL.HIGH}'
          value: '90'
          description: 'Sets the percentage threshold for creating a high severity event about vCPU resource usage.'
          config:
            type: TEXT
            priority: '14'
            section_name: Thresholds
            label: 'vCPU usage high threshold (%)'
            description: 'Sets the percentage threshold for creating a high severity event about vCPU resource usage. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$OPENSTACK.NOVA.CPU.UTIL.WARN}'
          value: '75'
          description: 'Sets the percentage threshold for creating a warning severity event about vCPU resource usage.'
          config:
            type: TEXT
            priority: '13'
            section_name: Thresholds
            label: 'vCPU usage warning threshold (%)'
            description: 'Sets the percentage threshold for creating a warning severity event about vCPU resource usage. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$OPENSTACK.NOVA.INSTANCES.UTIL.HIGH}'
          value: '90'
          description: 'Sets the percentage threshold for creating a high severity event about instances resource count.'
          config:
            type: TEXT
            priority: '12'
            section_name: Thresholds
            label: 'Instances count high threshold (%)'
            description: 'Sets the percentage threshold for creating a high severity event about instances resource count. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$OPENSTACK.NOVA.INSTANCES.UTIL.WARN}'
          value: '75'
          description: 'Sets the percentage threshold for creating a warning severity event about instances resource count.'
          config:
            type: TEXT
            priority: '11'
            section_name: Thresholds
            label: 'Instances count warning threshold (%)'
            description: 'Sets the percentage threshold for creating a warning severity event about instances resource count. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$OPENSTACK.NOVA.INTERVAL.AVAILABILITY_ZONE}'
          value: 3m
          description: 'Interval for availability zone HTTP agent item query.'
          config:
            type: TEXT
            priority: '9'
            section_name: Other
            label: 'Availability zone query interval'
            description: 'Interval for availability zone HTTP agent item query.'
        - macro: '{$OPENSTACK.NOVA.INTERVAL.HYPERVISOR}'
          value: 3m
          description: 'Interval for hypervisor HTTP agent item query.'
          config:
            type: TEXT
            priority: '8'
            section_name: Other
            label: 'Hypervisor query interval'
            description: 'Interval for hypervisor HTTP agent item query.'
        - macro: '{$OPENSTACK.NOVA.INTERVAL.LIMITS}'
          value: 3m
          description: 'Interval for absolute limit HTTP agent item query.'
          config:
            type: TEXT
            priority: '5'
            section_name: Other
            label: 'Absolute limit query interval'
            description: 'Interval for absolute limit HTTP agent item query.'
        - macro: '{$OPENSTACK.NOVA.INTERVAL.SERVERS}'
          value: 3m
          description: 'Interval for server HTTP agent item queries.'
          config:
            type: TEXT
            priority: '6'
            section_name: Other
            label: 'Server query interval'
            description: 'Interval for server HTTP agent item queries.'
        - macro: '{$OPENSTACK.NOVA.INTERVAL.SERVICES}'
          value: 3m
          description: 'Interval for service HTTP agent item query.'
          config:
            type: TEXT
            priority: '7'
            section_name: Other
            label: 'Service query interval'
            description: 'Interval for service HTTP agent item query.'
        - macro: '{$OPENSTACK.NOVA.INTERVAL.TENANTS}'
          value: 3m
          description: 'Interval for tenant HTTP agent item query.'
          config:
            type: TEXT
            priority: '10'
            section_name: Other
            label: 'Tenant query interval'
            description: 'Interval for tenant HTTP agent item query.'
        - macro: '{$OPENSTACK.NOVA.RAM.UTIL.HIGH}'
          value: '90'
          description: 'Sets the percentage threshold for creating a high severity event about RAM resource usage.'
          config:
            type: TEXT
            priority: '16'
            section_name: Thresholds
            label: 'RAM usage high threshold (%)'
            description: 'Sets the percentage threshold for creating a high severity event about RAM resource usage. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$OPENSTACK.NOVA.RAM.UTIL.WARN}'
          value: '75'
          description: 'Sets the percentage threshold for creating a warning severity event about RAM resource usage.'
          config:
            type: TEXT
            priority: '15'
            section_name: Thresholds
            label: 'RAM usage warning threshold (%)'
            description: 'Sets the percentage threshold for creating a warning severity event about RAM resource usage. In the range from 0 to 100 inclusive.'
            regex: '^-?([0-9]+|(([0-9]+)\.([0-9]+)))$'
        - macro: '{$OPENSTACK.NOVA.SERVICE.URL}'
          description: 'API endpoint for Nova Service, e.g., https://local.openstack:8774/v2.1.'
          config:
            type: TEXT
            priority: '1'
            label: 'Nova API endpoint'
            description: 'API endpoint for Nova Service, e.g., https://local.openstack:8774/v2.1.'
            required: 'YES'
        - macro: '{$OPENSTACK.NOVA.TENANT.PERIOD}'
          value: m
          description: |
            Period for which tenant usage statistics will be queried. Possible values are:
             'y' - current year until now,
             'm' - current month until now,
             'w' - current week until now,
             'd' - current day until now.
          config:
            type: TEXT
            priority: '4'
            label: 'Tenant usage period'
            description: |
              Period for which tenant usage statistics will be queried. Possible values are:
               'y' - current year until now,
               'm' - current month until now,
               'w' - current week until now,
               'd' - current day until now.
        - macro: '{$OPENSTACK.SERVER.DISCOVERY.NAME.MATCHES}'
          value: '.*'
          description: 'Sets the server name regex filter to use in server discovery for including.'
          config:
            type: TEXT
            priority: '17'
            section_name: Filters
            label: 'Server name filter (include)'
            description: 'Sets the server name regex filter to use in server discovery for including.'
        - macro: '{$OPENSTACK.SERVER.DISCOVERY.NAME.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the server name regex filter to use in server discovery for excluding.'
          config:
            type: TEXT
            priority: '18'
            section_name: Filters
            label: 'Server name filter (exclude)'
            description: 'Sets the server name regex filter to use in server discovery for excluding.'
        - macro: '{$OPENSTACK.SERVICES.DISCOVERY.BINARY.MATCHES}'
          value: '.*'
          description: 'Sets the binary name regex filter to use in compute services discovery for including.'
          config:
            type: TEXT
            priority: '21'
            section_name: Filters
            label: 'Compute binary name filter (include)'
            description: 'Sets the binary name regex filter to use in compute services discovery for including.'
        - macro: '{$OPENSTACK.SERVICES.DISCOVERY.BINARY.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the binary name regex filter to use in compute services discovery for excluding.'
          config:
            type: TEXT
            priority: '22'
            section_name: Filters
            label: 'Compute binary name filter (exclude)'
            description: 'Sets the binary name regex filter to use in compute services discovery for excluding.'
        - macro: '{$OPENSTACK.SERVICES.DISCOVERY.HOST.MATCHES}'
          value: '.*'
          description: 'Sets the host name regex filter to use in compute services discovery for including.'
          config:
            type: TEXT
            priority: '19'
            section_name: Filters
            label: 'Compute host name filter (include)'
            description: 'Sets the host name regex filter to use in compute services discovery for including.'
        - macro: '{$OPENSTACK.SERVICES.DISCOVERY.HOST.NOT_MATCHES}'
          value: CHANGE_IF_NEEDED
          description: 'Sets the host name regex filter to use in compute services discovery for excluding.'
          config:
            type: TEXT
            priority: '20'
            section_name: Filters
            label: 'Compute host name filter (exclude)'
            description: 'Sets the host name regex filter to use in compute services discovery for excluding.'
        - macro: '{$OPENSTACK.TOKEN}'
          type: SECRET_TEXT
          description: 'API token for the monitoring user.'
          config:
            type: TEXT
            priority: '2'
            label: 'API token'
            description: 'API token for the monitoring user.'
            required: 'YES'
      dashboards:
        - uuid: 462016340f49447f80b5d2405f3a682a
          name: 'Nova: Limits overview'
          pages:
            - widgets:
                - type: graph
                  width: '36'
                  height: '5'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'OpenStack Nova by HTTP'
                        name: 'Nova: Instances utilization'
                    - type: STRING
                      name: reference
                      value: AAAAA
                - type: graph
                  'y': '5'
                  width: '72'
                  height: '5'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'OpenStack Nova by HTTP'
                        name: 'Nova: RAM utilization'
                    - type: STRING
                      name: reference
                      value: AAAAC
                - type: graph
                  x: '36'
                  width: '36'
                  height: '5'
                  fields:
                    - type: GRAPH
                      name: graphid.0
                      value:
                        host: 'OpenStack Nova by HTTP'
                        name: 'Nova: vCPUs utilization'
                    - type: STRING
                      name: reference
                      value: AAAAB
      valuemaps:
        - uuid: b5d0c4e859eb4b2d854f551e3d8aeff5
          name: 'Availability zone state'
          mappings:
            - value: '0'
              newvalue: Unavailable
            - value: '1'
              newvalue: Available
        - uuid: 1073ca0bea3f46ebbfbcaba628484be8
          name: 'Compute service disabling reason'
          mappings:
            - value: 'null'
              newvalue: N/A
        - uuid: a497438c723f4be88f452af2e8627613
          name: 'General state'
          mappings:
            - value: '0'
              newvalue: Down
            - value: '1'
              newvalue: Up
            - value: '10'
              newvalue: Unknown
        - uuid: c8109a75cda24fe1afec8ea68686cdb0
          name: 'General status'
          mappings:
            - value: '0'
              newvalue: Disabled
            - value: '1'
              newvalue: Enabled
            - value: '10'
              newvalue: Unknown
        - uuid: 375a709551d84ba3b0d4f24b6e0bd291
          name: 'Server status'
          mappings:
            - value: '0'
              newvalue: SHUTOFF
            - value: '1'
              newvalue: ACTIVE
            - value: '2'
              newvalue: PAUSED
            - value: '3'
              newvalue: BUILD
            - value: '4'
              newvalue: DELETED
            - value: '5'
              newvalue: ERROR
            - value: '6'
              newvalue: HARD_REBOOT
            - value: '7'
              newvalue: MIGRATING
            - value: '8'
              newvalue: PASSWORD
            - value: '9'
              newvalue: REBOOT
            - value: '10'
              newvalue: REBUILD
            - value: '11'
              newvalue: RESCUE
            - value: '12'
              newvalue: RESIZE
            - value: '13'
              newvalue: REVERT_RESIZE
            - value: '14'
              newvalue: SHELVED
            - value: '15'
              newvalue: SHELVED_OFFLOADED
            - value: '16'
              newvalue: SOFT_DELETED
            - value: '17'
              newvalue: SUSPENDED
            - value: '18'
              newvalue: UNKNOWN
            - value: '19'
              newvalue: VERIFY_RESIZE
            - value: '30'
              newvalue: Unknown
    - uuid: 8aa4557f6c3f4aadbc03447fca3af9f6
      template: 'Zabbix agent'
      name: 'Zabbix agent'
      description: |
        Use this template for agents reachable from Zabbix server/proxy (passive mode).
        
        Generated by official Zabbix template tool "Templator"
      wizard_ready: 'YES'
      readme: |
        ## Setup
        
        Set the timeout value after which the agent is considered unavailable.
      vendor:
        name: Zabbix
        version: 8.0-1
      groups:
        - name: Templates/Applications
      items:
        - uuid: f46c6142cf434df1b6abe9334bf6c84c
          name: 'Host name of Zabbix agent running'
          key: agent.hostname
          delay: 1h
          value_type: CHAR
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: system
        - uuid: 37a952edc12f47d6ac6f3ca04eb41326
          name: 'Zabbix agent ping'
          key: agent.ping
          description: 'The agent always returns "1" for this item. May be used in combination with `nodata()` for the availability check.'
          valuemap:
            name: 'Zabbix agent ping status'
          tags:
            - tag: component
              value: system
        - uuid: 3a6af03a083b4366bd1d4c6ccf06ca88
          name: 'Version of Zabbix agent running'
          key: agent.version
          delay: 1h
          value_type: CHAR
          preprocessing:
            - type: DISCARD_UNCHANGED_HEARTBEAT
              parameters:
                - 1d
          tags:
            - tag: component
              value: application
        - uuid: 49708b126e3844b898d2625f77c0030c
          name: 'Zabbix agent availability'
          type: INTERNAL
          key: 'zabbix[host,agent,available]'
          description: 'Used for monitoring the availability status of the agent.'
          valuemap:
            name: zabbix.host.available
          tags:
            - tag: component
              value: system
          triggers:
            - uuid: 6767f9c764bb42dfa961baacf879f45c
              expression: 'max(/Zabbix agent/zabbix[host,agent,available],{$AGENT.TIMEOUT})=0'
              name: 'Zabbix agent is not available'
              event_name: 'Zabbix agent is not available (for {$AGENT.TIMEOUT})'
              priority: AVERAGE
              description: 'For passive agents only, host availability is used with `{$AGENT.TIMEOUT}` as a time threshold.'
              manual_close: 'YES'
              tags:
                - tag: scope
                  value: availability
      tags:
        - tag: class
          value: software
        - tag: subclass
          value: logging
        - tag: subclass
          value: monitoring
        - tag: target
          value: zabbix-agent
      macros:
        - macro: '{$AGENT.TIMEOUT}'
          value: 3m
          description: 'Timeout after which agent is considered unavailable. Works only for agents reachable from Zabbix server/proxy (passive mode).'
          config:
            type: TEXT
            priority: '1'
            label: 'Seconds since the last Zabbix agent seen'
            description: 'Timeout after which agent is considered unavailable.'
      dashboards:
        - uuid: 9dbe822be2c0418592b33289b820256f
          name: 'Zabbix agent: Overview'
          pages:
            - name: Main
              widgets:
                - type: item
                  name: 'Agent availability'
                  width: '18'
                  height: '3'
                  fields:
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Zabbix agent'
                        key: agent.ping
                    - type: INTEGER
                      name: show.0
                      value: '4'
                    - type: INTEGER
                      name: show.1
                      value: '2'
                - type: item
                  name: Version
                  x: '18'
                  width: '18'
                  height: '3'
                  fields:
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Zabbix agent'
                        key: agent.version
                    - type: INTEGER
                      name: show.0
                      value: '4'
                    - type: INTEGER
                      name: show.1
                      value: '2'
                - type: graph
                  x: '36'
                  width: '36'
                  height: '5'
                  fields:
                    - type: ITEM
                      name: itemid.0
                      value:
                        host: 'Zabbix agent'
                        key: agent.ping
                    - type: STRING
                      name: reference
                      value: AAAAA
                    - type: INTEGER
                      name: source_type
                      value: '1'
      valuemaps:
        - uuid: 0d5e922550954e6bad89b22f1d9d0c65
          name: zabbix.host.available
          mappings:
            - value: '0'
              newvalue: 'not available'
            - value: '1'
              newvalue: available
            - value: '2'
              newvalue: unknown
        - uuid: e5a39fd666b04b70b6eea53e2373b564
          name: 'Zabbix agent ping status'
          mappings:
            - value: '1'
              newvalue: Up
  triggers:
    - uuid: 3b6324116e5940b5aaea72adca4dbbf6
      expression: '(last(/Alcatel Timetra TiMOS by SNMP/system.hw.uptime[hrSystemUptime.0])>0 and last(/Alcatel Timetra TiMOS by SNMP/system.hw.uptime[hrSystemUptime.0])<10m) or (last(/Alcatel Timetra TiMOS by SNMP/system.hw.uptime[hrSystemUptime.0])=0 and last(/Alcatel Timetra TiMOS by SNMP/system.net.uptime[sysUpTime.0])<10m)'
      name: 'Alcatel TiMOS: Host has been restarted'
      event_name: 'Alcatel TiMOS: {HOST.NAME} has been restarted (uptime < 10m)'
      priority: WARNING
      description: 'Uptime is less than 10 minutes.'
      manual_close: 'YES'
      dependencies:
        - name: 'Alcatel TiMOS: No SNMP data collection'
          expression: 'max(/Alcatel Timetra TiMOS by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
      tags:
        - tag: scope
          value: notice
    - uuid: 99208318a05445518bebae305dd53d34
      expression: '(last(/Brocade_Foundry Nonstackable by SNMP/system.hw.uptime[hrSystemUptime.0])>0 and last(/Brocade_Foundry Nonstackable by SNMP/system.hw.uptime[hrSystemUptime.0])<10m) or (last(/Brocade_Foundry Nonstackable by SNMP/system.hw.uptime[hrSystemUptime.0])=0 and last(/Brocade_Foundry Nonstackable by SNMP/system.net.uptime[sysUpTime.0])<10m)'
      name: 'Brocade Nonstackable: Host has been restarted'
      event_name: 'Brocade Nonstackable: {HOST.NAME} has been restarted (uptime < 10m)'
      priority: WARNING
      description: 'Uptime is less than 10 minutes.'
      manual_close: 'YES'
      dependencies:
        - name: 'Brocade Nonstackable: No SNMP data collection'
          expression: 'max(/Brocade_Foundry Nonstackable by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
      tags:
        - tag: scope
          value: notice
    - uuid: 7a51877b860a479da9bc9f02ee36e01f
      expression: '(last(/D-Link DES_DGS Switch by SNMP/system.hw.uptime[hrSystemUptime.0])>0 and last(/D-Link DES_DGS Switch by SNMP/system.hw.uptime[hrSystemUptime.0])<10m) or (last(/D-Link DES_DGS Switch by SNMP/system.hw.uptime[hrSystemUptime.0])=0 and last(/D-Link DES_DGS Switch by SNMP/system.net.uptime[sysUpTime.0])<10m)'
      name: 'D-Link DES_DGS Switch: Host has been restarted'
      event_name: 'D-Link DES_DGS Switch: {HOST.NAME} has been restarted (uptime < 10m)'
      priority: WARNING
      description: 'Uptime is less than 10 minutes.'
      manual_close: 'YES'
      dependencies:
        - name: 'D-Link DES_DGS Switch: No SNMP data collection'
          expression: 'max(/D-Link DES_DGS Switch by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
      tags:
        - tag: scope
          value: notice
    - uuid: 4246a064d33f428c8441491402ae8090
      expression: '(last(/Dell Force S-Series by SNMP/system.hw.uptime[hrSystemUptime.0])>0 and last(/Dell Force S-Series by SNMP/system.hw.uptime[hrSystemUptime.0])<10m) or (last(/Dell Force S-Series by SNMP/system.hw.uptime[hrSystemUptime.0])=0 and last(/Dell Force S-Series by SNMP/system.net.uptime[sysUpTime.0])<10m)'
      name: 'Dell Force S-Series: Host has been restarted'
      event_name: 'Dell Force S-Series: {HOST.NAME} has been restarted (uptime < 10m)'
      priority: WARNING
      description: 'Uptime is less than 10 minutes.'
      manual_close: 'YES'
      dependencies:
        - name: 'Dell Force S-Series: No SNMP data collection'
          expression: 'max(/Dell Force S-Series by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
      tags:
        - tag: scope
          value: notice
    - uuid: bb967f81aaad4a00ae7916ea80574ae0
      expression: '(last(/Extreme EXOS by SNMP/system.hw.uptime[hrSystemUptime.0])>0 and last(/Extreme EXOS by SNMP/system.hw.uptime[hrSystemUptime.0])<10m) or (last(/Extreme EXOS by SNMP/system.hw.uptime[hrSystemUptime.0])=0 and last(/Extreme EXOS by SNMP/system.net.uptime[sysUpTime.0])<10m)'
      name: 'Extreme EXOS: Host has been restarted'
      event_name: 'Extreme EXOS: {HOST.NAME} has been restarted (uptime < 10m)'
      priority: WARNING
      description: 'Uptime is less than 10 minutes.'
      manual_close: 'YES'
      dependencies:
        - name: 'Extreme EXOS: No SNMP data collection'
          expression: 'max(/Extreme EXOS by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
      tags:
        - tag: scope
          value: notice
    - uuid: 132d3e7a1fab4cc08fcbb12eef4e9494
      expression: |
        avg(/Extreme EXOS by SNMP/sensor.temp.value[extremeCurrentTemperature.0],5m)>{$TEMP_CRIT}
        or
        last(/Extreme EXOS by SNMP/sensor.temp.status[extremeOverTemperatureAlarm.0])={$TEMP_CRIT_STATUS}
      recovery_mode: RECOVERY_EXPRESSION
      recovery_expression: 'max(/Extreme EXOS by SNMP/sensor.temp.value[extremeCurrentTemperature.0],5m)<{$TEMP_CRIT}-3'
      name: 'Extreme EXOS: Temperature is above critical threshold'
      event_name: 'Extreme EXOS: Temperature is above critical threshold: >{$TEMP_CRIT}'
      opdata: 'Current value: {ITEM.LASTVALUE1}'
      priority: HIGH
      description: 'This trigger uses temperature sensor values as well as temperature sensor status if available'
      tags:
        - tag: scope
          value: availability
        - tag: scope
          value: performance
    - uuid: 0e3713bdf52e40d692cf256ac2a01988
      expression: '(last(/Huawei OceanStor 5300 V5 by SNMP/system.hw.uptime[hrSystemUptime.0])>0 and last(/Huawei OceanStor 5300 V5 by SNMP/system.hw.uptime[hrSystemUptime.0])<10m) or (last(/Huawei OceanStor 5300 V5 by SNMP/system.hw.uptime[hrSystemUptime.0])=0 and last(/Huawei OceanStor 5300 V5 by SNMP/system.net.uptime[sysUpTime.0])<10m)'
      name: 'Huawei OceanStor 5300 V5: Host has been restarted'
      event_name: 'Huawei OceanStor 5300 V5: {HOST.NAME} has been restarted (uptime < 10m)'
      priority: WARNING
      description: 'Uptime is less than 10 minutes.'
      manual_close: 'YES'
      dependencies:
        - name: 'Huawei OceanStor 5300 V5: No SNMP data collection'
          expression: 'max(/Huawei OceanStor 5300 V5 by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
      tags:
        - tag: scope
          value: notice
    - uuid: d79dc9c1dab142d18791172e6df0a4e9
      expression: 'last(/Jenkins by HTTP/jenkins.disk_space)=0 and length(last(/Jenkins by HTTP/jenkins.disk_space.message))>0'
      name: 'Jenkins: Disk space is too low'
      priority: WARNING
      description: |
        Jenkins disk space monitors are reporting the disk space as less than the configured threshold. The message will reference the first node which fails this check.
        Health check message: {{ITEM.LASTVALUE2}.regsub("(.*)",\1)}
      tags:
        - tag: scope
          value: capacity
    - uuid: 121e23bd172d447cb975595685495a93
      expression: 'last(/Jenkins by HTTP/jenkins.plugins)=0 and length(last(/Jenkins by HTTP/jenkins.plugins.message))>0'
      name: 'Jenkins: One or more Jenkins plugins failed to start'
      priority: INFO
      description: |
        A failure is typically indicative of a potential issue within the Jenkins installation that will either be solved by explicitly disabling the failing plugin(s) or by resolving the corresponding plugin dependency issues.
        Health check message: {{ITEM.LASTVALUE2}.regsub("(.*)",\1)}
      manual_close: 'YES'
      tags:
        - tag: scope
          value: notice
    - uuid: 34de8503a2c84fffb1beb701a4a991ab
      expression: 'last(/Jenkins by HTTP/jenkins.temporary_space)=0 and length(last(/Jenkins by HTTP/jenkins.temporary_space.message))>0'
      name: 'Jenkins: Temporary space is too low'
      priority: WARNING
      description: |
        Jenkins temporary space monitors are reporting the temporary space as less than the configured threshold. The message will reference the first node which fails this check.
        Health check message: {{ITEM.LASTVALUE2}.regsub("(.*)",\1)}
      tags:
        - tag: scope
          value: capacity
    - uuid: f0a09eb0743948bb8f52a4c28aa728c5
      expression: 'last(/Jenkins by HTTP/jenkins.thread_deadlock)=0 and length(last(/Jenkins by HTTP/jenkins.thread_deadlock.message))>0'
      name: 'Jenkins: There are deadlocked threads in Jenkins master JVM'
      priority: WARNING
      description: |
        There are any deadlocked threads in the Jenkins master JVM.
        Health check message: {{ITEM.LASTVALUE2}.regsub('(.*)',\1)}
      tags:
        - tag: scope
          value: performance
    - uuid: a91e17e5f510499eb6d0848703cf3df1
      expression: 'min(/Jira Data Center by JMX/jmx["com.atlassian.jira:name=BasicDataSource,connectionpool=connections",NumActive],5m)=last(/Jira Data Center by JMX/jmx["com.atlassian.jira:name=BasicDataSource,connectionpool=connections",MaxTotal])'
      name: 'Jira Data Center: DB: Connection limit reached'
      opdata: 'active {ITEM.LASTVALUE1} from {ITEM.LASTVALUE2}'
      priority: WARNING
      manual_close: 'YES'
      tags:
        - tag: scope
          value: performance
    - uuid: 8de58465caad4a188a1a84140ec9ebcf
      expression: '100*min(/Jira Data Center by JMX/jmx["com.atlassian.jira:name=BasicDataSource,connectionpool=connections",NumActive],5m)/last(/Jira Data Center by JMX/jmx["com.atlassian.jira:name=BasicDataSource,connectionpool=connections",MaxTotal])>{$JIRA_DC.DB.CONNECTION.USAGE.WARN}'
      name: 'Jira Data Center: DB: Connection usage is near the limit'
      event_name: 'Jira Data Center: DB: Connection usage is near the limit (above {$JIRA_DC.DB.CONNECTION.USAGE.WARN}%)'
      opdata: 'active {ITEM.LASTVALUE1} from {ITEM.LASTVALUE2}'
      priority: WARNING
      manual_close: 'YES'
      tags:
        - tag: scope
          value: performance
    - uuid: 7fc17e55907041c2a907310bd45f14be
      expression: 'max(/Jira Data Center by JMX/jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=jobRunning,name=value",Value],15m)=0 and min(/Jira Data Center by JMX/jmx["com.atlassian.jira:type=metrics,category00=mail,category01=queue,category02=numItems,name=value",Value],15m)>0'
      name: 'Jira Data Center: Mail: Queue job is not running'
      priority: AVERAGE
      description: |
        It should be running when its queue is not empty.
        Might indicate SMTP server connection problems.
      manual_close: 'YES'
      tags:
        - tag: scope
          value: availability
    - uuid: 23e25e580543411ab8ffc2a4c1ca3c54
      expression: '(last(/Juniper by SNMP/system.hw.uptime[hrSystemUptime.0])>0 and last(/Juniper by SNMP/system.hw.uptime[hrSystemUptime.0])<10m) or (last(/Juniper by SNMP/system.hw.uptime[hrSystemUptime.0])=0 and last(/Juniper by SNMP/system.net.uptime[sysUpTime.0])<10m)'
      name: 'Juniper: Host has been restarted'
      event_name: 'Juniper: {HOST.NAME} has been restarted (uptime < 10m)'
      priority: WARNING
      description: 'Uptime is less than 10 minutes.'
      manual_close: 'YES'
      dependencies:
        - name: 'Juniper: No SNMP data collection'
          expression: 'max(/Juniper by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
      tags:
        - tag: scope
          value: notice
    - uuid: d68e4595fd4c4e5a9307b268cfe06b3e
      expression: '(last(/Netgear Fastpath by SNMP/system.hw.uptime[hrSystemUptime.0])>0 and last(/Netgear Fastpath by SNMP/system.hw.uptime[hrSystemUptime.0])<10m) or (last(/Netgear Fastpath by SNMP/system.hw.uptime[hrSystemUptime.0])=0 and last(/Netgear Fastpath by SNMP/system.net.uptime[sysUpTime.0])<10m)'
      name: 'Netgear Fastpath: Host has been restarted'
      event_name: 'Netgear Fastpath: {HOST.NAME} has been restarted (uptime < 10m)'
      priority: WARNING
      description: 'Uptime is less than 10 minutes.'
      manual_close: 'YES'
      dependencies:
        - name: 'Netgear Fastpath: No SNMP data collection'
          expression: 'max(/Netgear Fastpath by SNMP/zabbix[host,snmp,available],{$SNMP.TIMEOUT})=0'
      tags:
        - tag: scope
          value: notice
    - uuid: 3dbae725014d4f289e20f002f2674dc7
      expression: 'last(/OpenStack Nova by HTTP/openstack.nova.limits.instances.current) >= ({$OPENSTACK.NOVA.INSTANCES.UTIL.WARN} / 100 * last(/OpenStack Nova by HTTP/openstack.nova.limits.instances.max))'
      name: 'OpenStack Nova: Current instances count is high'
      event_name: 'OpenStack Nova: Current instances count is high (used >= {$OPENSTACK.NOVA.INSTANCES.UTIL.WARN}%)'
      opdata: 'Current: {ITEM.LASTVALUE1}, MAX: {ITEM.LASTVALUE2}'
      priority: WARNING
      description: 'Current instances count has exceeded {$OPENSTACK.NOVA.INSTANCES.UTIL.WARN}% of the max available instances count.'
      dependencies:
        - name: 'OpenStack Nova: Current instances count is too high'
          expression: 'last(/OpenStack Nova by HTTP/openstack.nova.limits.instances.current) >= ({$OPENSTACK.NOVA.INSTANCES.UTIL.HIGH} / 100 * last(/OpenStack Nova by HTTP/openstack.nova.limits.instances.max))'
      tags:
        - tag: scope
          value: capacity
    - uuid: 22592fabc09d416598fb4fb806048040
      expression: 'last(/OpenStack Nova by HTTP/openstack.nova.limits.instances.current) >= ({$OPENSTACK.NOVA.INSTANCES.UTIL.HIGH} / 100 * last(/OpenStack Nova by HTTP/openstack.nova.limits.instances.max))'
      name: 'OpenStack Nova: Current instances count is too high'
      event_name: 'OpenStack Nova: Current instances count is too high (used >= {$OPENSTACK.NOVA.INSTANCES.UTIL.HIGH}%)'
      opdata: 'Current: {ITEM.LASTVALUE1}, MAX: {ITEM.LASTVALUE2}'
      priority: HIGH
      description: 'Current instances count has exceeded {$OPENSTACK.NOVA.INSTANCES.UTIL.HIGH}% of the max available instances count.'
      tags:
        - tag: scope
          value: capacity
    - uuid: c9d9eca4b3e540f491210b5c2312e1ba
      expression: 'last(/OpenStack Nova by HTTP/openstack.nova.limits.ram.current) >= ({$OPENSTACK.NOVA.RAM.UTIL.WARN} / 100 * last(/OpenStack Nova by HTTP/openstack.nova.limits.ram.max))'
      name: 'OpenStack Nova: Current RAM usage is high'
      event_name: 'OpenStack Nova: Current RAM usage is high (used >= {$OPENSTACK.NOVA.RAM.UTIL.WARN}%)'
      opdata: 'Current: {ITEM.LASTVALUE1}, MAX: {ITEM.LASTVALUE2}'
      priority: WARNING
      description: 'Current RAM usage has exceeded {$OPENSTACK.NOVA.RAM.UTIL.WARN}% of the max available RAM usage.'
      dependencies:
        - name: 'OpenStack Nova: Current RAM usage is too high'
          expression: 'last(/OpenStack Nova by HTTP/openstack.nova.limits.ram.current) >= ({$OPENSTACK.NOVA.RAM.UTIL.HIGH} / 100 * last(/OpenStack Nova by HTTP/openstack.nova.limits.ram.max))'
      tags:
        - tag: scope
          value: capacity
    - uuid: 9dfd643fb555419c9c3200a07cc7647e
      expression: 'last(/OpenStack Nova by HTTP/openstack.nova.limits.ram.current) >= ({$OPENSTACK.NOVA.RAM.UTIL.HIGH} / 100 * last(/OpenStack Nova by HTTP/openstack.nova.limits.ram.max))'
      name: 'OpenStack Nova: Current RAM usage is too high'
      event_name: 'OpenStack Nova: Current RAM usage is too high (used >= {$OPENSTACK.NOVA.RAM.UTIL.HIGH}%)'
      opdata: 'Current: {ITEM.LASTVALUE1}, MAX: {ITEM.LASTVALUE2}'
      priority: HIGH
      description: 'Current RAM usage has exceeded {$OPENSTACK.NOVA.RAM.UTIL.HIGH}% of the max available RAM usage.'
      tags:
        - tag: scope
          value: capacity
    - uuid: 85b1a132602344e39a50ef10b29fca15
      expression: 'last(/OpenStack Nova by HTTP/openstack.nova.limits.vcpu.current) >= ({$OPENSTACK.NOVA.CPU.UTIL.WARN} / 100 * last(/OpenStack Nova by HTTP/openstack.nova.limits.vcpu.max))'
      name: 'OpenStack Nova: Current vCPU usage is high'
      event_name: 'OpenStack Nova: Current vCPU usage is high (used >= {$OPENSTACK.NOVA.CPU.UTIL.WARN}%)'
      opdata: 'Current: {ITEM.LASTVALUE1}, MAX: {ITEM.LASTVALUE2}'
      priority: WARNING
      description: 'Current vCPU usage has exceeded {$OPENSTACK.NOVA.CPU.UTIL.WARN}% of the max available vCPU usage.'
      dependencies:
        - name: 'OpenStack Nova: Current vCPU usage is too high'
          expression: 'last(/OpenStack Nova by HTTP/openstack.nova.limits.vcpu.current) >= ({$OPENSTACK.NOVA.CPU.UTIL.HIGH} / 100 * last(/OpenStack Nova by HTTP/openstack.nova.limits.vcpu.max))'
      tags:
        - tag: scope
          value: capacity
    - uuid: e62a7fb598b34a0cb5bee6bc0370f7dd
      expression: 'last(/OpenStack Nova by HTTP/openstack.nova.limits.vcpu.current) >= ({$OPENSTACK.NOVA.CPU.UTIL.HIGH} / 100 * last(/OpenStack Nova by HTTP/openstack.nova.limits.vcpu.max))'
      name: 'OpenStack Nova: Current vCPU usage is too high'
      event_name: 'OpenStack Nova: Current vCPU usage is too high (used >= {$OPENSTACK.NOVA.CPU.UTIL.HIGH}%)'
      opdata: 'Current: {ITEM.LASTVALUE1}, MAX: {ITEM.LASTVALUE2}'
      priority: HIGH
      description: 'Current vCPU usage has exceeded {$OPENSTACK.NOVA.CPU.UTIL.HIGH}% of the max available vCPU usage.'
      tags:
        - tag: scope
          value: capacity
  graphs:
    - uuid: 1950de4a315f487f9382d82c2dba1778
      name: 'Acronis CPC: Alerts overview'
      type: PIE
      graph_items:
        - color: 1EA7FD
          item:
            host: 'Acronis Cyber Protect Cloud MSP by HTTP'
            key: acronis.cpc.alerts.severity.info
        - sortorder: '1'
          color: 66BF3C
          item:
            host: 'Acronis Cyber Protect Cloud MSP by HTTP'
            key: acronis.cpc.alerts.severity.ok
        - sortorder: '2'
          color: E69D00
          item:
            host: 'Acronis Cyber Protect Cloud MSP by HTTP'
            key: acronis.cpc.alerts.severity.warn
        - sortorder: '3'
          color: FF4400
          item:
            host: 'Acronis Cyber Protect Cloud MSP by HTTP'
            key: acronis.cpc.alerts.severity.err
        - sortorder: '4'
          color: E8083E
          item:
            host: 'Acronis Cyber Protect Cloud MSP by HTTP'
            key: acronis.cpc.alerts.severity.crit
    - uuid: 7300eff1609b497aa7628ed83b36a481
      name: 'Alcatel Timetra TiMOS: CPU utilization'
      ymin_type_1: FIXED
      ymax_type_1: FIXED
      graph_items:
        - drawtype: GRADIENT_LINE
          color: 199C0D
          item:
            host: 'Alcatel Timetra TiMOS by SNMP'
            key: 'system.cpu.util[sgiCpuUsage.0]'
    - uuid: e404b522555e4f9092930ce870649828
      name: 'Alcatel Timetra TiMOS: Memory usage'
      ymin_type_1: FIXED
      graph_items:
        - drawtype: BOLD_LINE
          color: 199C0D
          item:
            host: 'Alcatel Timetra TiMOS by SNMP'
            key: 'vm.memory.total[snmp]'
        - sortorder: '1'
          drawtype: GRADIENT_LINE
          color: F63100
          item:
            host: 'Alcatel Timetra TiMOS by SNMP'
            key: 'vm.memory.available[sgiKbMemoryAvailable.0]'
    - uuid: 111cde007d8342f9b743f08f12380ec3
      name: 'Alcatel Timetra TiMOS: Memory utilization'
      ymin_type_1: FIXED
      ymax_type_1: FIXED
      graph_items:
        - drawtype: GRADIENT_LINE
          color: 199C0D
          item:
            host: 'Alcatel Timetra TiMOS by SNMP'
            key: 'vm.memory.util[vm.memory.util.0]'
    - uuid: 569601f45b394cc68ddf75f37c086ec2
      name: 'Brocade: CPU utilization'
      ymin_type_1: FIXED
      ymax_type_1: FIXED
      graph_items:
        - drawtype: GRADIENT_LINE
          color: 199C0D
          item:
            host: 'Brocade_Foundry Nonstackable by SNMP'
            key: 'system.cpu.util[snAgGblCpuUtil1MinAvg.0]'
    - uuid: e9b341d71fde4609b1e38d917042fd3b
      name: 'Brocade: Memory utilization'
      ymin_type_1: FIXED
      ymax_type_1: FIXED
      graph_items:
        - drawtype: GRADIENT_LINE
          color: 199C0D
          item:
            host: 'Brocade_Foundry Nonstackable by SNMP'
            key: 'vm.memory.util[snAgGblDynMemUtil.0]'
    - uuid: cd6d0f71490c4bbe82a72ca52d9d3044
      name: 'D-Link DES_DGS Switch: CPU utilization'
      ymin_type_1: FIXED
      ymax_type_1: FIXED
      graph_items:
        - drawtype: GRADIENT_LINE
          color: 199C0D
          item:
            host: 'D-Link DES_DGS Switch by SNMP'
            key: 'system.cpu.util[agentCPUutilizationIn1min.0]'
    - uuid: 9dc8bc10d4044889bd53c56f1da45c60
      name: 'Extreme EXOS: CPU utilization'
      ymin_type_1: FIXED
      ymax_type_1: FIXED
      graph_items:
        - drawtype: GRADIENT_LINE
          color: 199C0D
          item:
            host: 'Extreme EXOS by SNMP'
            key: 'system.cpu.util[extremeCpuMonitorTotalUtilization.0]'
    - uuid: 3fdcf5d5d81f4bf3b854984917cb3d32
      name: 'Jenkins: Executors'
      graph_items:
        - color: 199C0D
          item:
            host: 'Jenkins by HTTP'
            key: jenkins.executor.count
        - sortorder: '1'
          color: F63100
          item:
            host: 'Jenkins by HTTP'
            key: jenkins.executor.free
        - sortorder: '2'
          color: 00611C
          item:
            host: 'Jenkins by HTTP'
            key: jenkins.executor.in_use
    - uuid: 6278f5e2def74f2ba8e92872d26a8940
      name: 'Jenkins: Queues'
      graph_items:
        - color: 199C0D
          item:
            host: 'Jenkins by HTTP'
            key: jenkins.queue.blocked
        - sortorder: '1'
          color: F63100
          item:
            host: 'Jenkins by HTTP'
            key: jenkins.queue.size
        - sortorder: '2'
          color: 00611C
          item:
            host: 'Jenkins by HTTP'
            key: jenkins.queue.buildable
        - sortorder: '3'
          color: F7941D
          item:
            host: 'Jenkins by HTTP'
            key: jenkins.queue.pending
        - sortorder: '4'
          color: FC6EA3
          item:
            host: 'Jenkins by HTTP'
            key: jenkins.queue.stuck
    - uuid: bcd1db5068794edd9a3d74f32bd018ed
      name: 'Netgear Fastpath: CPU utilization'
      ymin_type_1: FIXED
      ymax_type_1: FIXED
      graph_items:
        - drawtype: GRADIENT_LINE
          color: 199C0D
          item:
            host: 'Netgear Fastpath by SNMP'
            key: 'system.cpu.util[agentSwitchCpuProcessTotalUtilization.0]'
    - uuid: 1cb7d7036dfe4999b0489cc8bfa254aa
      name: 'Netgear Fastpath: Memory usage'
      ymin_type_1: FIXED
      graph_items:
        - drawtype: BOLD_LINE
          color: 199C0D
          item:
            host: 'Netgear Fastpath by SNMP'
            key: 'vm.memory.total[agentSwitchCpuProcessMemAvailable.0]'
        - sortorder: '1'
          drawtype: GRADIENT_LINE
          color: F63100
          item:
            host: 'Netgear Fastpath by SNMP'
            key: 'vm.memory.available[agentSwitchCpuProcessMemFree.0]'
    - uuid: 88124449b8984ee6bca46269d1d3f1ae
      name: 'Netgear Fastpath: Memory utilization'
      ymin_type_1: FIXED
      ymax_type_1: FIXED
      graph_items:
        - drawtype: GRADIENT_LINE
          color: 199C0D
          item:
            host: 'Netgear Fastpath by SNMP'
            key: 'vm.memory.util[memoryUsedPercentage.0]'
    - uuid: 462db790ba6c451b8d2d4f4669ed11b5
      name: 'Nova: Instances utilization'
      graph_items:
        - color: 00FF00
          item:
            host: 'OpenStack Nova by HTTP'
            key: openstack.nova.limits.instances.current
        - sortorder: '1'
          drawtype: DASHED_LINE
          color: FF0000
          item:
            host: 'OpenStack Nova by HTTP'
            key: openstack.nova.limits.instances.max
    - uuid: d65df309a6ae47f48ebf245257750e58
      name: 'Nova: RAM utilization'
      graph_items:
        - color: 00FF00
          item:
            host: 'OpenStack Nova by HTTP'
            key: openstack.nova.limits.ram.current
        - sortorder: '1'
          drawtype: DASHED_LINE
          color: FF0000
          item:
            host: 'OpenStack Nova by HTTP'
            key: openstack.nova.limits.ram.max
    - uuid: 5c7434d968b64c118138e413758630c0
      name: 'Nova: vCPUs utilization'
      graph_items:
        - color: 00FF00
          item:
            host: 'OpenStack Nova by HTTP'
            key: openstack.nova.limits.vcpu.current
        - sortorder: '1'
          drawtype: DASHED_LINE
          color: FF0000
          item:
            host: 'OpenStack Nova by HTTP'
            key: openstack.nova.limits.vcpu.max
    - uuid: 9401d60314c441a5a04d7a9709c6970e
      name: 'OceanStor 5300 V5: Capacity'
      graph_items:
        - color: 199C0D
          item:
            host: 'Huawei OceanStor 5300 V5 by SNMP'
            key: 'huawei.5300.v5[totalCapacity]'
        - sortorder: '1'
          color: F63100
          item:
            host: 'Huawei OceanStor 5300 V5 by SNMP'
            key: 'huawei.5300.v5[usedCapacity]'
