MCPcopy Create free account
hub / github.com/cosdata/cosdata / find_cosdata_process

Method find_cosdata_process

tests/test_hybrid.py:44–63  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

42 self.monitor_thread = None
43
44 def find_cosdata_process(self):
45 for proc in psutil.process_iter(["pid", "name", "cmdline", "exe"]):
46 try:
47 # Check process name
48 if proc.info["name"] == "cosdata":
49 return psutil.Process(proc.info["pid"])
50
51 # Check command line arguments
52 if proc.info["cmdline"]:
53 cmdline_str = " ".join(proc.info["cmdline"])
54 if "cosdata" in cmdline_str and "--admin-key" in cmdline_str:
55 return psutil.Process(proc.info["pid"])
56
57 # Check executable path
58 if proc.info.get("exe") and "cosdata" in proc.info["exe"]:
59 return psutil.Process(proc.info["pid"])
60
61 except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess):
62 pass
63 return None
64
65 def start_monitoring(self, sample_interval=0.1):
66 self.process = self.find_cosdata_process()

Callers 1

start_monitoringMethod · 0.95

Calls 1

getMethod · 0.45

Tested by

no test coverage detected