ourfault

ourfault

Reads every error your services emit, decides whether it is your fault, and files the issue.

How it works

  1. Connect with OpenTelemetry

    Point your OpenTelemetry SDK or Collector at the ingest endpoint with a workspace token. Records that carry an exception are read; the rest are counted and let go.

  2. We triage, with evidence from your deployments

    Each new failure is set against your recent deployments on GitHub and judged once: a fault in your code, someone else's, or too close to call. Failures seen before are counted, not judged again.

  3. A proposed issue lands in your repository

    When the fault is yours, ourfault reads the files the stack trace names and opens an issue with the root cause, marked as a proposal. Close calls are held, not filed.

What is kept

Kept

  • A hash for each distinct failure
  • Counts of records and occurrences
  • Service names, repositories and times
  • The verdict, its probability, and the issue it filed

Not kept

  • Log and message bodies
  • Exception messages and stack traces
  • Attribute values
  • The source files read to find the cause

A new failure's message and trace pass through the pipeline while it is judged, a buffer declared with every stored field in the data retention contract. A filed issue holds the trace and the root cause, in your repository, under your control.