Skip to main content
Quick navigation

Cortex Configuration

caution

This Configuration is for Cortex dependency image conduktor/conduktor-platform-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

EnvDescriptionMandatoryTypeDefaultSince
CDK_CONSOLE-URLConsole URL and port (example: "http://conduktor-platform:8080")truestring1.18.0
CDK_SCRAPER_SKIPSSLCHECKDisable TLS check when scraping metrics from Consolefalseboolfalse1.18.2
CDK_SCRAPER_CAFILEPath to CA certificat file inside container to perform TLS check when scraping metrics from Consolefalsestring1.18.2
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
CDK_MONITORING_STORAGE_GCS_BUCKETNAMEGCS storage bucket nametruestring1.18.0
CDK_MONITORING_STORAGE_GCS_SERVICEACCOUNTGCS storage service account json contenttruestring1.18.0
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 suffixfalsestring"blob.core.windows.net"1.18.0
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
CORTEX_ROOT_LOG_LEVELCortex log levelfalsestring"info"1.18.0
CORTEX_ALERT_ROOT_LOG_LEVELAlert manager log levelfalsestring"info"1.18.0
PROMETHEUS_ROOT_LOG_LEVELPrometheus log levelfalsestring"info"1.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 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-platform:
image: conduktor/conduktor-platform:1.18.2
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-platform:8080/monitoring/api/
CDK_MONITORING_NOTIFICATIONS-CALLBACK-URL: http://localhost:8080
conduktor-monitoring:
image: conduktor/conduktor-platform-cortex:1.18.2
ports:
- "9009:9009" # cortex api
- "9010:9010" # alertmanager api
- "9090:9090" # prometheus api
environment:
CDK_CONSOLE-URL: "http://conduktor-platform:8080"

Troubleshooting

No metrics in 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-platform-cortex container. You might also have to configure CDK_SCRAPER_SKIPSSLCHECK or CDK_SCRAPER_CAFILE if conduktor-platform is configured with TLS termination

No slack notification alerts

  • Follow the steps to configure Slack integration on http://localhost:8080/admin/integrations page. It will ask to create a Slack App and set Oauth2 authentication token on Console.
  • Don't forget to manually add Slack App bot into the channel integrations you want to use for alerts notifications.
  • Enable notifications on http://localhost:8080/monitoring/alerts and select the same channel as previously. See create alert

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