Skip to main content
EU-hosted Your data never leaves the EU

EU error tracking & log aggregation See every error.
Search every log.
Keep it all in the EU.

AppLogger is an EU-hosted, GDPR-compliant unified observability platform that combines error tracking and log aggregation in one tool — proven on Symfony, open to any stack via syslog and REST.

No credit card. Connect your first project in about 5 minutes.

EU data residency GDPR by design Errors + logs, unified ~5-minute Symfony setup Public beta

Built in Symfony 🇫🇷 One-line bundle for PHP apps· Logs via syslog/TLS + HTTPS· Errors via REST API· Hosted in the EU

The status quo is two of everything

Two tools, two bills, and your data in the US.

Most teams run an error tracker in one place and a log service in another — then correlate timestamps by hand while telemetry sits on someone else's continent.

Split timelines

Errors live in one tool, logs in another. When something breaks, you're cross-referencing timestamps across tabs.

Two of everything to maintain

Two vendors means two integrations, two access models and two retention policies to keep in sync.

Data under US reach

An "EU region" owned by a US company still sits under US legal reach (CLOUD Act, FISA 702). The label isn't the law.

AppLogger: errors + logs, one timeline, hosted in the EU.

Pillar 1 — Error tracking

Smart error grouping, stack traces & regression detection.

No more var_dump(). Similar errors collapse into one issue, with the context you need to actually fix them.

  • Fingerprint grouping

    Similar errors are grouped by a SHA-256 fingerprint of exception class, file, line and stack frames — one issue, not a thousand duplicates.

  • Full stack traces & context

    Complete call stacks with request data, user context and breadcrumbs (capped at 50), immutable once stored.

  • Regression detection

    Resolve an error in a release; if it returns in a different release, it's automatically flagged as a regression.

  • Alerts where you work

    Email, Slack and signed webhooks (HMAC-SHA256) on error.new, error.spike and error.regression.

Pillar 2 — Log aggregation

Full log aggregation, in the same project as your errors.

Ship logs from anything that runs, search them fast, and keep exactly the history you need — all in the same project as your errors.

  • Ingest any way

    HTTPS log ingestion and syslog over TLS (RFC 5424, port 6514). Per-project endpoints with unique tokens; RFC 3164 legacy supported.

  • Fast at any volume

    Search stays fast even under heavy log volume, with tier-based retention windows so you keep exactly the history you need.

  • Search & filter rules

    Full-text search with severity, hostname and time-range filters — plus a rules engine for severity, regex, source, sampling and rate limits.

  • Built-in statistics & resilient ingest

    Hourly and daily rollups of counts and unique sources, hosts and apps — backed by buffered ingestion that keeps accepting your logs under load.

Why one platform beats two

Unified observability: from a grouped error to the logs around it.

Errors and logs share one data model, one auth layer, one dashboard and one retention model. No second vendor, no manual timestamp matching.

One data model

Same project, same account, same access control for errors and logs.

One auth layer

No cross-vendor integrations to wire up or keep in sync.

One retention model

Consistent deletion and access guarantees across your whole observability surface — which matters for a GDPR audit.

Error tracking · Session replay

Watch the crash. Without the creepy.

See exactly what led to an error — clicks, scrolls, navigation — without recording a single keystroke or personal detail.

  • DOM structure only

    Captures layout and interactions, never text content or form data.

  • Masked in the browser

    Sensitive fields are scrubbed before data ever leaves the page.

  • Breadcrumb timeline

    Every click, navigation and console log leading up to the error.

  • PII-free session linkage

    Sessions are linked with an irreversible SHA-256 hash — connect events without storing identities.

Setup

Symfony error tracking in one line.

Live in about five minutes — Symfony Flex does the heavy lifting. Zero configuration required.

1

Install the bundle

composer require dennisvanbeersel/symfony-logger-client

The Flex recipe wires it up automatically.

2

Add your DSN

APPLOGGER_DSN=
https://key@app.applogger.eu/id

Copy your project DSN from the dashboard into .env.

3

Deploy and chill

git push origin main

Monolog logs and uncaught exceptions flow in automatically.

Never on your critical path. Error reporting is fire-and-forget with a 2-second timeout and a circuit breaker — if the platform is ever unreachable, your app doesn't wait on it.

Not on Symfony? Any application can ship logs over syslog/TLS or HTTPS, and errors via the REST API. The Symfony bundle is just the fastest path for PHP teams.

Privacy by design

Privacy by design — and your data stays in the EU.

GDPR-compliant log management and error tracking, the way it should be: your errors and logs live in the EU on EU-owned infrastructure. There is no US parent company in the ownership chain.

EU infrastructure

Errors and logs both stored in the EU. Data never crosses a border, and no foreign parent can be compelled to hand it over.

PII scrubbing

Password, token, api_key, secret and authorization fields are stripped before storage.

IP anonymization

The last octet of every IP address is masked by default.

Irreversible session hash

Sessions are linked via a one-way SHA-256 hash — never a stored identity.

DOM-only replay

Session replay records structure and interactions, never text or form input.

Retention control

Tier-based retention: 10–60 days for errors, 1–14 days for logs.

Team collaboration

Roles for your whole team.

Role-based access that makes sense. Developers debug, leads monitor, owners run the account.

Owner

Full administrative control: billing, team membership and project settings. Can transfer ownership when needed.

Admin

Creates projects, manages notification rules and invites members. Cannot modify billing or transfer ownership.

Member

Views errors and logs, manages error status and accesses session data. The right level for most developers.

FAQ

Frequently asked questions

Where is my data stored?

In the EU. Your errors and logs are stored on EU-owned infrastructure, and there is no US parent company in the ownership chain — so your telemetry isn't exposed to foreign legal reach.

Is AppLogger GDPR-compliant?

It's privacy by design: PII fields (password, token, api_key, secret, authorization) are scrubbed before storage, IP addresses are anonymized by masking the last octet, sessions are linked via an irreversible SHA-256 hash, and session replay captures DOM structure only.

Is AppLogger a Sentry alternative?

Yes — AppLogger is a Sentry alternative for EU teams. It offers fingerprint error grouping, full stack traces, breadcrumbs and regression detection, plus log aggregation in the same tool, with EU data residency that an EU region on US-owned infrastructure can't fully promise.

Does AppLogger support log aggregation?

Yes. Ingest logs over HTTPS or syslog over TLS (port 6514, RFC 5424), then search them with full-text queries, a filter-rules engine and tier-based retention — all stored in the EU.

Does it work outside Symfony?

Yes. Any application can send logs via syslog/TLS or HTTPS and errors via the REST API. Symfony users additionally get a one-line bundle with a Flex recipe for zero-config setup.

Is it safe to run in production during the beta?

Yes. Error reporting is fire-and-forget with a 2-second timeout and a circuit breaker, so if the platform is ever unreachable your app never waits on it — instrumentation stays off your critical path.

Errors and logs, in the EU. Start free.

One platform instead of two. No credit card. Connect your first project in about 5 minutes.

Create your free account
100%
EU-hosted (errors + logs)
~5 min
Symfony bundle setup
€0
Free tier (public beta)
2 sec
Client timeout, fire-and-forget
60d
Max error retention
10k/s
Max log ingest