Skip to main content
Quick navigation

Cortex Configuration

caution

This Configuration is for Cortex dependency image conduktor/conduktor-console-cortex

This image is exclusively configured through Environment Variables.

The only required property is CDK_CONSOLE-URL, everything else is related to storage for the metrics.

By default, data will be stored in /var/conduktor/monitoring inside the running image. You can mount a volume on this folder to keep metrics data between updates. Otherwise, you can use the storage parameters described below to store the data using either s3, gcs, azure or swift

Environment VariableDescriptionMandatoryTypeDefaultSince
CDK_CONSOLE-URLConsole URL and port (example: "http://conduktor-console:8080")truestring1.18.0
CDK_SCRAPER_SKIPSSLCHECKDisable TLS check when scraping metrics from Consolefalseboolfalse1.18.2
CDK_SCRAPER_CAFILEPath to CA certificate file inside the container to perform TLS check when scraping metrics from Consolefalsestring1.18.2
S3
CDK_MONITORING_STORAGE_S3_ENDPOINTS3 storage endpointfalsestring1.18.0
CDK_MONITORING_STORAGE_S3_REGIONS3 storage regionfalsestring1.18.0
CDK_MONITORING_STORAGE_S3_BUCKETS3 storage bucket nametruestring1.18.0
CDK_MONITORING_STORAGE_S3_INSECURES3 storage SSL/TLS check flagfalseboolfalse1.18.0
CDK_MONITORING_STORAGE_S3_ACCESSKEYIDS3 storage access keytruestring1.18.0
CDK_MONITORING_STORAGE_S3_SECRETACCESSKEYS3 storage access key secrettruestring1.18.0
GCS
CDK_MONITORING_STORAGE_GCS_BUCKETNAMEGCS storage bucket nametruestring1.18.0
CDK_MONITORING_STORAGE_GCS_SERVICEACCOUNTGCS storage service account JSON contenttruestring1.18.0
Azure
CDK_MONITORING_STORAGE_AZURE_ACCOUNTNAMEAzure storage account nametruestring1.18.0
CDK_MONITORING_STORAGE_AZURE_ACCOUNTKEYAzure storage account keytruestring1.18.0
CDK_MONITORING_STORAGE_AZURE_CONTAINERNAMEAzure storage container nametruestring1.18.0
CDK_MONITORING_STORAGE_AZURE_ENDPOINTSUFFIXAzure storage endpoint suffixfalsestringblob.core.windows.net1.18.0
Swift
CDK_MONITORING_STORAGE_SWIFT_AUTHURLSwift storage authentication URLtruestring1.18.0
CDK_MONITORING_STORAGE_SWIFT_PASSWORDSwift storage user passwordtruestring1.18.0
CDK_MONITORING_STORAGE_SWIFT_CONTAINERNAMESwift storage container nametruestring1.18.0
CDK_MONITORING_STORAGE_SWIFT_USERIDSwift storage user IDfalsestring1.18.0
CDK_MONITORING_STORAGE_SWIFT_USERNAMESwift storage user namefalsestring1.18.0
CDK_MONITORING_STORAGE_SWIFT_USERDOMAINNAMESwift storage user domain namefalsestring1.18.0
CDK_MONITORING_STORAGE_SWIFT_USERDOMAINIDSwift storage user domain IDfalsestring1.18.0
CDK_MONITORING_STORAGE_SWIFT_DOMAINIDSwift storage user domain IDfalsestring1.18.0
CDK_MONITORING_STORAGE_SWIFT_DOMAINNAMESwift storage user domain namefalsestring1.18.0
CDK_MONITORING_STORAGE_SWIFT_PROJECTIDSwift storage project IDfalsestring1.18.0
CDK_MONITORING_STORAGE_SWIFT_REGIONNAMESwift storage region namefalsestring1.18.0
Logs
CORTEX_ROOT_LOG_LEVELCortex log levelfalsestringinfo1.18.0
CORTEX_ALERT_ROOT_LOG_LEVELAlert manager log levelfalsestringinfo1.18.0
PROMETHEUS_ROOT_LOG_LEVELPrometheus log levelfalsestringinfo1.18.0
tip

Cortex configuration can be overrided completly by mounting a YAML file into path /opt/override-configs/cortex.yaml. You can also change the path location using CORTEX_OVERRIDE_CONFIG_FILE environment variable.
This is not possible yet for Alert Manager and Prometheus.

Typically, in docker compose it would look like this:

version: '3.8'
services:
conduktor-console:
image: conduktor/conduktor-console
ports:
- "8080:8080"
environment:
CDK_MONITORING_CORTEX-URL: http://conduktor-monitoring:9009/
CDK_MONITORING_ALERT-MANAGER-URL: http://conduktor-monitoring:9010/
CDK_MONITORING_CALLBACK-URL: http://conduktor-console:8080/monitoring/api/
CDK_MONITORING_NOTIFICATIONS-CALLBACK-URL: http://localhost:8080
conduktor-monitoring:
image: conduktor/conduktor-console-cortex
ports:
- "9009:9009" # cortex api
- "9010:9010" # alertmanager api
- "9090:9090" # prometheus api
environment:
CDK_CONSOLE-URL: "http://conduktor-console:8080"

Troubleshooting

No metrics in the monitoring page

Go to http://localhost:9090/targets to see Prometheus scraping target status.

If it fails, check that you can query metrics endpoint from conduktor-console-cortex container.

You might also have to configure CDK_SCRAPER_SKIPSSLCHECK or CDK_SCRAPER_CAFILE if conduktor-console is configured with TLS termination.

No Slack notification alerts

  1. Follow the steps to configure Slack integration in the Integrations tab. You'll be asked to create a Slack App and to set OAuth2 authentication token on Console.
  2. Don't forget to manually add Slack App bot to the channel integrations you want to use for alerts notifications.
  3. Enable notifications in the Alerts tab, and select the same channel as previously.
  4. Create some alerts.

If you still have issues with monitoring and alerting setup please contact our support team.