Metadata reporters¶
This content has moved!
We have moved our samples to a separate, dedicated site: https://solutions.atlan.com.
This document is no longer being maintained.
The reporters provide examples to extract metadata from Atlan:
- EnrichmentReporter extracts metadata about assets and their enrichment
- SlackDiscussionReporter extracts counts of the Slack discussions linked to each asset in Atlan
- UserReporter extracts details of users configured in Atlan
These can be run:
- Locally on your workstation. Each run will produce a timestamped Excel file in the directory where you run the code on your workstation. (Examples of running each reporter locally are provided at the end of each reporter's individual documentation page.)
- Through an AWS Lambda function, which can be scheduled to run periodically from within Atlan. Each run will produce a timestamped Excel file into an S3 bucket of your choice.
Running the reporters through AWS Lambda¶
To run a reporter through AWS Lambda you need to do some initial setup:
Build the package¶
To build the package for deployment into a Lambda function, from a cloned copy of the atlanhq/atlan-java-samples repository run:
$ ./gradlew buildZip
This will create a atlan-java-samples-<version>-SNAPSHOT.zip
file under the build/distributions
directory.
Create Lambda function¶
Create a new Lambda function (from scratch) in your AWS account, with the following:
- Runtime of Java 17
- Upload the
atlan-java-samples-<version>-SNAPSHOT.zip
file as the Code source for the function - Change the Handler for the Runtime settings to the class of the report you want the Lambda to produce:
com.atlan.samples.reporters.EnrichmentReporter
for the enrichment reportcom.atlan.samples.reporters.SlackDiscussionReporter
for the Slack discussion reportcom.atlan.samples.reporters.UserReporter
for the user details report
- Change the Configuration of the function as follows:
- Increase the Timeout to at least 1 minute
- Add S3 permissions to allow reading and writing to the S3 bucket where you want to store the Excel output
- Add a policy that allows either an IAM role or user to use the
lambda:InvokeFunction
action on the function - Add an environment variable called
ATLAN_API_KEY
to the function, and set its value to your Atlan API token - Add an environment variable called
ATLAN_BASE_URL
to the function, and set its value to your Atlan tenant URL (for example,https://tenant.atlan.com
)
Create S3 bucket¶
Ensure the S3 bucket where you want the results to be stored already exists, before running the Lambda function.
Will only use an existing bucket
The reporter will only try to write to an existing bucket, it will not attempt to create that bucket if it does not exist.
Create Atlan AWS Lambda Trigger¶
When setting up the Lambda trigger in Atlan , provide:
- the IAM credentials you gave permission to invoke the Lambda function
- the ARN of the Lambda function
- use
$LATEST
as the qualifier for the function
And for the payload, see the specific configuration options listed for each different reporter.