"""Read Prod ingress history and D3 diagnostics without changing the host. Nginx is the external-request counting boundary. Docker output contributes only search/permission diagnostics; internal HTTP calls are never added to volume. """ from __future__ import annotations import glob import gzip import json import math import os import re import subprocess from datetime import datetime, timezone from pathlib import Path from urllib.parse import urlsplit from daily_prod_backend_log_report import HttpRequest, strip_ansi DEFAULT_NGINX_GLOBS = ( "/var/log/nginx/nexuscrm-prod-d3-*.access.log*", "/var/log/nginx/nexuscrm-prod.access.log*", ) DEFAULT_PROD_ROOT = "/home/ubuntu/nexuscrm-deployment/online/envs/multi_prod" COMBINED = re.compile( r'^\S+ \S+ \S+ \[(?P