HTTP tracing with correlated logs

logbee.net stores each HTTP request together with all related logs, in the order they occur. See every request as a complete story.

Request URL, body, headers, status code, and logs - everything in one view.

JavaScript-defined alerting rules

Alerts run on every HTTP request captured by logbee.net, with full access to all the request properties, including URL, status code, headers, and logs.

Trigger an alert by calling callback(true).

Send notifications to email, Slack, Microsoft Teams, or custom webhooks.

Logbee Microsoft Teams alert
I want to get notified when:
Alert rule:
function(context, callback) {
    const urlPath = context.httpRequest.httpProperties.url.path.toLowerCase();
    const httpMethod = context.httpRequest.httpProperties.method.toLowerCase();

    const isCheckoutRequest =
        urlPath === "/checkout/complete" &&
        httpMethod === "POST".toLowerCase();

    ::return callback(isCheckoutRequest && statusCode >= 500);
}
function(context, callback) {
    for (let i = 0; i < context.httpRequest.logs.length; i++) {
        let log = context.httpRequest.logs[i];

        if (log.message.indexOf("Object reference not set") > -1) {
            ::return callback(true);
        }
    }
}
function(context, callback) {
    const durationInMilliseconds = context.httpRequest.durationInMilliseconds;
    const isLocalhost = context.httpRequest.url.absoluteUri.includes("localhost");

    if(!isLocalhost && durationInMilliseconds >= 1000) {
        ::return callback(true);
    }
}
function (scheduledContext, callback) {
    const count = await scheduledContext.requests.count([
        {
            field: "startDateTime",
            value: new Date(Date.now() - 10 * 60 * 1000).toISOString(),
            operator: "GreaterOrEqualThan"
        },
        {
            field: "httpStatusCode",
            value: 500,
            operator: "GreaterOrEqualThan"
        }
    ]);

    ::return callback(count >= 5);
}
Logbee Interceptors

Control what gets stored

Not every request needs to be logged.
With interceptors, you can decide which requests should be stored by logbee.net.

Define and update rules directly from the UI, without redeploying your application.

Ignore requests like:
Interceptor rule:
function(context, reject) {
    const statusCode = context.requestLog.response.httpStatusCode;
    const localPath = context.requestLog.url.path.toLowerCase();
    const method = context.requestLog.httpMethod;

    if (localPath === "/healthcheck" && /GET/i.test(method)) {
        if(statusCode === 200) {
            ::return reject();
        }
    }
}
function(context, reject) {
    const statusCode = context.requestLog.response.httpStatusCode;
    const userAgent = context.requestLog.userAgent;

    if (userAgent.contains("Thinkbot") && statusCode < 500) {
        ::return reject();
    }
}
function(context, reject) {
    const statusCode = context.requestLog.response.httpStatusCode;
    const localPath = context.requestLog.url.path.toLowerCase();

    if (localPath.startsWith("/payment/")) {
        ::return reject();
    }
}
function(context, reject) {
    const statusCode = context.requestLog.response.httpStatusCode;
    const path = context.requestLog.url.path.toLowerCase();

    if(statusCode === 404) {
        if(path.endsWith(".ico") || path.endsWith(".map") || path.includes("/static/")) {
            ::return reject();
        }
    }
}

Logbee on-premises Simplified self-hosting

Run Logbee on your own infrastructure with minimal setup.
Just two web apps (UI and Service) and a database.

Deploy using Docker or Kubernetes, Windows (IIS), or Microsoft Azure.
Support for MongoDB, CosmosDB, MySQL, and SQL Server.

Simple configuration using a single JSON file.

See a step-by-step guide: Deploying Logbee on Linux using Docker
Latest release
Logbee.Frontend (UI) [Release v2.1.4]
docker pull catalingavan/logbee.frontend:2.1.4
Logbee.Backend (Service) [Release v2.1.2]
docker pull catalingavan/logbee.backend:2.1.2

Integrations

Pricing

Developer
free
  • 5,000 requests / month
  • unlimited applications
  • unlimited alerts
  • 2 users
Startup
14 USD / month
  • 250,000 requests / month
  • unlimited applications
  • unlimited alerts
  • unlimited users
Business
28 USD / month
  • 1,000,000 requests / month
  • unlimited applications
  • unlimited alerts
  • unlimited users
Business+
60 USD / month
  • 6,000,000 requests / month
  • unlimited applications
  • unlimited alerts
  • unlimited users
To get started, create an account. No payment information is required.
Developer
free
Standard
350 USD
one time payment
  • Standard EULA
  • Host on your own server
  • Unlimited applications
  • Unlimited updates
Enterprise
850 USD
one time payment
  • Enterprise EULA
  • Host on your own server and on your clients servers
  • You can ship Logbee as part of your release artifacts
  • Unlimited applications
  • Unlimited updates

Why Logbee?

  • We built Logbee on the belief that logs should be easy to understand by everyone, not just developers.
  • Finding the root cause of issues should be just a click away, without scrolling through endless logs.
  • With self-hosting, logs can be stored privately and securely on your own servers.

Who is using logbee.net?

logbee.net is currently being used by about 110 applications, having a total number of 7,034,324 requests processed in the last 30 days.