diff --git a/CHANGELOG.md b/CHANGELOG.md index e79dbd90bbc48..619d1934feb6b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,13 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.7.23](https://github.com/cube-js/cube/compare/v1.7.22...v1.7.23) (2026-08-18) + +### Performance Improvements + +- **postgres-driver:** build user defined types map in linear time ([#11586](https://github.com/cube-js/cube/issues/11586)) ([4e8dd9b](https://github.com/cube-js/cube/commit/4e8dd9bebe70989852044e18887175cc7f56d98f)), closes [#11149](https://github.com/cube-js/cube/issues/11149) +- **postgres-driver:** Skip relation array types when loading user defined types ([#11587](https://github.com/cube-js/cube/issues/11587)) ([4547e08](https://github.com/cube-js/cube/commit/4547e0870b0b997cc4b838ff61da219afddfd508)), closes [#11149](https://github.com/cube-js/cube/issues/11149) + ## [1.7.22](https://github.com/cube-js/cube/compare/v1.7.21...v1.7.22) (2026-08-18) ### Bug Fixes diff --git a/docs-mintlify/admin/monitoring/monitoring-integrations/gcs.mdx b/docs-mintlify/admin/monitoring/monitoring-integrations/gcs.mdx new file mode 100644 index 0000000000000..ec47c760e85db --- /dev/null +++ b/docs-mintlify/admin/monitoring/monitoring-integrations/gcs.mdx @@ -0,0 +1,107 @@ +--- +title: Integration with Google Cloud Storage +sidebarTitle: Google Cloud Storage +description: Google Cloud Storage is a popular object storage system. This guide demonstrates how to set up Cube to export logs to Google Cloud Storage. +--- + +[Google Cloud Storage](https://cloud.google.com/storage) is a popular object +storage system. This guide demonstrates how to set up Cube to export logs to +Google Cloud Storage. + +## Configuration + +First, enable [monitoring integrations][ref-monitoring-integrations] in Cube. + +### Exporting logs + +To export logs to Google Cloud Storage, start by creating a bucket for Cube logs +and a service account that can write to it. + +Then, put the service account key in an environment variable under **Settings → +Environment variables**, base64-encoded. The name must start with +`CUBE_CLOUD_MONITORING_` — only variables with that prefix are available to the +Vector agent: + +```bash +CUBE_CLOUD_MONITORING_GCS_CREDENTIALS=eyJ0eXBlIjogInNlcnZpY2VfYWNjb3VudCIsIC4uLn0= +``` + +Finally, configure the [`gcp_cloud_storage`](https://vector.dev/docs/reference/configuration/sinks/gcp_cloud_storage/) +sink in your [`vector.toml` configuration file][ref-monitoring-integrations-conf]. + +Example configuration: + +```toml +[sinks.gcp-cloud-storage] +type = "gcp_cloud_storage" +inputs = [ + "cubejs-server", + "refresh-scheduler", + "warmup-job", + "cubestore" +] +bucket = "your-gcs-bucket-name" +compression = "gzip" +credentials_base64 = "$CUBE_CLOUD_MONITORING_GCS_CREDENTIALS" + +[sinks.gcp-cloud-storage.encoding] +codec = "json" + +[sinks.gcp-cloud-storage.healthcheck] +enabled = false +``` + +Commit the configuration for Vector, it should take effect in a minute. Then, +navigate to your bucket and watch the logs coming. + +### Authentication + +Authenticate with the `credentials_base64` option, referencing the environment +variable that holds the base64-encoded service account key, as in the example above. +This is the only supported way to give the sink its credentials. + +`credentials_base64` is specific to Cube — it does not appear in [Vector's own sink +reference][vector-docs-sinks-gcs]. Cube decodes the key and provides it to the Vector +agent as a file named after the sink. + + + +The sink name becomes the name of a Kubernetes object that carries the credentials +file, so it must be lowercase alphanumeric characters and dashes only — **no +underscores**. A sink named `query_history_gcs` will not get a credentials file; name +it `query-history-gcs` instead. + + + +### Healthcheck + +The example above sets `healthcheck.enabled = false`. Vector's +`gcp_cloud_storage` healthcheck sends a `HEAD` request to the bucket root, which +requires the `storage.objects.list` permission — write access alone, such as +`roles/storage.objectCreator`, does not grant it. Without this, the sink fails to +start with a forbidden-healthcheck error even though it could write objects +successfully. + +With the healthcheck disabled, the sink always starts and reports healthy, so check +the bucket itself to confirm that data is arriving. + +### Exporting Query History + +Add the `query-history` input to the sink to bring [Query History +export][ref-query-history-export] data to the same bucket. + + + +Query History export additionally requires the **Monitoring Integrations Tier** of +your deployment to be set to **Medium (Up to 50 GB/mo)**. On a lower tier it fails +silently — the sink reports healthy and the bucket stays empty, with no error +logged anywhere. + + + + +[ref-monitoring-integrations]: /admin/monitoring/monitoring-integrations +[ref-monitoring-integrations-conf]: /admin/monitoring/monitoring-integrations#configuration +[ref-query-history-export]: /admin/monitoring/monitoring-integrations#query-history-export +[vector-docs-sinks-gcs]: + https://vector.dev/docs/reference/configuration/sinks/gcp_cloud_storage/ diff --git a/docs-mintlify/admin/monitoring/monitoring-integrations/index.mdx b/docs-mintlify/admin/monitoring/monitoring-integrations/index.mdx index 12e94e6a502a9..4750db6e66546 100644 --- a/docs-mintlify/admin/monitoring/monitoring-integrations/index.mdx +++ b/docs-mintlify/admin/monitoring/monitoring-integrations/index.mdx @@ -54,6 +54,9 @@ following guides and configuration examples to get tool-specific instructions: Export logs and metrics to Datadog. + + Archive logs to a Google Cloud Storage bucket. + Export logs and metrics to Grafana Cloud. @@ -291,6 +294,20 @@ available on the [Enterprise plan](https://cube.dev/pricing). + + +Query History export also requires the **Monitoring Integrations Tier** of your +deployment to be set to **Medium (Up to 50 GB/mo)**. You can find it under +**Settings → Monitoring Integrations**; deployments default to **X-Small (Up to 10 +GB/mo)**. + +On **X-Small** or **Small**, Query History export fails silently: no events reach +any sink, including a `console` sink, and no error is logged. If the tier is not +available in your deployment settings, ask your Cube contact or the [Cube support +team][ref-support] to set it. + + +