- Guides
- Share observability report
Generate and distribute the report to external platforms by using the command edr send-report
.
You can specify more than one platform in the command, and the report will be sent to all.
All arguments can be passed either as CLI arguments or in the config.yml
file.
Slack
After you set up a Slack app and token you can run the command:
edr send-report --slack-token <SLACK_TOKEN> --slack-channel-name <CHANNEL_NAME>
You can control the name of the report by providing --slack-file-name <REPORT_NAME>
to the edr send-report
command. Make sure the report name you provided ends with .html
.
Configuration
If you prefer to use config.yml
file, you can add the following configuration instead of the CLI arguments:
slack:
token: [Slack token]
channel_name: [Slack channel]
Amazon S3
The prerequisites are to have AWS access keys and an S3 bucket.
If you already have
a ~/.aws/credentials
file, you can run the command and provide only the profile name and the bucket’s name:
edr send-report --aws-profile-name <AWS_PROFILE> --s3-bucket-name <BUCKET_NAME>
Alternatively, you can pass the access key ID and secret access key:
edr send-report --aws-access-key-id <ACCESS_KEY_ID> --aws-secret-access-key <SECRET_ACCESS_KEY> --s3-bucket-name <BUCKET_NAME>
You can control the location of the report in the bucket by providing --bucket-file-path <REPORT_PATH>
to
the edr send-report
command. Make sure the report’s file name ends with .html
.
Hosting the report as a website
You can host the report as the bucket’s website so that you can browse to it with a constant URL
like https://<Elementary-Report-Bucket>.s3-website.<Region>.amazonaws.com
.
In order to do that, you’ll need to complete steps 1-4 on
the configure a website on the bucket
guide.
After you’ve completed it, pass --update-bucket-website true
to send-report
in order to update the main page of
the bucket’s website.
Configuration
If you prefer to use config.yml
file, you can add the following configuration instead of the CLI arguments:
aws:
profile_name: [AWS profile name]
s3_bucket_name: [S3 bucket name]
update_bucket_website: [true | false]
Google Cloud Storage (GCS)
The prerequisite is to have a GCS bucket.
Once you have it, you’ll need to provide one of two ways to authenticate:
Service Account (Recommended)
you can send the report to your GCS bucket by running the command:
edr send-report --google-service-account-path <SERVICE_ACCOUNT_PATH> --gcs-bucket-name <BUCKET_NAME>
OAuth using gcloud
If you’re using OAuth with gcloud
, simply omit --google-service-account-path
:
edr send-report --gcs-bucket-name <BUCKET_NAME>
You can control the location of the report in the bucket by providing --bucket-file-path <REPORT_PATH>
to
the edr send-report
command. Make sure the report’s file name ends with .html
.
Hosting the report as a website
You can host the report as the bucket’s website so that you can browse to it with a constant URL
like https://storage.googleapis.com/<Elementary-Report-Bucket>/index.html
.
Here’s an example.
In order to do that, pass --update-bucket-website true
to send-report
in order to update the index.html
file in
the bucket.
Note: You might want to limit or grant access to your reports bucket to certain users.
Configuration
If you prefer to use config.yml
file, you can add the following configuration instead of the CLI arguments:
google:
service_account_path: [Google service account path]
gcs_bucket_name: [GCS bucket name]
update_bucket_website: [true | false]
Missing something?
Want to share the report with a different method or consult on deployment? Reach out to us on Slack.