8000 add config analytics event on start (#7508) · localstack/localstack@21d46b5 · GitHub
[go: up one dir, main page]

Skip to content

Commit 21d46b5

Browse files
authored
add config analytics event on start (#7508)
1 parent 312226a commit 21d46b5

File tree

1 file changed

+44
-0
lines changed

1 file changed

+44
-0
lines changed

localstack/runtime/analytics.py

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import logging
2+
import os
3+
4+
from localstack.runtime import hooks
5+
from localstack.utils.analytics import log
6+
7+
LOG = logging.getLogger(__name__)
8+
9+
TRACKED_ENV_VAR = [
10+
"DEBUG",
11+
"DISABLE_CORS_CHECK",
12+
"DISABLE_CORS_HEADERS",
13+
"EAGER_SERVICE_LOADING",
14+
"EDGE_PORT",
15+
"HOSTNAME",
16+
"HOSTNAME_EXTERNAL",
17+
"HOSTNAME_FROM_LAMBDA",
18+
"LAMBDA_EXECUTOR",
19+
"LAMBDA_RUNTIME_EXECUTOR",
20+
"LAMBDA_REMOTE_DOCKER",
21+
"LAMBDA_PREBUILD_IMAGES",
22+
"LEGACY_DIRECTORIES",
23+
"LEGACY_EDGE_PROXY",
24+
"LS_LOG",
25+
"PERSISTENCE",
26+
"OPENSEARCH_ENDPOINT_STRATEGY",
27+
"SQS_ENDPOINT_STRATEGY",
28+
]
29+
30+
PRESENCE_ENV_VAR = ["LAMBDA_FALLBACK_URL", "LAMBDA_FORWARD_URL"]
31+
32+
33+
@hooks.on_infra_start()
34+
def _publish_config_as_analytics_event():
35+
env_vars = list(TRACKED_ENV_VAR)
36+
37+
for key, value in os.environ.items():
38+
if key.startswith("PROVIDER_OVERRIDE_"):
39+
env_vars.append(key)
40+
41+
env_vars = {key: os.getenv(key) for key in env_vars}
42+
present_env_vars = {env_var: 1 for env_var in PRESENCE_ENV_VAR if os.getenv(env_var)}
43+
44+
log.event("config", env_vars=env_vars, set_vars=present_env_vars)

0 commit comments

Comments
 (0)
0