Update export statistics

This commit is contained in:
bot
2026-06-14 15:24:16 +00:00
parent 863d629aa8
commit fecefb49a1
5 changed files with 26 additions and 20 deletions
Binary file not shown.
BIN
View File
Binary file not shown.
+1 -1
View File
@@ -1,6 +1,6 @@
Metadata-Version: 2.4 Metadata-Version: 2.4
Name: zhurnal Name: zhurnal
Version: 0.1.0 Version: 0.2.0
Summary: Process monitoring and management web application Summary: Process monitoring and management web application
Author: retoor Author: retoor
Author-email: retoor@molodetz.nl Author-email: retoor@molodetz.nl
+13 -7
View File
@@ -236,7 +236,7 @@ class Zhurnal(BaseApplication):
for command, process_info in list(self.processes.items()): for command, process_info in list(self.processes.items()):
try: try:
# Get the subprocess # Get the subprocess
process = process_info.get('process') process = process_info.get("process")
if process and process.returncode is None: if process and process.returncode is None:
log.info(f"Terminating process: {command}") log.info(f"Terminating process: {command}")
try: try:
@@ -299,10 +299,7 @@ class Zhurnal(BaseApplication):
) )
# Store process information # Store process information
self.processes[command] = { self.processes[command] = {"process": process, "name": process_name}
'process': process,
'name': process_name
}
log.info(f"Running process {process_name}: {command}") log.info(f"Running process {process_name}: {command}")
@@ -320,7 +317,9 @@ class Zhurnal(BaseApplication):
) )
decoded_line = line.decode("utf-8", "ignore").strip() decoded_line = line.decode("utf-8", "ignore").strip()
print(decoded_line) print(decoded_line)
decoded_line = "".join(c for c in decoded_line if c.isprintable()) decoded_line = "".join(
c for c in decoded_line if c.isprintable()
)
# Broadcast to all WebSocket clients # Broadcast to all WebSocket clients
for client in app.clients: for client in app.clients:
@@ -346,7 +345,13 @@ class Zhurnal(BaseApplication):
# Read stdout and stderr concurrently # Read stdout and stderr concurrently
await asyncio.gather( await asyncio.gather(
read_output(self, f"{process_name}:stdout", process, process.stdout), read_output(self, f"{process_name}:stdout", process, process.stdout),
read_output(self, f"{process_name}:stderr", process, process.stderr, is_stderr=True) read_output(
self,
f"{process_name}:stderr",
process,
process.stderr,
is_stderr=True,
),
) )
# Wait for process to complete # Wait for process to complete
@@ -422,5 +427,6 @@ def cli():
app.run(host=args.host, port=args.port) app.run(host=args.host, port=args.port)
if __name__ == "__main__": if __name__ == "__main__":
cli() cli()