Sigma Impressions
Euno can observe impression data for Sigma workbooks and elements by reading CSV exports that Sigma writes to cloud storage. This helps you identify popular workbooks, find underused content, and understand who is actively using Sigma.
Prerequisite: Sigma Impressions requires the Sigma integration to also be set up. The Sigma integration discovers workbooks and elements in Euno; the Sigma Impressions integration then associates exported impression data with those existing resources.
For details on the usage properties observed (for example total_impressions_14d and used), see Sigma Impressions Data.
Overview
Sigma Impressions is an integration that periodically reads CSV files from a configured gs://, s3://, or azure:// prefix, converts each row to an impression event, and aggregates those events onto Sigma workbooks and elements.
This integration is intentionally separate from the main Sigma integration:
Sigma discovers the metadata and lineage for workbooks, data models, and elements.
Sigma Impressions reads usage exports and enriches the discovered Sigma resources with impression metrics.
Step 1: Set up the Sigma integration in Euno
If you have not already done so, follow the Sigma integration setup guide first.
Without the Sigma integration, Euno has no sigma_workbookor sigma_workbook_element resources to attach the impression data to.
Step 2: Configure Sigma to export usage data
Sigma's audit-log export feature writes CSV files to cloud storage. Only a Sigma Admin can configure this.
High-level workflow in Sigma:
Open the Sigma Audit Logs connection.
Save the relevant audit-log table or workbook page element as a workbook.
Configure a scheduled export to Cloud Storage.
Point that export at a dedicated prefix in GCS, S3, or Azure Blob Storage.
Make sure Sigma creates a new file on each run instead of overwriting previous files.
Sigma documentation for this export flow:
Step 3: Prepare an Euno-compatible export
Euno expects the exported CSV to contain the following columns:
request_time
Yes
Timestamp of the impression event
user_email
Yes
Email of the Sigma user who viewed the resource
workbook_url_id
Yes
Sigma workbook URL ID
element_id
Optional
Sigma element ID, if the row should map to a specific element
count
Optional
Number of impressions represented by the row. Defaults to 1 if omitted
Euno matches headers case-insensitively and also accepts a few common aliases, but using the exact names above is strongly recommended.
Recommended workbook/export shape
Create a Sigma workbook or view that produces one row per impression, with:
a timestamp column
a user email column
the workbook URL ID
the element ID when available
an optional count column if your export pre-aggregates rows
If your export mixes workbook-level and element-level rows:
rows with
element_idare attached tosigma_elementrows without
element_idare attached tosigma_workbook
Step 4: Grant Euno read access to the export location
Option A: Google Cloud Storage
Recommended approach:
Create or choose a dedicated bucket or prefix for Sigma audit-log exports.
Configure Sigma's audit-log storage integration to write to that location.
Grant read access on that bucket/prefix to Euno's runtime service account.
At minimum, Euno needs permission to:
list objects in the configured prefix
read the exported CSV objects
Option B: Amazon S3
Recommended approach:
Create or choose a dedicated bucket/prefix for the exports.
Configure Sigma's audit-log storage integration to write to that location.
Create a dedicated read-only IAM principal for Euno.
Give it least-privilege access to:
s3:ListBucketon the bucket (scoped to the export prefix)s3:GetObjecton the exported files
Store the credentials in the Euno Sigma Impressions integration.
You can also use temporary AWS credentials (aws_access_key_id, aws_secret_access_key, aws_session_token) if that fits your security model better.
Option C: Azure Blob Storage
Recommended approach:
Create or choose a dedicated container/prefix for the exports, and configure Sigma's audit-log storage integration to write to that location.
Give Euno read access using one of the following methods:
Method 1 β Container-scoped SAS token (simplest):
In the Azure portal, open the container β Shared access tokens.
Grant Read and List permissions, set a start/expiry, and click Generate SAS token and URL.
Copy the Blob SAS token (the
sv=...&sig=...query string) β this is what you paste into Euno.
A SAS token is a bearer credential with an expiry. To make it revocable without rotating the account key, generate it against a container stored access policy.
Method 2 β Microsoft Entra service principal (RBAC-based, no shared token):
In Microsoft Entra ID β App registrations, register an app and create a client secret (copy the secret Value, shown only once).
Assign the app Storage Blob Data Reader on the container: container β Access Control (IAM) β Add role assignment. Creating role assignments requires Owner or User Access Administrator on the scope; role propagation can take a few minutes.
From the app's Overview, you'll need the Directory (tenant) ID, the Application (client) ID, and the client secret Value.
At minimum, Euno needs permission to list objects in the configured prefix and read the exported CSV objects.
Step 5: Add Sigma Impressions in Euno
Go to the Sources page in Euno.
Click Add New Source and select Sigma Impressions.
Configure:
Name
A name for this integration (for example Sigma Impressions - Production)
Bucket URI
Prefix where Sigma writes the CSV files: gs://..., s3://..., or azure://<account>.blob.core.windows.net/<container>/<prefix>
Storage provider
Selects which credential fields are shown; inferred from the Bucket URI scheme
Days back to look
How many days of files Euno should scan on each run. Maximum: 6
AWS Access Key ID
Optional. Needed only for s3:// if Euno cannot use ambient AWS credentials
AWS Secret Access Key
Optional. Needed only for s3:// if Euno cannot use ambient AWS credentials
AWS Session Token
Optional. Use when providing temporary AWS credentials
AWS Region
Optional region override for S3 access
Azure auth method
For azure://: choose SAS token or Service principal (Microsoft Entra ID)
Azure SAS token
For Azure SAS auth: a container-scoped SAS token with read and list permissions
Azure tenant ID
For Azure service principal: the app's Directory (tenant) ID
Azure client ID
For Azure service principal: the app's Application (client) ID
Azure client secret
For Azure service principal: the app's client secret Value
Click Test & Save.
Euno validates the bucket URI format and normalizes the storage prefix before saving.
Step 6: Schedule the integration
Sigma audit log exports are not real-time, and Sigma notes that fresh event data may take time to appear in the logs.
Recommended schedule:
Run the Sigma export on a regular cadence.
Run Sigma Impressions shortly after the export is expected to land.
Keep Days back to look small (for example
2or3) unless your export cadence requires more history.
The integration enforces a maximum lookback of 6 days.
Testing the setup
For a simple validation:
Configure the export and send one test export from Sigma.
Confirm that new CSV files appear in the configured bucket prefix.
Run the Sigma Impressions integration in Euno.
Open a known Sigma workbook or element in Euno and confirm that impression properties appear.
Good test data:
one workbook-level row
one element-level row
at least two distinct users
one row with
count > 1if you plan to export pre-aggregated data
Troubleshooting
No impression data appears in Euno
Check:
the main Sigma integration is active
the exported CSV includes
workbook_url_idthe Sigma workbook exists in Euno
the bucket URI points to the correct prefix
Euno can list and read the exported files
Workbook metrics appear, but element metrics do not
Check:
the export includes
element_idthe
element_idmatches Sigma element IDs discovered by the Sigma integration
Euno cannot save the integration
Check:
the bucket URI starts with
gs://,s3://, orazure://for S3, either both access key and secret key are provided, or both are left blank
for Azure, provide either a SAS token or a full service principal (tenant ID, client ID, and client secret); if both are supplied, the service principal is used
Azure authentication fails
Check:
SAS token: it has both Read and List permissions (List is required to enumerate the export files) and has not expired
Service principal: the Azure tenant ID is the app's Directory (tenant) ID and the Azure client ID is its Application (client) ID β these are easy to swap
Service principal: the app has the Storage Blob Data Reader role on the container (role changes can take a few minutes to take effect)
Related
Sigma integration - Discovers Sigma workbooks, data models, and elements.
Sigma Usage Data - Warehouse-query usage from supported warehouses.
Sigma Impressions Data - Impression properties observed by this integration.
Last updated