CubeAPM - Application Performance Monitoring
Homepage: https://cubeapm.com
Name | Url | |
---|---|---|
CubeAPM | tech.support@cubeapm.com | https://cubeapm.com |
Key | Type | Default | Description |
---|---|---|---|
affinity | object | {} |
|
cluster.advertise.address | string | "" |
Explicit address to advertise in cluster, e.g. 10.0.0.1. If not specified, CubeAPM will try to detect the address automatically. |
cluster.advertise.allowInsecure | bool | false |
By default, CubeAPM only uses private IP address as the advertise address. Set this flag to true to allow public IP addresses to be used. |
cluster.podCount | int | 1 |
Number of pods in the cluster |
cluster.port.distributor | int | 3126 |
Port to use for internal distribution of incoming traces data |
cluster.port.read | int | 3127 |
Port to use for internal exchange of data between nodes for serving read requests |
cluster.port.state | int | 3129 |
Port to use for internal exchange of data between nodes for maintaining cluster state |
cluster.port.write | int | 3128 |
Port to use for internal exchange of data between nodes for serving write requests |
cluster.replicationFactor | int | 0 |
Replication factor for the ingested data. Default is size_of_cluster/2 + 1 |
collector.nr8t.disable | bool | false |
Disable New Relic Infinite Tracing grpc receiver |
collector.nr8t.port | int | 3124 |
Port to bind New Relic Infinite Tracing grpc receiver on |
collector.otlp.grpc.disable | bool | false |
Disable OTLP grpc receiver |
collector.otlp.grpc.port | int | 4317 |
Port to bind OTLP grpc receiver on |
collector.otlp.http.cors.origins | string | "" |
Comma separated list of allowed origins for CORS requests. Examples: “http://*.domain.com”, “*” |
collector.otlp.http.disable | bool | false |
Disable OTLP http receiver |
collector.otlp.http.port | int | 4318 |
Port to bind OTLP http receiver on |
collector.spanTransformsConfigFile | object | {} |
Config for transforming ingested spans before further processing. See values.yaml for an example. |
configVars.alertmanager.charts.disable | bool | false |
Disable charts in alert notifications |
configVars.alertmanager.jira.siteName | string | "" |
Name of the site for sending alert notifications on Jira. If you access Jira on https://youraccountid.atlassian.net, the site name is youraccountid. |
configVars.alertmanager.jira.token | string | "" |
API token for sending alert notifications on Jira. |
configVars.alertmanager.jira.tokenExpiryDate | string | "" |
Expiry date of the Jira API token in YYYY-MM-DD format. Will be used to remind when the token is about to expire. |
configVars.alertmanager.jira.userEmail | string | "" |
Email address of Jira user for sending alert notifications on Jira. |
configVars.alertmanager.oauth.pagerduty.appId | string | "" |
App ID for sending alert notifications on PagerDuty. Refer https://docs.cubeapm.com/install/configure-cubeapm/connect-with-pagerduty-for-alerting for guidance. |
configVars.alertmanager.oauth.slack.token | string | "" |
Bot user OAuth token for sending alert notifications on Slack. Slack bot tokens start with ‘xoxb’. Refer https://docs.cubeapm.com/install/configure-cubeapm/connect-with-slack-for-alerting for guidance. |
configVars.alertmanager.opsgenie.tokens | string | "" |
API tokens for sending alert notifications on Opsgenie. Format: team1:token1,team2:token2,…,teamN:tokenN |
configVars.alerts.configFile | object | {} |
Config for alerts. See values.yaml for an example. |
configVars.auth.database.url | string | "" |
[Required] URL of database for storing user accounts data Example: mysql://<username>:<password>@tcp(<host>:3306)/<db_name> postgres://<username>:<password>@<host>:5432/<db_name>?sslmode=disable Note: A-Za-z0-9.-_ characters are safe for use in password. Other characters can cause problems. |
configVars.auth.defaultRole | string | "viewer" |
Default role to be assigned to a new user on signup. Possible values are none, viewer, editor, admin. |
configVars.auth.key.session | string | "" |
[Required] Encryption key for session data. Must be 32 characters long. Can use hex encoded UUID without dashes. |
configVars.auth.oidc.github.clientId | string | "" |
Client ID for Sign in with GitHub. Refer https://docs.cubeapm.com/install/configure-cubeapm/sign-in-with-github for guidance. |
configVars.auth.oidc.github.clientSecret | string | "" |
Client secret for Sign in with GitHub |
configVars.auth.oidc.google.clientId | string | "" |
Client ID for Sign in with Google. Refer https://docs.cubeapm.com/install/configure-cubeapm/sign-in-with-google for guidance. |
configVars.auth.oidc.google.clientSecret | string | "" |
Client secret for Sign in with Google |
configVars.auth.session.lifespan | string | "24h" |
Defines how long a session is active. Once that lifespan has been reached, the user needs to sign in again. |
configVars.auth.sysAdmins | string | "" |
Comma separated list of email ids of users to be given sysadmin privilege. |
configVars.baseUrl | string | "https://cubeapm.yourdomain.com" |
[Required] URL used by users to access CubeAPM. This is used to generate URLs in emails and alerts. If you use reverse proxy and sub path specify full url (with sub path). Examples: http://cube.yourdomain.com, https://yourdomain.com/cube, http://10.0.0.1:3125 |
configVars.database.url | string | "" |
[Required] URL of database for storing config data (settings, dashboards, etc.) Example: mysql://<username>:<password>@tcp(<host>:3306)/<db_name> postgres://<username>:<password>@<host>:5432/<db_name>?sslmode=disable Note: A-Za-z0-9.-_ characters are safe for use in password. Other characters can cause problems. |
configVars.envTag | string | "" |
Tag name for environment. If set, the value of this tag in logs, metrics, and traces will be used to segragate them in the UI. |
configVars.files.retention | string | "720h" |
Static files (e.g. javascript source maps) retention period |
configVars.logLevel | string | "warn" |
Minimal allowed log Level. Supported values are debug, info, warn, and error. |
configVars.logs.backup.concurrency | int | 0 |
The number of concurrent workers. 0 means equal to number of available CPUs. |
configVars.logs.backup.destination | string | "" |
Where to put the backup on the remote storage. Example: s3://bucket/path/to/backup, gs://bucket/path/to/backup, azblob://container/path/to/backup or fs:///path/to/local/backup/dir |
configVars.logs.backup.s3.customEndpoint | string | "" |
Custom S3 endpoint for use with S3-compatible storages (e.g. MinIO). S3 is used if not set. |
configVars.logs.backup.s3.forcePathStyle | bool | false |
Prefixing endpoint with bucket name when set false. |
configVars.logs.backup.s3.storageClass | string | "" |
The Storage Class applied to objects uploaded to AWS S3. Supported values are: GLACIER, DEEP_ARCHIVE, GLACIER_IR, INTELLIGENT_TIERING, ONEZONE_IA, OUTPOSTS, REDUCED_REDUNDANCY, STANDARD, STANDARD_IA. See https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-class-intro.html. |
configVars.logs.datadog.ignoreFields | string | "" |
Comma separated list of Datadog tags to ignore. |
configVars.logs.datadog.streamFields | string | "" |
Comma separated list of Datadog tags to be used as stream fields. |
configVars.logs.newrelic.ignoreFields | string | "" |
Comma separated list of New Relic tags to ignore. |
configVars.logs.newrelic.streamFields | string | "service.name,faas.name" |
Comma separated list of New Relic tags to be used as stream fields. |
configVars.logs.retention | string | "24h" |
Logs retention period. Must be at least 24h. |
configVars.metrics.customLabelsConfigFile | object | {} |
Config for extending CubeAPM metrics with custom labels. See values.yaml for an example. |
configVars.metrics.retention | string | "720h" |
Metrics retention period. Must be at least 24h. |
configVars.metrics.slo.configFile | object | {} |
Config for SLOs (Service Level Objectives). See values.yaml for an example. |
configVars.metrics.updateInterval | string | "30s" |
Metrics update interval. Must be between 5s and 1m. |
configVars.shutdownDelay | string | 0 |
Delay before shutdown. During this delay, health check returns non-OK responses so load balancers can route new requests to other servers. |
configVars.smtp.from | string | "" |
Email address of sender. Your SMTP server must be configured to allow sending emails from this address. |
configVars.smtp.url | string | "" |
URL of SMTP server for sending emails, e.g., reset password email, alert notifications. Example: smtp://<username>:<password>@<mailserver>:25/?disable_starttls=false Note: username and password must be url-encoded to escape any special characters. |
configVars.timeZone | string | "UTC" |
Timezone of CubeAPM users. While most of the timezone related operations are done on the browser using browser’s time zone setting, a few operations need to be performed on the server and they use this setting. Examples: America/Los_Angeles, Asia/Kolkata, UTC |
configVars.token | string | "" |
[Required] Account token obtained from CubeAPM. This token is used for authentication with CubeAPM. |
configVars.tracegen.disable | bool | false |
Disable the built-in demo trace generator |
configVars.traces.customIndexesConfigFile | object | {} |
Config for creating custom indexes on traces. See values.yaml for an example. |
configVars.traces.retention | string | "72h" |
Traces retention period. Must be at least 24h. |
configVars.traces.slowQueryThreshold | string | "500ms" |
Minimum query duration for labeling database queries as slow. |
extraEnvs | list | [] |
Environment variables to be passed to CubeAPM containers. Example: - name: ENV_VARIABLE_NAME value: “env_variable_value” |
fullnameOverride | string | "" |
CubeAPM chart full name override |
global.cloud | string | "other" |
Kubernetes cluster cloud provider. example: aws , azure , gcp , other Based on the cloud, storage class for the persistent volume is selected. When set to ‘aws’ or ‘gcp’ along with installCustomStorageClass enabled, then new expandible storage class is created. |
global.imagePullSecrets | list | [] |
Global Image Pull Secrets |
global.imageRegistry | string | nil |
Overrides the Image registry globally |
global.storageClass | string | nil |
Overrides the storage class for all PVC with persistence enabled. If not set, the default storage class is used. If set to “-“, storageClassName: “”, which disables dynamic provisioning |
image.pullPolicy | string | "IfNotPresent" |
|
image.registry | string | "docker.io" |
|
image.repository | string | "cubeapm/cubeapm" |
|
image.tag | string | "v1.12.0" |
|
imagePullSecrets | list | [] |
Image Registry Secret Names for all CubeAPM components. If global.imagePullSecrets is set as well, it will be merged. |
ingress.annotations | object | {} |
Annotations to CubeAPM Ingress |
ingress.className | string | "" |
Ingress Class Name to be used to identify ingress controllers |
ingress.enabled | bool | true |
Enable ingress for CubeAPM |
ingress.hosts | list | [{"host":"cubeapm.yourdomain.com","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}] |
CubeAPM Ingress Host names with their path details |
ingress.tls | list | [] |
CubeAPM Ingress TLS |
ingressTraces.grpc.annotations | object | {} |
Annotations to the ingress |
ingressTraces.grpc.className | string | "" |
Ingress Class Name to be used to identify ingress controllers |
ingressTraces.grpc.enabled | bool | false |
Enable ingress for ingesting traces into CubeAPM from outside of k8s over gRPC. Services that need to send traces data to CubeAPM can either use <cubeapm_service_name>.<namespace>.svc.cluster.local:4317 as the endpoint (in which case this ingress is not needed) or they can use the host:port configured in this ingress. If TLS support is required, then this ingress will have to be used as CubeAPM does not handle TLS by itself. Note that this ingress must be configured to use GRPC protocol for forwarding traffic to the service. For kubernetes nginx ingress controller, this can be achieved by setting the annotation nginx.ingress.kubernetes.io/backend-protocol: GRPC Note also that this ingress may not work properly without TLS, depending on the ingress controller being used (e.g. nginx). |
ingressTraces.grpc.hosts | list | [{"host":"cubeapm-traces-grpc.yourdomain.com","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}] |
Ingress Host names with their path details |
ingressTraces.grpc.tls | list | [] |
Ingress TLS |
ingressTraces.http.annotations | object | {} |
Annotations to the ingress |
ingressTraces.http.className | string | "" |
Ingress Class Name to be used to identify ingress controllers |
ingressTraces.http.enabled | bool | false |
Enable ingress for ingesting traces into CubeAPM from outside of k8s over HTTP. Services that need to send traces data to CubeAPM can either use <cubeapm_service_name>.<namespace>.svc.cluster.local:4318 as the endpoint (in which case this ingress is not needed) or they can use the host:port configured in this ingress. If TLS support is required, then this ingress will have to be used as CubeAPM does not handle TLS by itself. |
ingressTraces.http.hosts | list | [{"host":"cubeapm-traces-http.yourdomain.com","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}] |
Ingress Host names with their path details |
ingressTraces.http.tls | list | [] |
Ingress TLS |
ingressTraces.metrics.annotations | object | {} |
Annotations to the ingress |
ingressTraces.metrics.className | string | "" |
Ingress Class Name to be used to identify ingress controllers |
ingressTraces.metrics.enabled | bool | false |
Enable ingress for ingesting metrics into CubeAPM from outside of k8s over HTTP. Services that need to send metrics data to CubeAPM can either use <cubeapm_service_name>.<namespace>.svc.cluster.local:3130 as the endpoint (in which case this ingress is not needed) or they can use the host:port configured in this ingress. If TLS support is required, then this ingress will have to be used as CubeAPM does not handle TLS by itself. |
ingressTraces.metrics.hosts | list | [{"host":"cubeapm-metrics.yourdomain.com","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}] |
Ingress Host names with their path details |
ingressTraces.metrics.tls | list | [] |
Ingress TLS |
ingressTraces.nr8t.annotations | object | {} |
Annotations to the ingress |
ingressTraces.nr8t.className | string | "" |
Ingress Class Name to be used to identify ingress controllers |
ingressTraces.nr8t.enabled | bool | false |
Enable ingress for ingesting traces into CubeAPM via New Relic Infinite Tracing. Services that need to send traces data to CubeAPM can use the host:port configured in this ingress. Note that this ingress must be configured to use GRPC protocol for forwarding traffic to the service. For kubernetes nginx ingress controller, this can be achieved by setting the annotation nginx.ingress.kubernetes.io/backend-protocol: GRPC Note also that TLS is mandatory for New Relic Infinite Tracing. |
ingressTraces.nr8t.hosts | list | [{"host":"cubeapm-traces-nr8t.yourdomain.com","paths":[{"path":"/","pathType":"ImplementationSpecific"}]}] |
Ingress Host names with their path details |
ingressTraces.nr8t.tls | list | [] |
Ingress TLS |
installCustomStorageClass | bool | false |
When the installCustomStorageClass is enabled with cloud set as gcp or aws . It creates custom storage class with volume expansion permission. |
nameOverride | string | "" |
CubeAPM chart name override |
nodeSelector | object | {} |
|
persistence.accessModes | list | ["ReadWriteOnce"] |
Access Modes for persistent volume |
persistence.enabled | bool | true |
Enable data persistence using PVC. If not enabled, data is stored in an emptyDir. |
persistence.existingClaim | string | "" |
Name of an existing PVC to use (only when deploying a single pod) |
persistence.size | string | "100Gi" |
Persistent Volume size |
persistence.storageClass | string | nil |
Persistent Volume Storage Class to use. If defined, storageClassName: <storageClass> . If set to “-“, storageClassName: "" , which disables dynamic provisioning If undefined (the default) or set to null , no storageClassName spec is set, choosing the default provisioner. |
podCustomLabels | object | {} |
|
podSecurityContext | object | {} |
|
priorityClassName | string | "" |
|
resources | object | {"limits":{"cpu":2,"memory":"8Gi"},"requests":{"cpu":2,"memory":"8Gi"}} |
Configure resource requests and limits. Update according to your workload. Ref: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ |
securityContext | object | {} |
|
service.annotations | object | {} |
Annotations to CubeAPM service |
service.internalPort | int | 3130 |
Port to use for internal http communication between CubeAPM nodes |
service.port | int | 3125 |
HTTP port |
service.type | string | "ClusterIP" |
Service type |
serviceAccount.annotations | object | {} |
Annotations to add to the service account |
serviceAccount.create | bool | true |
Specifies whether a service account should be created |
serviceAccount.name | string | "" |
The name of the service account to use. If not set and create is true, a name is generated using the fullname template |
serviceTraces.annotations | object | {} |
Annotations to CubeAPM service |
serviceTraces.enabled | bool | false |
Set up a Network Load Balancer for ingesting metrics and traces into CubeAPM from outside of k8s over TCP. |
serviceTraces.type | string | "LoadBalancer" |
Service type |
tolerations | list | [] |
|
topologySpreadConstraints | list | [] |
Autogenerated from chart metadata using helm-docs v1.11.0