Deployment
Creating New Tenants
PostHog
PostHog is used to track user interaction with the platform.
We have separate projects for "Development" and "Production" environments. All customer ESProfiler tenants published data into the "Production" project. When a new tenant is spun up, data tracking will automatically be enabled.
Classifying Tenant
In PostHog it is possible to define a "Transformation". These parse incoming events and can modify or append the data before being committed to the PostHog data set. We use this to add a new esp_tenant field, which makes it easier us to to then filter the analytics by a particular tenant.
To view Transformations in PostHog you can navigate to Data Management > Transformations. You will then find the Classify Tenant transformation, which you can click to view the details of.
Adding New Tenants
To add your new tenant to the classification, click "Edit Source Code", then add a new if statement for your new tenant:
if (event.properties.$session_entry_host == '<tenant>.own.esprofiler.com') {
returnEvent.properties.esp_tenant := 'Company Name'
}
Tracking Deployment Status
Tenants
In order to track the deployments of tenants, we currenlty use the AWS Console for ECS.
Currently, there is Spring Actuator on the platform application so we don't have an uptime robot like we do for central services.
Services
In order to track the deployments of central services, we currenlty use the AWS Console for ECS.
We also have an uptime robot that monitors the central services and will notify the team on Slack on the ops-production channel if there are any issues with the services.
Release Status
We also have a page on CPS Manager that tracks the version of both active tenants and services. You can find it here: CPS Manager.

