Channels Monitoring¶
Abstract
This chapter explains how to monitor channels.
Overview¶
The punch channel monitoring service is in charge of monitoring all the channels of a tenant. It computes and publishes an overall health status periodically in Elasticsearch documents, that can in turn be queried by an external supervision application. A standard Kibana dashboard is also available.
Configuration¶
The punch channels-monitoring
application is a native punch application.
You can deploy in a standard channel and run it in shiva.
Here is the punch standalone example: the channel_structure.yaml file is as follows
version: '6.0'
start_by_tenant: true
stop_by_tenant: true
applications:
- name: channels_monitoring
runtime: shiva
cluster: common
command: channels-monitoring
args:
- channels_monitoring.yaml
- --childopts
- -Xms128m -Xmx256m
resources: []
The channels-monitoring
application takes a single configuration file argument.
monitoring_interval: 30
elasticsearch:
es_cluster_id: common
es_platform_logs_index: platform-*logs-*
es_topologies_metrics_index: mytenant-metrics-*
reporters:
- type: kafka
This sample configuration means that all channels will be monitored every 60 seconds.
Parameters¶
Mandatory¶
-
monitoring_interval
(integer)The interval in seconds between two health check of services.
-
elasticsearch.es_cluster_id
(string)The cluster where all logs and metrics data are stored.
-
elasticsearch.es_platform_logs_index
(string)Index where to get logs information.
-
elasticsearch.es_topologies_metrics_index
(string array)Index where to get metrics information.
Security Parameters¶
monitoring_interval: 10
elasticsearch:
es_cluster_id: es_search
es_platform_logs_index: platform-*logs-*
es_topologies_metrics_index: mytenant-metrics-*
credentials:
user: bob
password: pass
ssl: false
-
credentials.user
(string)Username to authenticate to ES cluster. Needs
credentials.password
configuration. -
credentials.password
(string)Password to authenticate to ES cluster. Needs
credentials.user
configuration. -
credentials.token
(string)Token string to authenticate to ES cluster. Needs
credentials.token_type
configuration. -
credentials.token_type
(string)Token type used to authenticate to ES cluster. Needs
credentials.token
configuration. -
ssl
(Boolean)If true, encrypt the connection to the ES cluster with TLS
-
ssl_private_key
(String)Path to the client's private key for TLS connection
-
ssl_certificate
(String)Path to the client's public key for TLS connection
-
ssl_trusted_certificate
(String)Path to the client's CA file for TLS connection
-
ssl_keystore_pass
(string)Truststore password
-
ssl_keystore_location
(string)Path to Keystore
-
ssl_truststore_pass
(string)Keystore password
-
ssl_truststore_location
(string)Path to Truststore
Try It¶
On a standalone , the channel monitoring service is included in the configuration of both the platform and mytenant tenants.
Simply start it as follows:
channelctl --tenant mytenant start --channel monitoring