=================== Monitoring coverage =================== Multiple factors define the monitoring coverage to simulate common customer use cases. The overall matrix configuration of all combined targets, sources and scopes is located at: https://github.com/opentelekomcloud-infra/stackmon-config/blob/main/config.yaml Monitored targets ################# * EU-DE * EU-NL * EU-CH2 (Swisscloud) Monitoring sources ################## * Inside OTC (eu-de, eu-ch2) * Outside OTC (Swisscloud) Scope of monitoring ################### * Endpoints and HTTP query requests * all services * multiple GET queries * Static Resources * not yet in SD2 * specific services * availability of the resource or resource functionality * Global resources * not yet in SD2 * OTC console * OTC docs portal * OTC public site Example of monitoring coverage: .. code:: yaml # Mapping of environments to test projects - env: production_eu-de monitoring_zone: eu-de db_entry: apimon.apimon plugins: - name: apimon schedulers_inventory_group_name: schedulers executors_inventory_group_name: executors tests_project: apimon tasks: - scenario1_token.yaml - name: epmon epmon_inventory_group_name: epmon_de cloud_name: production_eu-de # env in zone has few creds. We need to pick one config_elements: - antiddos - antiddos_skip_bad_type - as - as_skip_v1 - bms_skip - cce_skip_unver - cce - ces - ces_skip_v1 - compute - css - cts_skip_unver - cts - data_protect_skip - database_skip - dcs - dcs_skip_v1 - dds - deh - dis_skip_unver - dis - dms - dms_skip_v2 - dns - dws - dws_skip_v1 - identity - image - kms_skip_unver - kms - mrs - nat - network - object_skip - object_store - orchestration - rds_skip_unver - rds_skip_v1 - rds - sdrs - sfsturbo - share - smn - smn_skip_v2 - volume_skip_v2 - volume - env: production_eu-nl monitoring_zone: eu-de db_entry: apimon.apimon plugins: - name: apimon schedulers_inventory_group_name: schedulers executors_inventory_group_name: executors #epmons_inventory_group_name: epmons tests_project: apimon tasks: - scenario1_token.yaml - name: epmon epmon_inventory_group_name: epmon_de cloud_name: production_eu-nl # env in zone has few creds. We need to pick one config_elements: - antiddos - antiddos_skip_bad_type - as - as_skip_v1 - bms_skip - cce_skip_unver - cce - ces - ces_skip_v1 - compute - css - cts_skip_unver - cts - data_protect_skip - database_skip - dcs - dcs_skip_v1 - dds - deh - dis_skip_unver - dis - dms - dms_skip_v2 - dns - dws - dws_skip_v1 - identity - image - kms_skip_unver - kms - mrs - nat - network - object_skip - object_store - orchestration - rds_skip_unver - rds_skip_v1 - rds - sdrs - sfsturbo - share - smn - smn_skip_v2 - volume_skip_v2 - volume Parameter "env" defines what is the target for monitoring (which region is to be monitored). Parameter "monitoring_zone" defines the source of monitoring (from which region the monitoring will be triggered) As Cloudmon is plugin based framework there's possibility to add as many plugins as required. Currently 2 plugins are enabled: - apimon - epmon Apimon plugin triggers scenario-based Ansible playbooks which simulate the customer use-cases including also creation of resources (POST requests). Currently only one scenario is enabled for token authorization (scenario1_token.yaml). As Status Dasbhoard only evaluates the HTTP GET metrics other scenarios are not yet enabled. Playbooks are stored on github (https://github.com/stackmon/apimon-tests/tree/main/playbooks). EpMon plugin defines which service entries will be used in which specific environment. Services which are not present in respective environment won't have entry in this config as well.