feat: use timestamped output filenames (containers_snapshot_<date>_<host>)
This commit is contained in:
@@ -8,6 +8,9 @@ Die GraphML-Datei ist für die Visualisierung in yEd optimiert (Star-Schema).
|
||||
import docker
|
||||
import pandas as pd
|
||||
import re
|
||||
import os
|
||||
import datetime
|
||||
import socket
|
||||
|
||||
def sanitize_id(text):
|
||||
"""
|
||||
@@ -173,5 +176,22 @@ def save_to_graphml(data, filename='docker_container_info.graphml'):
|
||||
if __name__ == '__main__':
|
||||
print("[*] Sammle Container-Informationen...")
|
||||
container_data = get_container_info()
|
||||
save_to_csv(container_data)
|
||||
save_to_graphml(container_data)
|
||||
|
||||
# Erzeuge standardisierte Dateinamen: containers_snapshot_<YYYY-MM-DD>_<hostname>.(csv|graphml)
|
||||
date_str = datetime.date.today().isoformat()
|
||||
hostname = sanitize_id(socket.gethostname())
|
||||
base_name = f"containers_snapshot_{date_str}_{hostname}"
|
||||
|
||||
out_dir = 'out_01'
|
||||
try:
|
||||
os.makedirs(out_dir, exist_ok=True)
|
||||
except Exception:
|
||||
# Falls das Anlegen fehlschlägt, fahren wir mit dem aktuellen Verzeichnis fort
|
||||
out_dir = '.'
|
||||
|
||||
csv_file = os.path.join(out_dir, f"{base_name}.csv")
|
||||
graph_file = os.path.join(out_dir, f"{base_name}.graphml")
|
||||
|
||||
save_to_csv(container_data, filename=csv_file)
|
||||
save_to_graphml(container_data, filename=graph_file)
|
||||
print(f"[+] Dateien: {csv_file}, {graph_file}")
|
||||
|
||||
Reference in New Issue
Block a user