AI Customer Monitoring
See what’s broken, for which customer, and why.
Set up with your coding agent
Set up Libra Logs (https://libra.exla.ai/logs) in this repo. 1. First ask whether I want to connect Libra Logs to my coding tools so they can search my logs and read change pages. Explain that this writes an MCP connection to my own global Claude Code or Cursor configuration. Only if I explicitly agree, use `npx -y libra-logs@latest --yes --mcp`; otherwise use `npx -y libra-logs@latest --yes`. 2. Run the selected command from the repo root. It waits for browser approval, so run it in the background or with a timeout of at least 10 minutes. Show me its sign-in link and code right away, then wait while I approve the selected workspace. After approval, the installer automatically obtains workspace-scoped API keys. Do not ask me to create or paste an API key manually. 3. If it says it skipped the AI step, ask whether Libra Logs may send this repo's source files to a model. Only if I say yes, rerun the selected command with `--ai-consent` added. Keep `--mcp` only if I approved that connection separately. 4. When it finishes, tell me the branch it created, what it changed, whether my first log was confirmed, and whether the requested coding-tool connection succeeded. Do not push or open a PR unless I ask.
Sign in, add a card, paste. API keys are set up when you approve.
Sentry tells you what broke. Libra tells you which customers it broke for, why, and how to fix it. In plain English, with the log lines underneath. Know before your customers do.
What you get back
Thousands of log lines become one sentence.
- Which customer, and how many of their people.
- Why it failed, in words a new hire understands.
- The fix, with the log lines underneath as proof.
Northwind can't save contacts. HubSpot rejects every update because software_used is read-only on their side.
Fix: stop writing software_used in syncContact()
How it works
Follow one customer from a log line to a fix.
Meet Northwind, a fictional Example customer.
Where it starts
Thousands of log lines. Almost all of them fine.
Somewhere in there, one customer's CRM updates have been failing since Tuesday. Nothing crashed, so nothing paged, and the failures disappear into the healthy traffic around them.
Production logs, as they arriveExample09:41:02INFOglobexGET /api/deals 200 38ms09:41:02INFOinitechPOST /api/invoices 20109:41:03ERRORnorthwindhubspot update rejected: software_used09:41:03INFOumbrellaGET /api/inbox 200 21ms09:41:04INFOhoolicalendar sync ok09:41:04WARNglobexsalesforce: record locked09:41:05INFOnorthwindGET /api/contacts 200 44ms09:41:05ERRORnorthwindhubspot update rejected: software_used09:41:06INFOvandelayPOST /api/signup 20109:41:06ERRORinitechinvoice render timed out09:41:07INFOumbrellaGET /api/threads 200 19ms09:41:07ERRORnorthwindhubspot update rejected: software_used01 · Spot
Libra sorts every line by the customer it belongs to.
Northwind rises to the top: its CRM updates are failing for 3 of its 8 people. The customers who are fine say so, in one word.
CustomersExampleNeeds attentionNorthwind
CRM updates failing for 3 of 8 people since Tuesday.
Needs attentionGlobex
Salesforce rejects edits to locked deals.
Needs attentionInitech
Invoice PDFs time out on large accounts.
HealthyUmbrella
No problems.
HealthyHooli
No problems.
NewVandelay
First logs arrived today.
02 · Understand
Why it broke, in a sentence you can read.
HubSpot rejects the update because the field is read-only on their side. The exact log lines sit right under the sentence, so you can check the claim yourself.
Northwind · CRM updatesExampleNeeds attention3 of 8 people · since TuesdayHubSpot won't accept Northwind's contact updates. The software_used field is read-only on their side, so every save that touches it is rejected.
The log lines behind it
Tue 14:02:11hubspot.contacts.update status=400 company=northwindTue 14:02:11error="Property software_used is read-only"Tue 14:02:14retry 3/3 failed, contact left unchanged03 · Fix
Paste it into your coding agent.
Copy the finding into Claude Code, Cursor or Codex. It arrives with its log lines, so the agent starts from the cause instead of a guess.
claude · ~/appExamplePasted from Libra Logs
Northwind: HubSpot rejects contact updates because software_used is read-only. 3 matching log lines attached.
> find the cause and propose a fix
syncContact() sends software_used on every update. HubSpot calculates that field, so stop writing it:
src/crm/field-map.ts
- software_used: contact.tools,
+ // software_used is calculated by HubSpot. Never write it.
Every morning
One briefing. Three customers need attention.
Open the dashboard and the day starts with who needs you and why. Connect Slack and the same briefing lands in a channel.
Briefing · Wednesday, 8:00Example3 customers need attention
Everyone else is healthy.
- 01
Northwind
HubSpot rejects contact updates. software_used is read-only on their side.
- 02
Globex
A Salesforce validation rule locks deals, so edits never save.
- 03
Initech
Invoice PDFs time out for accounts with very long invoices.
On your dashboard every morning. In Slack too, if you connect it.
- 01
When it breaks
Tagged in Slack when a customer breaks from their usual.
Libra learns what normal looks like for each customer. When Northwind drifts far from it, the right person is tagged with the reason and a log line.
#customer-healthExampleLibra LogsAPP9:42 AM
@maya Northwind just broke from its usual. Its CRM updates are failing far more than normal for this account: HubSpot rejects writes to software_used, a read-only field.
hubspot.contacts.update status=400 company=northwindOpen NorthwindFrom your editor
Ask your coding agent what's broken for Northwind.
Connect Libra over MCP and your agent reads customer problems, searches logs and opens the evidence itself, with a read-only key.
claude · ~/appExample> what's broken for Northwind?
● libra-logs · whats_broken
One open problem. HubSpot rejects Northwind's contact updates because software_used is read-only on their side.
It started Tuesday and affects 3 of their 8 people. Want me to trace where we write that field?
Northwind and every name here are fictional examples.
How it compares
Datadog tells you something broke. Libra tells you who.
Every competitor cell comes from that vendor's own pricing and docs pages.
Which customers are failing
Libra Logs
Datadog
Sentry
Axiom
PostHog
Why, in plain English
Libra Logs
Datadog
Sentry
Axiom
PostHog
Setup
Libra Logs
Datadog
Sentry
Axiom
PostHog
Price, 10-person team
Libra Logs
Datadog
Sentry
Axiom
PostHog
| Libra Logs | Datadog | Sentry | Axiom | PostHog | |
|---|---|---|---|---|---|
| Which customers are failing | Yes, grouped by customer | Affected users, if RUM is configured | Affected-user counts per issue | Not documented | Via group analytics |
| Why, in plain English | Yes, with the log lines behind it | AI assistant (Bits AI) | AI debugging (Seer) | AI assistant (Spotlight) | AI assistant (PostHog AI) |
| Setup | One prompt in your coding agent | Agent or OTLP ingestion | SDK per language, or OTLP | SDKs, OpenTelemetry, or HTTP API | Setup wizard, or OTLP |
| Price, 10-person team | From $29/mo. No seat fees. | Usage-based: ingest + indexing | From $26/mo, billed annually | From $25/mo | 10 GB free, then per GB |
At 100 GB/mo: Libra Pro is $199 flat. Datadog's own published rate comes to ≈$495.71, 15-day retention only.
Where the others are ahead
- Datadog: Breadth: one platform for logs, metrics, traces, RUM, security, and infrastructure monitoring. Libra Logs does logs and the change pages built on them, nothing else.
- Sentry: Error tracking depth: issue grouping, release health, and session replay are mature products Libra Logs does not have.
- Axiom: Cheap high-volume ingest: $25/mo includes 1 TB/mo of data loading before overage.
- PostHog: Analytics, session replay, feature flags, and experiments are available alongside logs.
Paying Datadog for logs? We'll halve it.
Send us your latest invoice and we'll show you the same log volume at half the price or less.
Read from each vendor's own pricing and docs pages, 2026-09-23 through 2026-09-25
- Datadog: https://docs.datadoghq.com/real_user_monitoring/application_monitoring/browser/advanced_configuration/ -- Configured user information identifies users impacted by errors (read 2026-09-25)
- Sentry: https://docs.sentry.io/product/issues/issue-details/ -- Issue details include affected-user counts and event tags (read 2026-09-25)
- Axiom: https://axiom.co/pricing -- $25/mo Cloud plan includes 1 TB/mo data loading, 100 GB-hour/mo query compute, 100 GB storage; tiered overage on both ingest and query compute (read 2026-09-23)
- Axiom: https://axiom.co/docs/send-data/methods -- Per-language SDKs, OpenTelemetry, 40+ connectors, or direct HTTP API; no single auto-instrument command (read 2026-09-23)
- Axiom: https://axiom.co/docs -- Names the Spotlight AI assistant; does not document whether its answers cite rerunnable evidence (read 2026-09-23)
- PostHog: https://posthog.com/docs/product-analytics/group-analytics -- Group analytics associates events with configured company or other group identifiers; up to 5 group types per project (read 2026-09-24)
- PostHog: https://posthog.com/docs/error-tracking -- Tags exceptions with the release and commit that introduced them; supports release context; group analytics is documented separately (read 2026-09-24)
- Datadog: https://docs.datadoghq.com/bits_ai/ -- Describes Bits AI's capabilities; does not document whether its answers cite rerunnable evidence (read 2026-09-23)
- Sentry: https://docs.sentry.io/product/ai-in-sentry/seer/ -- Describes Seer's inputs; does not document whether its answers cite rerunnable evidence (read 2026-09-23)
- PostHog: https://posthog.com/docs/posthog-ai -- Describes PostHog AI's capabilities; does not document whether its answers cite rerunnable evidence (read 2026-09-24)
- Datadog: https://docs.datadoghq.com/logs/log_collection/ -- Documents Agent-based log collection; direct OTLP ingestion is also documented separately (read 2026-09-23)
- Datadog: https://docs.datadoghq.com/opentelemetry/setup/otlp_ingest/logs/ -- Direct OTLP log ingestion is available without the Datadog Agent (read 2026-09-24)
- Sentry: https://docs.sentry.io/product/explore/logs/getting-started/ -- Per-language SDK or OTLP endpoint; log drains skip code changes only on Vercel, Cloudflare, Heroku, and Supabase (read 2026-09-23)
- PostHog: https://posthog.com/docs/ai-engineering/ai-wizard -- npx @posthog/wizard wires analytics, error tracking, session replay, and logs in one command; Logs also supports OpenTelemetry/OTLP; group analytics requires configured group identifiers (read 2026-09-24)
- PostHog: https://posthog.com/docs/logs -- Logs is OpenTelemetry-native and accepts OTLP clients without a PostHog-specific SDK (read 2026-09-24)
- Datadog: https://www.datadoghq.com/pricing/?product=log-management -- $0.10/GB ingest; $1.70/million events indexed at 15-day retention (annual); 30-day indexing price not shown, gated behind Contact Us (read 2026-09-23)
- Sentry: https://sentry.io/pricing/ -- Annual-billing base rates: Team $26/mo and Business $80/mo, unlimited users; each includes 5 GB logs, then $0.50/GB additional; Logs billed inside the platform plan, not standalone (read 2026-09-23)
- PostHog: https://posthog.com/pricing -- Free tier: 1M analytics events, 100K exceptions, 10 GB logs per month; each product bills as its own meter past that (read 2026-09-24)
- Datadog's 100 GB/mo estimate: Assumes a 350-byte average structured log line, so 100 GB ≈ 285.7 million events; $10.00 ingest + $485.71 indexing at the published 15-day annual rate; Indexing is priced per event, so line size matters: at a 1 KB average line (100 million events) the same 100 GB is about $180; 30-day retention costs more; Datadog does not publish that rate, so this is a floor, not the true 30-day price.
Updated September 2026
FAQ
Questions, answered
What is Libra Logs?
Libra Logs is an AI logging service. It reads your production logs, works out which customer each line belongs to, and explains failures in plain English with the exact log lines underneath. When something's wrong, it can hand the fix to your coding agent over MCP.
Is Libra Logs a Datadog or Sentry alternative?
For the question "which customers are failing, and why": yes. Libra Logs is not a full APM, metrics, or RUM platform like Datadog, and it doesn't do issue grouping or session replay like Sentry. See the full, sourced comparison.
How much does Libra Logs cost?
Starter is $29/mo for 25 GB. Pro is $199/mo for 100 GB, then $0.20/GB after that. Every plan covers your whole team with no seat fees, and there's no separate charge to keep your logs. Already paying Datadog or Sentry? Send us your bill and we'll beat it.
How do I set up Libra Logs?
Paste one prompt into Claude Code, Cursor, or Codex, or run `npx libra-logs` yourself. It detects your stack, installs non-interactively, and asks before it does anything sensitive: nothing is pushed to your repo, and no source file reaches a model, until you say yes.
Does it work with OpenTelemetry and my existing logs?
Yes. If you already export OpenTelemetry, the installer reuses that setup. If you don't, it detects your stack (Node, Next.js, Python FastAPI, Go) and wires up logging directly, shipping alongside wherever your logs go today.
Can my coding agent use Libra Logs?
Yes. Libra Logs runs an MCP server with tools like `search_logs` and `whats_broken`, so Claude Code, Cursor, Codex, or any MCP-compatible agent can look up what's failing, read the log lines, and start a fix, using a read-only key you can revoke anytime.
What does Libra Logs do with my data?
Your log lines, trace ids, and deploy markers are stored to power search, change pages, and answers. A model (via OpenAI) writes summaries and answers questions from log excerpts; your source files are only sent to a model during setup if you explicitly approve it. Libra Logs never sells your data and never uses your logs or code to train AI models.
Self-serve setup in one prompt: no sales call, no demo.
Setup
Set up in one prompt.
Paste it into Claude Code, Cursor or Codex. Your agent runs the installer, you approve it in the browser, and nothing is pushed to your repo until you say yes.
Set up Libra Logs (https://libra.exla.ai/logs) in this repo. 1. First ask whether I want to connect Libra Logs to my coding tools so they can search my logs and read change pages. Explain that this writes an MCP connection to my own global Claude Code or Cursor configuration. Only if I explicitly agree, use `npx -y libra-logs@latest --yes --mcp`; otherwise use `npx -y libra-logs@latest --yes`. 2. Run the selected command from the repo root. It waits for browser approval, so run it in the background or with a timeout of at least 10 minutes. Show me its sign-in link and code right away, then wait while I approve the selected workspace. After approval, the installer automatically obtains workspace-scoped API keys. Do not ask me to create or paste an API key manually. 3. If it says it skipped the AI step, ask whether Libra Logs may send this repo's source files to a model. Only if I say yes, rerun the selected command with `--ai-consent` added. Keep `--mcp` only if I approved that connection separately. 4. When it finishes, tell me the branch it created, what it changed, whether my first log was confirmed, and whether the requested coding-tool connection succeeded. Do not push or open a PR unless I ask.
npx libra-logsRead the transcript
Libra Logs by Exla. Your logs know who's failing, and why. Now you do. Your customer updated their CRM. Some fields never saved. App logs and OTel, user and account context, and deploy and change context come together in Libra: customer activity, failed CRM fields, and evidence to check. See where things go wrong. Daily briefing: @Michael, heads up, some CRM fields aren't saving. HubSpot read-only fields. Salesforce locked records. Ask Libra follow-ups right in Slack. Use it directly through your coding agent. Spot. Understand. Fix. The AI logging service. Libra Logs. Built to understand your customers. Try for free. Self-serve setup in one prompt. exla.ai. The soundtrack is music and sound effects, with no spoken narration.
The context diagram and Slack-style card are designed examples of supported workflows, with customer identities omitted. The terminal is a real Claude Code session connected to a customer workspace through MCP. No raw logs or customer identities are shown.
Same logs. Half the bill.
Same logs, half the bill, and Libra tells you which customer each failure hit, why, and how to fix it.
Paying Datadog or Sentry? Send us your bill and we'll beat it.