0
0
mirror of https://github.com/PostHog/posthog.git synced 2024-11-27 16:26:50 +01:00
posthog/task-definition.web.json
Karl-Aksel Puulmann 030529cfb3
Show internal metrics on /instance/status page (#4366)
* Extract function for capture

* Add capability to capture internal metrics

- This is behind an environment variable, we'll turn this on by default
on clickhouse-based installation.
- A special Org/Team gets created for this lazily, which is not accessible for
anyone. This makes avoiding issues with stats/billing/properties and easier.

* Capture some useful metrics into posthog

* Set up an unique constraint for for_internal_metrics organization

This avoids some nasty race conditions

* internal_metrics fixes

* Extract component OverviewTab

* New tabbing system for system status page

* Embed ClickhouseTab

* Generate a dashboard for internal metrics on demand

* More metrics

* Add more internal metrics, add tests

* Fix migration files

* Adjust copy

* Update task definitions

* Fix a typing issue

* Rename a component

* Migration fixup

* Try reset patch after test ends

* Clear lru_cache between tests
2021-05-20 13:42:39 +03:00

255 lines
11 KiB
JSON

{
"family": "posthog-production-web",
"networkMode": "awsvpc",
"executionRoleArn": "posthog-production-ecs-task",
"taskRoleArn": "posthog-production-ecs-task",
"containerDefinitions": [
{
"name": "posthog-production",
"portMappings": [
{
"containerPort": 8000,
"protocol": "tcp"
}
],
"logConfiguration": {
"logDriver": "awslogs",
"options": {
"awslogs-group": "awslogs-posthog-production",
"awslogs-region": "us-east-1",
"awslogs-stream-prefix": "posthog-production"
}
},
"essential": true,
"environment": [
{
"name": "USING_PGBOUNCER",
"value": "True"
},
{
"name": "DISABLE_SERVER_SIDE_CURSORS",
"value": "True"
},
{
"name": "CLICKHOUSE_ASYNC",
"value": "False"
},
{
"name": "CLICKHOUSE_DATABASE",
"value": "posthog"
},
{
"name": "CLICKHOUSE_ENABLE_STORAGE_POLICY",
"value": "True"
},
{
"name": "CLICKHOUSE_REPLICATION",
"value": "True"
},
{
"name": "CLICKHOUSE_SECURE",
"value": "True"
},
{
"name": "CLICKHOUSE_VERIFY",
"value": "True"
},
{
"name": "EVENT_USAGE_CACHING_TTL",
"value": "3600"
},
{
"name": "INCLUDE_DOCS",
"value": "1"
},
{
"name": "IS_BEHIND_PROXY",
"value": "True"
},
{
"name": "DISABLE_SECURE_SSL_REDIRECT",
"value": "True"
},
{
"name": "KAFKA_BASE64_KEYS",
"value": "True"
},
{
"name": "PRIMARY_DB",
"value": "clickhouse"
},
{
"name": "SITE_URL",
"value": "https://app.posthog.com"
},
{
"name": "EMAIL_DEFAULT_FROM",
"value": "hey@posthog.com"
},
{
"name": "DEPLOYMENT",
"value": "Posthog Cloud"
},
{
"name": "CLICKHOUSE_DENORMALIZED_PROPERTIES",
"value": "issampledevent,currentscreen,objectname"
},
{
"name": "BILLING_TRIAL_DAYS",
"value": "0"
},
{
"name": "BILLING_NO_PLAN_EVENT_ALLOCATION",
"value": "10000"
},
{
"name": "TRUST_ALL_PROXIES",
"value": "True"
},
{
"name": "ASYNC_EVENT_PROPERTY_USAGE",
"value": "1"
},
{
"name": "CAPTURE_INTERNAL_METRICS",
"value": "True"
}
],
"secrets": [
{
"name": "CLICKHOUSE_CA",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:CLICKHOUSE_CA::"
},
{
"name": "CLICKHOUSE_HOST",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:CLICKHOUSE_HOST::"
},
{
"name": "CLICKHOUSE_MIGRATION_HOSTS",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:CLICKHOUSE_MIGRATION_HOSTS::"
},
{
"name": "CLICKHOUSE_PASSWORD",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:CLICKHOUSE_PASSWORD::"
},
{
"name": "DATABASE_URL",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:DATABASE_URL::"
},
{
"name": "EMAIL_HOST",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:EMAIL_HOST::"
},
{
"name": "EMAIL_HOST_PASSWORD",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:EMAIL_HOST_PASSWORD::"
},
{
"name": "EMAIL_HOST_USER",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:EMAIL_HOST_USER::"
},
{
"name": "EMAIL_PORT",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:EMAIL_PORT::"
},
{
"name": "EMAIL_USE_TLS",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:EMAIL_USE_TLS::"
},
{
"name": "KAFKA_CLIENT_CERT_B64",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:KAFKA_CLIENT_CERT_B64::"
},
{
"name": "KAFKA_CLIENT_CERT_KEY_B64",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:KAFKA_CLIENT_CERT_KEY_B64::"
},
{
"name": "KAFKA_TRUSTED_CERT_B64",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:KAFKA_TRUSTED_CERT_B64::"
},
{
"name": "KAFKA_URL",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:KAFKA_URL::"
},
{
"name": "POSTHOG_PERSONAL_API_KEY",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:POSTHOG_PERSONAL_API_KEY::"
},
{
"name": "REDIS_URL",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:REDIS_URL::"
},
{
"name": "SECRET_KEY",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:SECRET_KEY::"
},
{
"name": "SENTRY_DSN",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:SENTRY_DSN::"
},
{
"name": "SOCIAL_AUTH_GITHUB_KEY",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:SOCIAL_AUTH_GITHUB_KEY::"
},
{
"name": "SOCIAL_AUTH_GITHUB_SECRET",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:SOCIAL_AUTH_GITHUB_SECRET::"
},
{
"name": "SOCIAL_AUTH_GITLAB_KEY",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:SOCIAL_AUTH_GITLAB_KEY::"
},
{
"name": "SOCIAL_AUTH_GITLAB_SECRET",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:SOCIAL_AUTH_GITLAB_SECRET::"
},
{
"name": "SOCIAL_AUTH_GOOGLE_OAUTH2_KEY",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:SOCIAL_AUTH_GOOGLE_OAUTH2_KEY::"
},
{
"name": "SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:SOCIAL_AUTH_GOOGLE_OAUTH2_SECRET::"
},
{
"name": "STATSD_HOST",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:STATSD_HOST::"
},
{
"name": "STRIPE_API_KEY",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:STRIPE_API_KEY::"
},
{
"name": "STRIPE_DEFAULT_PRICE_ID",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:STRIPE_DEFAULT_PRICE_ID::"
},
{
"name": "STRIPE_GROWTH_PRICE_ID",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:STRIPE_GROWTH_PRICE_ID::"
},
{
"name": "STRIPE_PUBLISHABLE_KEY",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:STRIPE_PUBLISHABLE_KEY::"
},
{
"name": "STRIPE_WEBHOOK_SECRET",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:STRIPE_WEBHOOK_SECRET::"
},
{
"name": "NEW_RELIC_LICENSE_KEY",
"valueFrom": "arn:aws:secretsmanager:us-east-1:795637471508:secret:Posthog_Production_Heroku-FQ2itU:NEW_RELIC_LICENSE_KEY::"
}
],
"entryPoint": ["sh", "-c"],
"command": ["./bin/docker-server-newrelic"],
"linuxParameters": {
"initProcessEnabled": true
}
}
],
"requiresCompatibilities": ["FARGATE"],
"cpu": "1024",
"memory": "2048"
}