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.
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.spikeanderror.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.
Same project, same account, same access control for errors and logs.
No cross-vendor integrations to wire up or keep in sync.
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.
Install the bundle
composer require dennisvanbeersel/symfony-logger-clientThe Flex recipe wires it up automatically.
Add your DSN
APPLOGGER_DSN=
https://key@app.applogger.eu/idCopy your project DSN from the dashboard into .env.
Deploy and chill
git push origin mainMonolog 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 — 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