integration_test/third_party_apps_test/applications/redis/metadata.yaml (195 lines of code) (raw):

# Copyright 2022 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. public_url: "https://cloud.google.com/stackdriver/docs/solutions/agents/ops-agent/third-party/redis" app_url: "http://redis.io/" short_name: Redis long_name: Redis logo_path: /images/launcher/logos/redis.png # supplied by google technical writer description: |- The Redis integration collects metrics related to performance and usage. Performance metrics focus on CPU, memory, and network throughput, and usage metrics focus on keys, commands, and replication. The integration also collects Redis logs and parses them into a JSON payload. During this process, the symbols for role and level are transformed into a human readable format. minimum_supported_agent_version: metrics: 2.7.0 logging: 2.5.0 supported_operating_systems: linux # TODO: Fix errors and enable tests on all platforms. platforms_to_skip: - suse-cloud:sles-12 # File '/repositories/server:/monitoring/SLE_12/server:monitoring.repo' not found - suse-cloud:sles-15 # File '/repositories/server:database/SLE_15/server:database.repo' not found - suse-cloud:sles-15-arm64 supported_app_version: ["6.2"] expected_metrics: - type: workload.googleapis.com/redis.clients.blocked value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.clients.connected value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.clients.max_input_buffer value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] representative: true - type: workload.googleapis.com/redis.clients.max_output_buffer value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.commands.processed value_type: INT64 kind: CUMULATIVE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.connections.received value_type: INT64 kind: CUMULATIVE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.connections.rejected value_type: INT64 kind: CUMULATIVE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.cpu.time value_type: DOUBLE kind: CUMULATIVE monitored_resources: [gce_instance] labels: - name: state value_regex: .* - type: workload.googleapis.com/redis.keys.evicted value_type: INT64 kind: CUMULATIVE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.keys.expired value_type: INT64 kind: CUMULATIVE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.keyspace.hits value_type: INT64 kind: CUMULATIVE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.keyspace.misses value_type: INT64 kind: CUMULATIVE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.latest_fork value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.memory.fragmentation_ratio value_type: DOUBLE kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.memory.lua value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.memory.peak value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.memory.rss value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.memory.used value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.net.input value_type: INT64 kind: CUMULATIVE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.net.output value_type: INT64 kind: CUMULATIVE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.rdb.changes_since_last_save value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.replication.backlog_first_byte_offset value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.replication.offset value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] - type: workload.googleapis.com/redis.slaves.connected value_type: INT64 kind: GAUGE monitored_resources: [gce_instance] expected_logs: - log_name: redis fields: - name: jsonPayload.level value_regex: \* type: string description: Log entry level - name: jsonPayload.message value_regex: Ready to accept connections type: string description: Log message, including detailed stacktrace where provided - name: jsonPayload.roleChar value_regex: M type: string description: Redis role character (X, C, S, M) - name: jsonPayload.role value_regex: master type: string description: Translated from redis role character (sentinel, RDB/AOF_writing_child, slave, master) - name: jsonPayload.pid type: number description: The process ID issuing the log - name: severity type: string description: '' configuration_options: logs: - type: redis fields: - name: type default: null description: This value must be `redis`. - name: include_paths default: '[/var/log/redis/redis-server.log, /var/log/redis_6379.log, /var/log/redis/redis.log, /var/log/redis/default.log, /var/log/redis/redis_6379.log]' description: A list of filesystem paths to read by tailing each file. A wild card (`*`) can be used in the paths; for example, `/var/log/redis/*.log`. - name: exclude_paths default: null description: A list of filesystem path patterns to exclude from the set matched by `include_paths`. - name: record_log_file_path default: false description: If set to `true`, then the path to the specific file from which the log record was obtained appears in the output log entry as the value of the `agent.googleapis.com/log_file_path` label. When using a wildcard, only the path of the file from which the record was obtained is recorded. - name: wildcard_refresh_interval default: 60s description: The interval at which wildcard file paths in `include_paths` are refreshed. Given as a [time duration](https://pkg.go.dev/time#ParseDuration), for example `30s` or `2m`. This property might be useful under high logging throughputs where log files are rotated faster than the default interval. metrics: - type: redis fields: - name: type default: null description: This value must be `redis`. - name: address default: localhost:6379 description: The URL exposed by Redis. - name: collection_interval default: 60s description: A [time duration](https://pkg.go.dev/time#ParseDuration) value, such as `30s` or `5m`. - name: password default: null description: The password used to connect to the server. - name: insecure default: true description: Sets whether or not to use a secure TLS connection. If set to `false`, then TLS is enabled. - name: insecure_skip_verify default: false description: Sets whether or not to skip verifying the certificate. If `insecure` is set to `true`, then the `insecure_skip_verify` value is not used. - name: cert_file default: null description: Path to the TLS certificate to use for mTLS-required connections. - name: key_file default: null description: Path to the TLS key to use for mTLS-required connections. - name: ca_file default: null description: Path to the CA certificate. As a client, this verifies the server certificate. If empty, the receiver uses the system root CA.