Select Page
View Categories

Reverse Proxy — Access Logs

EagleSafe ZTB logs every request and connection that passes through your reverse proxy services — both HTTP and L4 (TCP, UDP, TLS). Access logs provide visibility into who is accessing your services, from where, and whether requests were allowed or denied. Useful for auditing, debugging, and compliance.

View access logs

Go to Activity → Proxy Events in the dashboard. The table shows all HTTP requests and L4 connections with filters for time range, status, and other fields.

What access logs capture

FieldDescriptionHTTPL4
TimestampWhen the request or connection occurred
Protocolhttp, tcp, udp, or tls
Method / ProtocolHTTP method (GET, POST…) or protocol name for L4
Host / URLDomain and path for HTTP; host and port for L4
Status CodeHTTP status code (200, 401, 403, 500…). Empty for L4.
DurationRequest or connection duration in milliseconds
Bytes UploadedBytes sent from client to backend
Bytes DownloadedBytes sent from backend to client
Source IPThe client's IP address
LocationCountry, city, and region based on source IP geolocation
Auth MethodAuthentication method used (SSO, password, PIN, header, or none)
UserAuthenticated user ID (SSO only)
ReasonReason for denial, if applicable

Understanding log entries

HTTP entries

  • Allowed: status 2xx with the authentication method used.
  • Denied: status 401 or 403 with a reason (e.g. invalid password, IP restricted, country restricted).
  • Errors: status 5xx — the backend is unreachable or returned an error.

L4 entries

Logged when the connection closes, recording total bytes and duration. No HTTP status codes. Denied connections (blocked by access restrictions) are logged immediately with a deny reason.

Deny reasons

ReasonDescription
ip_restrictedClient IP blocked by a CIDR access restriction
country_restrictedClient country blocked by a country access restriction
geo_unavailableCountry restrictions configured but GeoIP database unavailable (fail-closed)
crowdsec_banClient IP has a CrowdSec ban decision
crowdsec_captchaClient IP has a CrowdSec captcha decision
crowdsec_throttleClient IP has a CrowdSec throttle decision
crowdsec_unavailableCrowdSec enforce mode active but bouncer not yet synced (fail-closed)

All CrowdSec decision types result in connection denial in enforce mode. In observe mode the connection is allowed but the verdict is recorded — shown in the dashboard with an observe-mode badge for auditing without impacting traffic.

Log retention

On EagleSafe's self-hosted deployment, retention is configurable in management.json:

{
    "ReverseProxy": {
        "AccessLogRetentionDays": 7,
        "AccessLogCleanupIntervalHours": 24
    }
}
  • AccessLogRetentionDays — how long logs are kept before automatic deletion.
  • AccessLogCleanupIntervalHours — how often expired entries are purged.

What's next?