From 5260f2c3acd4a498cc0dabd338013c67691b1ecb Mon Sep 17 00:00:00 2001 From: alexanderahn Date: Wed, 20 Nov 2024 08:03:25 -0800 Subject: [PATCH 1/7] Update admin-settings.md --- docs/architecture/authentication/admin-settings.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/architecture/authentication/admin-settings.md b/docs/architecture/authentication/admin-settings.md index d88463e89e..88e86171f9 100644 --- a/docs/architecture/authentication/admin-settings.md +++ b/docs/architecture/authentication/admin-settings.md @@ -41,3 +41,5 @@ Currently, Prophecy supports two ways to sync this proxy-user value from AAD or Note that these values will sync to Prophecy every time the user logs in. ![proxy-user](img/proxy-settings.png) + +## Log download From 471aa8590c73731dfb882cd30574cafb598a01fd Mon Sep 17 00:00:00 2001 From: alexanderahn Date: Wed, 20 Nov 2024 23:24:13 -0800 Subject: [PATCH 2/7] Create download-logs.md --- .../deployment/private-saas/download-logs.md | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 docs/architecture/deployment/private-saas/download-logs.md diff --git a/docs/architecture/deployment/private-saas/download-logs.md b/docs/architecture/deployment/private-saas/download-logs.md new file mode 100644 index 0000000000..6f9a4d7479 --- /dev/null +++ b/docs/architecture/deployment/private-saas/download-logs.md @@ -0,0 +1,53 @@ +--- +title: Download Logs +id: download-logs +description: Download Prophecy support logs +sidebar_position: 3 +tags: + - download + - support logs +--- + +As an admin user, you can download your environment logs from Prophecy without needing access to your Prophecy cluster or the assistance of Prophecy Support. This reduces the delay in debugging any issues with your Prophecy services. + +## Use case + +- The overarching objective is to debug what is going on with your Prophecy services. +- To achieve this, we've enabled admins to be able to download Prophecy logs and environment information so that they can upload them to Zendesk. + +### Download Logs features + +You can use the Download Logs feature to capture logs using the Services and time selectors. + +- All services are selected by default. +- The download supports one hour of logs from the Start Time. + +The captured logs include all relevant Kubernetes services, including sandbox pods. + +- Configuration Data Collection: + + - Captures Kubernetes cluster configuration, such as resource quotas and node configuration. + - Collects Helm charts, deployment manifests, flags, and other configuration files. + - Includes current versions of deployed services and Kubernetes components. + +- Environment State Capture: + - Captures pod status, node health checks, and resource allocation across the cluster, such as kubectl describe nodes and kubectl describe pods. + - Includes resource consumption. + +:::note + +Sensitive information, such as customer preview data, credentials, tokens, or passwords, is scrubbed or redacted from the download bundle. + +::: + +### Navigating to the Download Logs UI + +To download logs in the Prophecy UI, follow these steps: + +1. Log in to the Prophecy UI as an admin user. +1. Click on the **three dots** at the bottom left corner and select the **Settings** icon from the submenu. +1. Navigate to the **Admin** main tab. +1. Within the Admin main tab, access the **Logs** sub tab. +1. Set the **Services** and **Start Date/Time**, and then click **Download** + +After several seconds, the file will download via your browser. The download generates a compressed file containing logs, suitable for sharing with a Prophecy support engineer. From fffec6bc7123fc59c0eb68bab2d91a11d0dd8b88 Mon Sep 17 00:00:00 2001 From: alexanderahn Date: Wed, 20 Nov 2024 23:27:38 -0800 Subject: [PATCH 3/7] Update admin-settings.md --- docs/architecture/authentication/admin-settings.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/docs/architecture/authentication/admin-settings.md b/docs/architecture/authentication/admin-settings.md index 88e86171f9..d88463e89e 100644 --- a/docs/architecture/authentication/admin-settings.md +++ b/docs/architecture/authentication/admin-settings.md @@ -41,5 +41,3 @@ Currently, Prophecy supports two ways to sync this proxy-user value from AAD or Note that these values will sync to Prophecy every time the user logs in. ![proxy-user](img/proxy-settings.png) - -## Log download From 79a4470843a5c1b25ceba951784c2f23eae9e2a7 Mon Sep 17 00:00:00 2001 From: alexanderahn Date: Thu, 21 Nov 2024 08:45:55 -0800 Subject: [PATCH 4/7] Update download-logs.md --- .../deployment/private-saas/download-logs.md | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/docs/architecture/deployment/private-saas/download-logs.md b/docs/architecture/deployment/private-saas/download-logs.md index 6f9a4d7479..2d0ae430cd 100644 --- a/docs/architecture/deployment/private-saas/download-logs.md +++ b/docs/architecture/deployment/private-saas/download-logs.md @@ -22,17 +22,14 @@ You can use the Download Logs feature to capture logs using the Services and tim - All services are selected by default. - The download supports one hour of logs from the Start Time. -The captured logs include all relevant Kubernetes services, including sandbox pods. - -- Configuration Data Collection: - - - Captures Kubernetes cluster configuration, such as resource quotas and node configuration. - - Collects Helm charts, deployment manifests, flags, and other configuration files. - - Includes current versions of deployed services and Kubernetes components. - -- Environment State Capture: - - Captures pod status, node health checks, and resource allocation across the cluster, such as kubectl describe nodes and kubectl describe pods. - - Includes resource consumption. +The captured logs include all relevant Prophecy configurations, which includes the following items: + +- Kubernetes cluster configuration + - Resource quotas + - Node configuration +- Cluster custom resources +- Config maps and files +- Resource consumption logs :::note From 1dba33dcdb338aaaa1ae59354b19d8c682fb15b3 Mon Sep 17 00:00:00 2001 From: alexanderahn Date: Thu, 21 Nov 2024 09:39:24 -0800 Subject: [PATCH 5/7] Update download-logs.md --- docs/architecture/deployment/private-saas/download-logs.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/architecture/deployment/private-saas/download-logs.md b/docs/architecture/deployment/private-saas/download-logs.md index 2d0ae430cd..3bdf88bfe7 100644 --- a/docs/architecture/deployment/private-saas/download-logs.md +++ b/docs/architecture/deployment/private-saas/download-logs.md @@ -22,7 +22,7 @@ You can use the Download Logs feature to capture logs using the Services and tim - All services are selected by default. - The download supports one hour of logs from the Start Time. -The captured logs include all relevant Prophecy configurations, which includes the following items: +The captured logs include all relevant Prophecy configurations, such as the following items: - Kubernetes cluster configuration - Resource quotas From 2d42457381fa4ab89774dac7fb35ea3f404b136b Mon Sep 17 00:00:00 2001 From: alexanderahn Date: Mon, 25 Nov 2024 17:34:01 -0800 Subject: [PATCH 6/7] Add enable logs steps --- .../private-saas/configure-audit-logs.md | 2 +- .../private-saas/configure-backup.md | 8 +-- .../private-saas/configure-object-store.md | 2 +- .../deployment/private-saas/download-logs.md | 69 ++++++++++++++++++- 4 files changed, 72 insertions(+), 9 deletions(-) diff --git a/docs/architecture/deployment/private-saas/configure-audit-logs.md b/docs/architecture/deployment/private-saas/configure-audit-logs.md index 6323cc1dac..78be94ebe5 100644 --- a/docs/architecture/deployment/private-saas/configure-audit-logs.md +++ b/docs/architecture/deployment/private-saas/configure-audit-logs.md @@ -32,7 +32,7 @@ Certain [object store level configurations](./configure-object-store.md) are sha There are certain environment variables that need to be configured in Athena based on the kind of user events audit logs required. -### Navigating to the Audit config UI +### Navigate to the Audit config UI To configure object store settings in the Prophecy UI, follow these steps: diff --git a/docs/architecture/deployment/private-saas/configure-backup.md b/docs/architecture/deployment/private-saas/configure-backup.md index 25abe902cb..92aabf03da 100644 --- a/docs/architecture/deployment/private-saas/configure-backup.md +++ b/docs/architecture/deployment/private-saas/configure-backup.md @@ -38,7 +38,7 @@ Note this doc is constantly updated with new features/options and hence it is be There are certain environment variables that need to be configured in Athena based on the kind of backup-restore required. -### Navigating to the Backup config UI +### Navigate to the Backup config UI To configure object store settings in the Prophecy UI, follow these steps: @@ -83,7 +83,7 @@ To trigger a backup/restore manually you would require a API key. [Follow the AP ::: -#### Triggering a backup +#### Trigger a backup By default when you set the `ENABLE_REGULAR_BACKUPS` to `true`, backups are taken automatically at the configured `BACKUP_FREQUENCY` CRON schedule. However, we you would like to manually trigger a backup, you may use the API below. @@ -250,7 +250,7 @@ Note the following: - If backup was taken in Athena’s local Persistent Volume, it needs to be copied to Athena’s Persistent Volume in the destination cluster before the restore operation can be performed. - Restore operation always assumes a running destination Prophecy cluster where the data and the configuration of source cluster will be restored. -### Starting a Restore +### Start a Restore :::note @@ -344,7 +344,7 @@ Sample response when there is an ongoing backup and when there is no `timestamp` 4. Disaster Recovery restore can be initiated from the remote region when the primary goes down 5. Once the restore is done the Disaster Recovery site is available for work to continue. -## Migrating to different cluster +## Migrate to different cluster If there is a requirement to migrate to a different Kubernetes cluster, you can leverage the backups for that: diff --git a/docs/architecture/deployment/private-saas/configure-object-store.md b/docs/architecture/deployment/private-saas/configure-object-store.md index f7bcbc4ad6..c478bde69c 100644 --- a/docs/architecture/deployment/private-saas/configure-object-store.md +++ b/docs/architecture/deployment/private-saas/configure-object-store.md @@ -17,7 +17,7 @@ tags: Prophecy provides reliable support for storing essential data such as backups and audit logs. However, to enable this functionality, a storage location is required. Prophecy seamlessly integrates with the industry's leading cloud (provider) object stores, including AWS S3, Azure Blob Storage, and GCP Cloud Storage, as well as local persistent volumes (which could be backed by a NFS). This section outlines how to configure these storage options effectively. -## Navigating to the OS config UI +## Navigate to the OS config UI To configure object store settings in the Prophecy UI, follow these steps: diff --git a/docs/architecture/deployment/private-saas/download-logs.md b/docs/architecture/deployment/private-saas/download-logs.md index 3bdf88bfe7..287df59096 100644 --- a/docs/architecture/deployment/private-saas/download-logs.md +++ b/docs/architecture/deployment/private-saas/download-logs.md @@ -1,5 +1,5 @@ --- -title: Download Logs +title: Download logs id: download-logs description: Download Prophecy support logs sidebar_position: 3 @@ -15,7 +15,7 @@ As an admin user, you can download your environment logs from Prophecy without n - The overarching objective is to debug what is going on with your Prophecy services. - To achieve this, we've enabled admins to be able to download Prophecy logs and environment information so that they can upload them to Zendesk. -### Download Logs features +### Download logs features You can use the Download Logs feature to capture logs using the Services and time selectors. @@ -37,7 +37,70 @@ Sensitive information, such as customer preview data, credentials, tokens, or pa ::: -### Navigating to the Download Logs UI +## Enable Prophecy Downloads logs + +Before you can download logs, you must enable it in your private SAAS deployment. + +See the following requirements for enabling the Prophecy logs: + +- Prophecy collects the logs of all pods and stores it in the Athena Pod. +- Each pod uses an additional 500 MB ephemeral storage for temporary storage. +- Athena requires additional storage of around 100 GB to store one week of logs. +- A new container image fluentbit (`gcr.io/prophecy-share/fluent-bit:2.2.3`) is required for this feature. + +To enable Minio in Athena and provide it a volume, follow these steps: + +1. Add env variables to Athena STS: + +``` + - name: MINIO_ENDPOINT + value: athena:9000 + - name: ENABLE_FLUENTBIT_SIDECARS + value: "true" + - name: RUN_ATHENA_MINIO + value: "true" +``` + +2. Add volume to Athena STS: + +``` + volumeClaimTemplates: + ... + - apiVersion: v1 + kind: PersistentVolumeClaim + metadata: + creationTimestamp: null + name: minio-storage + spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 10Gi + volumeMode: Filesystem +``` + +3. Add volume mount to Athena: + +``` + volumeMounts: + ... + - mountPath: /minio/data + name: minio-storage +``` + +4. Add the Minio port to Athena SVC: + +``` + ports: + ... + - name: minio + port: 9000 + protocol: TCP + targetPort: 9000 +``` + +## Navigate to the Download logs UI To download logs in the Prophecy UI, follow these steps: From 208cdeaed3c1930bca5acb6d1c682662a2de6c69 Mon Sep 17 00:00:00 2001 From: alexanderahn Date: Mon, 25 Nov 2024 17:35:41 -0800 Subject: [PATCH 7/7] Reorder pages --- docs/architecture/deployment/private-saas/configure-backup.md | 2 +- .../deployment/private-saas/configure-object-store.md | 2 +- docs/architecture/deployment/private-saas/generate-api-key.md | 2 +- .../deployment/private-saas/sandbox-configuration.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/architecture/deployment/private-saas/configure-backup.md b/docs/architecture/deployment/private-saas/configure-backup.md index d77f3f1c52..892b48913d 100644 --- a/docs/architecture/deployment/private-saas/configure-backup.md +++ b/docs/architecture/deployment/private-saas/configure-backup.md @@ -2,7 +2,7 @@ title: Backup/Restore Configuration id: backup-restore description: Prophecy installations backup-restore being synced to object stores like S3, Azure Blob Storage etc. -sidebar_position: 3 +sidebar_position: 4 tags: - backup - restore diff --git a/docs/architecture/deployment/private-saas/configure-object-store.md b/docs/architecture/deployment/private-saas/configure-object-store.md index c478bde69c..4d1072bf9e 100644 --- a/docs/architecture/deployment/private-saas/configure-object-store.md +++ b/docs/architecture/deployment/private-saas/configure-object-store.md @@ -2,7 +2,7 @@ title: Object Store Configuration id: object-store-config description: Prophecy installations allow certain critical data like backups and audit logs to synced to object stores like S3, Azure Blob Storage, GCS etc. -sidebar_position: 4 +sidebar_position: 5 tags: - object store - configuration diff --git a/docs/architecture/deployment/private-saas/generate-api-key.md b/docs/architecture/deployment/private-saas/generate-api-key.md index a02ed1abbe..9520a1bdd6 100644 --- a/docs/architecture/deployment/private-saas/generate-api-key.md +++ b/docs/architecture/deployment/private-saas/generate-api-key.md @@ -2,7 +2,7 @@ title: Generate API Key id: generate-api-key description: This page shows you how to generate your own custom API key per deployment. -sidebar_position: 5 +sidebar_position: 6 tags: - Generate - API diff --git a/docs/architecture/deployment/private-saas/sandbox-configuration.md b/docs/architecture/deployment/private-saas/sandbox-configuration.md index 95a9018355..e9839fd332 100644 --- a/docs/architecture/deployment/private-saas/sandbox-configuration.md +++ b/docs/architecture/deployment/private-saas/sandbox-configuration.md @@ -2,7 +2,7 @@ title: Sandbox Configuration id: sandbox-config description: Prophecy installations allows configuration of various sandbox configuration -sidebar_position: 6 +sidebar_position: 7 tags: - sandbox - configuration