mirror of
https://github.com/open-telemetry/opentelemetry-python-contrib.git
synced 2025-08-02 19:47:17 +08:00
73 lines
2.1 KiB
Python
73 lines
2.1 KiB
Python
import itertools
|
|
|
|
from ddtrace.internal.runtime.container import CGroupInfo
|
|
|
|
|
|
def cgroup_line_valid_test_cases():
|
|
controllers = [
|
|
['name=systemd'],
|
|
['pids'],
|
|
['cpu', 'cpuacct'],
|
|
['perf_event'],
|
|
['net_cls', 'net_prio'],
|
|
]
|
|
|
|
ids = [str(i) for i in range(10)]
|
|
|
|
container_ids = [
|
|
'3726184226f5d3147c25fdeab5b60097e378e8a720503a5e19ecfdf29f869860',
|
|
'37261842-26f5-d314-7c25-fdeab5b60097',
|
|
'37261842_26f5_d314_7c25_fdeab5b60097',
|
|
]
|
|
|
|
pod_ids = [
|
|
'3d274242-8ee0-11e9-a8a6-1e68d864ef1a',
|
|
'3d274242_8ee0_11e9_a8a6_1e68d864ef1a',
|
|
]
|
|
|
|
paths = [
|
|
# Docker
|
|
'/docker/{0}',
|
|
'/docker/{0}.scope',
|
|
|
|
# k8s
|
|
'/kubepods/test/pod{1}/{0}',
|
|
'/kubepods/test/pod{1}.slice/{0}',
|
|
'/kubepods/test/pod{1}/{0}.scope',
|
|
'/kubepods/test/pod{1}.slice/{0}.scope',
|
|
|
|
# ECS
|
|
'/ecs/test-ecs-classic/5a0d5ceddf6c44c1928d367a815d890f/{0}',
|
|
'/ecs/test-ecs-classic/5a0d5ceddf6c44c1928d367a815d890f/{0}.scope',
|
|
|
|
# Fargate
|
|
'/ecs/55091c13-b8cf-4801-b527-f4601742204d/{0}',
|
|
'/ecs/55091c13-b8cf-4801-b527-f4601742204d/{0}.scope',
|
|
|
|
# Linux non-containerized
|
|
'/user.slice/user-0.slice/session-83.scope',
|
|
]
|
|
|
|
valid_test_cases = dict(
|
|
(
|
|
':'.join([id, ','.join(groups), path.format(container_id, pod_id)]),
|
|
CGroupInfo(
|
|
id=id,
|
|
groups=','.join(groups),
|
|
path=path.format(container_id, pod_id),
|
|
controllers=groups,
|
|
container_id=container_id if '{0}' in path else None,
|
|
pod_id=pod_id if '{1}' in path else None,
|
|
)
|
|
)
|
|
for path, id, groups, container_id, pod_id
|
|
in itertools.product(paths, ids, controllers, container_ids, pod_ids)
|
|
)
|
|
# Dedupe test cases
|
|
valid_test_cases = list(valid_test_cases.items())
|
|
|
|
# Assert here to ensure we are always testing the number of cases we expect
|
|
assert len(valid_test_cases) == 2150
|
|
|
|
return valid_test_cases
|