def test_docker_kubernetes_system_info_from_environ_overrides_cgroups(): # initialize agent only after overriding environment zuqa_client = TempStoreClient(metrics_interval="0ms") # mock docker/kubernetes data here to get consistent behavior if test is run in docker with mock.patch("zuqa.utils.cgroup.get_cgroup_container_metadata" ) as mock_metadata, mock.patch( "socket.gethostname") as mock_gethostname: mock_metadata.return_value = { "container": { "id": "123" }, "kubernetes": { "pod": { "uid": "456" } } } mock_gethostname.return_value = "foo" system_info = zuqa_client.get_system_info() assert "kubernetes" in system_info assert system_info["kubernetes"] == { "pod": { "uid": "podid", "name": "pod" }, "node": { "name": "node" }, "namespace": "namespace", } assert system_info["container"] == {"id": "123"}
def test_docker_kubernetes_system_info_except_hostname_from_environ(): # initialize agent only after overriding environment elasticapm_client = TempStoreClient(metrics_interval="0ms") # mock docker/kubernetes data here to get consistent behavior if test is run in docker with mock.patch("elasticapm.utils.cgroup.get_cgroup_container_metadata") as mock_metadata, mock.patch( "socket.gethostname" ) as mock_gethostname: mock_metadata.return_value = {} mock_gethostname.return_value = "foo" system_info = elasticapm_client.get_system_info() assert "kubernetes" in system_info assert system_info["kubernetes"] == {"pod": {"name": "foo"}, "namespace": "namespace"}