This page provides a complete list of configurations for the appdynamics-cloud-db-collector subchart. For global settings, see Configure Cisco AppDynamics Kubernetes Collectors.

In the collectors-values.yaml file, you can include the Database monitoring configuration options under the appdynamics-cloud-db-collector key.

To reinstall or upgrade the collectors, see Upgrade or Uninstall Kubernetes and App Service Monitoring.

Install Switches Configuration

You can include the following configurations under the install key:

ParameterDescriptionRequiredDefaultReinstall Required

dbCollector

Set this option to True if you are installing database collector monitoring.OptionalfalseNo

dbMonitoringConfigs

Set this option to True if you are installing database monitoring config.OptionalfalseNo

Cisco Cloud Observability Authentication Configuration

You can include the following configurations under the appdCloudAuth key:

You can obtain these configurations from the Onboarding page.

Parameter

Description

Required

Default

Reinstall Required

clientId-YesNAYes

clientSecret

Or,

clientSecretEnvVar:
  valueFrom:
    secretKeyRef:
      name: ""
      key: ""
CODE

You can specify the secret in plain text through clientSecret field, or you can create a K8s secret for clientSecret and provide name and key as mentioned in the code block:

clientSecretEnvVar:
  valueFrom:
    secretKeyRef:
      name: "<secret-name>"
      key: "<secret-key>"
CODE
YesNAYes
endpoint-YesNAYes
tokenUrl-YesNAYes

Collectors Configuration

ParameterDescriptionRequiredDefaultReinstall Required
Database Collector (include these configuration options under the dbCollectorConfig key)
pprof

To enable profiling for the database collector, set the enabled field to True. 

If you do not specify a port, it is set to the default 9991 port.

Optional
pprof:
  enabled : false
  port : 0
YML
No
Database Monitoring Config (include these configuration options under the dbMonitoringConfigs key)

configName

A unique name to identify the Database monitoring configurationYesNAYes

username

The name of the user connecting to and monitoring the database through the Database Collector.

Ensure that the user has the permissions described in User Permissions for Microsoft SQL Server.

YesNANo

password

The password of the user connecting to and monitoring the database through the Database Collector.YesNANo

hostname

The hostname or IP address of the machine that your database is running on.YesNANo

hostport

The TCP/IP address of the port on which your database communicates with the Database Collector.YesNANo

database

Database name of database instance you want to monitor.

Optional


Mandatory for Azure SQL Database

master

No

tlsConfig

To establish an SSL connection between Database Collector and the database instance. 

You must:

  • Provide the certificate through secret.
  • Pass the secret name in the certSecretName field.
  • Specify the hostNameInCertificate.
    By default, the provided hostname is used.

Optional


tlsConfig:
# hostNameInCertificate in tlsConfig is optional
hostNameInCertificate: ""
certSecretName: ""
CODE



Yes

environment

The cloud platform the database is hosted on. Allowed values are azure, aws or self-hosted.

Required for cloud-correlation

self-hosted

Yes

Database Collector Pod Configuration Options

Kubernetes supports the following parameters which are configurable for the database collector pod through the collectors-values.yaml file. You can include the following configuration options under the dbCollectorPod key:

ParameterDescriptionRequiredDefaultReinstall Required
ImageDatabase Collector image address in this format: <registryUrl>/<registryAccount>/<project>:<tag>Optional

appdynamics/appdynamics-cloud-db-collector:latest

No
ImagePullPolicyImage pull policy for the Cluster Collector pod.OptionalAlwaysNo
priorityClassNameThe name of the pod priority class, which is used in the pod specification to set the priority.OptionalN/ANo
resourcesResources you assign to the pod.Optional
resources:
  limits:
    cpu: 1000m
    memory: 1000Mi
  requests:
    cpu: 500m
    memory: 750Mi
CODE
No
labelsLabels for the pod.Optional{ }Yes
annotationsAnnotations for the pod.Optional{ }No
nodeSelectorNode selector for the pod.Optional{ }No
imagePullSecretsImage pull secrets for the pod.Optional[ ]No
affinityAffinity for the pod.Optional{ }No
tolerationsTolerations for the pod.Optional[ ]No
securityContextSecurity Context for the pod.Optional{ }No

Example of Using the Configuration Options

The following example outlines the use of all the configuration options the collectors chart provides:

Database Monitoring Configuration

appdynamics-cloud-db-collector:
  install:
    dbCollector: true
    dbMonitoringConfigs: true
  appdCloudAuth:
    clientId: <id>
    clientSecret: <oauth-client-secret>
    endpoint: <endpoint>
    tokenUrl: <token-url>

  dbCollectorPod:
    image: appdynamics/appdynamics-cloud-db-collector:latest 23.1.0-433
    imagePullPolicy: Never
    resources:
      limits:
        cpu: 1000m
        memory: 1000Mi
      requests:
        cpu: 200m
        memory: 750Mi
    labels:
      key1: "value1"
    annotations:
      key2: "value2"
    tolerations:
      - key: "key3"
        operator: "Exists"
        effect: "NoSchedule"
    nodeSelector:
      disktype: ssd
    imagePullSecrets:
      - name: aws-ecr-secret
    affinity:
      nodeAffinity:
        requiredDuringSchedulingIgnoredDuringExecution:
          nodeSelectorTerms:
            - matchExpressions:
                - key: key4
                  operator: In
                  values:
                    - value3
                    - value4
    securityContext:
      fsGroupChangePolicy: "OnRootMismatch"

  # dbCollector Configs
  dbCollectorConfig:
    logLevel : info
    pprof:
      enabled : false
      port : 0

  # each Object in the list will create a custom resource of dbconnection type
  dbMonitoringConfigs:
    - configName : "testing"
      username: "admin"
      password: "Test123"
      hostname: "localhostname"
      hostport: 1433
  	  database: "master"
  	  tlsConfig:
        hostNameInCertificate: "localhost"
        certSecretName: "Testsecret1"
      environment:
        platform: "AWS"
    - configName : "testing2"
      username: "admin2"
      password: "Test1234"
      hostname: "localhostname2"
      hostport: 1433
      environment:
        platform: "Azure"

YML

OpenTelemetry™ and Kubernetes® (as applicable) are trademarks of The Linux Foundation®.