Source code for container_collection.docker.get_docker_logs

from docker import APIClient


[docs]def get_docker_logs(api_client: APIClient, container_id: str, log_filter: str) -> str: """ Get logs for Docker job. Parameters ---------- api_client Docker API client. container_id Docker container ID. log_filter Filter for log events (use "-" for exclusion). Returns ------- : All filtered log events. """ logs = api_client.logs(container=container_id).decode("utf-8") log_items = logs.split("\n") if "-" in log_filter: log_filter = log_filter.replace("-", "") log_items = [item for item in log_items if log_filter not in item] else: log_items = [item for item in log_items if log_filter in item] return "\n".join(log_items)