Monday, June 2, 2025
News PouroverAI
Visit PourOver.AI
No Result
View All Result
  • Home
  • AI Tech
  • Business
  • Blockchain
  • Data Science & ML
  • Cloud & Programming
  • Automation
  • Front-Tech
  • Marketing
  • Home
  • AI Tech
  • Business
  • Blockchain
  • Data Science & ML
  • Cloud & Programming
  • Automation
  • Front-Tech
  • Marketing
News PouroverAI
No Result
View All Result

Observable systems with wide events

April 16, 2024
in Front-Tech
Reading Time: 4 mins read
0 0
A A
0
Share on FacebookShare on Twitter


Oh, I didn’t see you there. Hi, I’m Kevin, a developer here at Honeybadger. I’ve worked for the last year or so developing Honeybadger Insights, our new logging and observability platform. Let’s peek into some of the design decisions and philosophy behind the product.

In modern software development, the hunt for observable systems has traditionally revolved around the holy trinity of logs, metrics, and traces. Each plays a critical role in understanding system behavior, yet they often exist in isolation, each providing a view through a different lens, not to mention a different UI. At Honeybadger, we’re challenging this segmented approach within Insights by focusing on a strategy centered around events.

Your logs are events—and they should be structured. I get it—you’re probably thinking, “Can’t I just stick to grepping through my stringy logs?” Shifting to thinking in terms of structured events can require practical (and philosophical) changes in how we gather telemetry data from our applications. We believe this transition can lead to more opportunities for analyzing and extracting valuable information about our systems’ behavior.

Take this string log, for example: [INFO 2023-03-10 14:00:00][location: Seattle, USA] -- : UserLoginAttempt: User JohnDoe (standard_user) Login successful after 2 attempts from 192.168.1.1

Egads, the implicit structure! While this format can be easy on the eyes when tailing from your local server, it’s also a nightmare if you want to extract useful data points. Here is what that same log could look like as a structured event in JSON format:

{
  "event_type": "UserLoginAttempt",
  "ts": "2023-03-10T14:00:00Z",
  "user": {
    "name": "JohnDoe",
    "role": "standard_user"
  },
  "source_ip": "192.168.1.1",
  "location": {
    "city": "Seattle",
    "country": "USA"
  },
  "successful": true,
  "attempts": 2
}

Think of a structured event as a bag of correlated properties called “fields.” These two events are technically the same—but can you see how breaking up the fields creates possibilities for extracting insights? Moving to structured events enables you to query them with BadgerQL, the powerful query language at the heart of Honeybadger Insights. It’s far beyond anything you could do with grep or other text-based search tools.

Say you want to find users with the most login attempts: fields user.name::str | sort attempts::int desc

Or login attempt counts per city: stats count() as ct by location.city::str

What about finding which users often require multiple attempts: filter successful::bool | stats avg(attempts::int) as avgAttempts by user.name::str | filter avgAttempts > 2

Or which users connect from multiple IP addresses: stats unique(source_ip::str) as ipCount by user.name::str | filter ipCount >= 2

There is critical data juice located even within the simplest of events, and we aim to give you tools to squeeze it all out.

The power of wide events

You may have heard us mention “wide” events. Wide events are helpful because they often contain comprehensive contextual data about an execution. Instead of blasting thousands of small logs per request, a wide event gathers important contextual data into a single event. These events support “observability” by providing the details necessary during those critical moments of “unknown unknowns”—where elusive bugs lurk in the shadows, ready to disrupt your system with the slightest trigger.

Sometimes, a detail that seems insignificant can be crucial to finding the cause of an issue. Wide events serve as your diagnostic beacon, offering clues and context that traditional observability methods might miss. One tenet of observability is relying on externals (the events) to paint a picture of your system’s state without needing to update your code to produce more data.

Since we store events in their raw form without pre-aggregating or performing other lossy shenanigans, you can ask any question about your system in real time.

Errors are wide events

If you are a Honeybadger user, you already have a great example of a wide event: the error notice. You might be familiar with adding context to an error: Honeybadger.context(color: "red")

This context is built up during execution, and if something goes wrong, the client sends the error to Honeybadger with all context data attached. While debugging, this context can be essential to finding the cause of the error. We treat errors as first-class entities so you can coordinate and communicate while resolving issues, but error notices are also events.

In fact, all error notices you send to Honeybadger are automatically added to Insights. You can use BadgerQL to query, slice, and visualize just as you would with any structured event. To get a list of all notices, all that’s required is to filter on the event type.

And you can start gathering insights about your errors.

What about metrics and traces?

Metrics and traces are structured events, too, and we believe they should live alongside your “log” events, where you can use the same tools for querying and visualization. That’s one reason we started with application logs—you get the other two for free.

While you can send metrics and traces to Honeybadger Insights today, we plan to add more tools to collect and visualize these special types of events in the future. There are many exciting possibilities!

Events create observability

Transforming your logs into structured events is a crucial first step toward gaining observability into your system. When you do, Honeybadger is here to help you dig in, cut through the noise, and squeeze out the insights. Give it a try!



Source link

Tags: EventsObservableSystemswide
Previous Post

Schiff Predicts Bitcoin Slump to $20K

Next Post

New Snowflake Features Released in March 2024

Related Posts

The essential principles of a good homepage
Front-Tech

The essential principles of a good homepage

June 7, 2024
How to measure and improve user retention
Front-Tech

How to measure and improve user retention

June 6, 2024
Push Animation on Grid Items
Front-Tech

Push Animation on Grid Items

June 5, 2024
How to build a Rails API with rate limiting
Front-Tech

How to build a Rails API with rate limiting

June 4, 2024
Introduction to the B.I.A.S. framework
Front-Tech

Introduction to the B.I.A.S. framework

June 3, 2024
Blue Ridge Ruby is exactly what we need
Front-Tech

Blue Ridge Ruby is exactly what we need

June 3, 2024
Next Post
New Snowflake Features Released in March 2024

New Snowflake Features Released in March 2024

Renowned tech entrepreneur Nitin Seth launches new book ‘Mastering the Data Paradox’

Renowned tech entrepreneur Nitin Seth launches new book 'Mastering the Data Paradox'

Harvard Researchers Unveil How Strategic Text Sequences Can Manipulate AI-Driven Search Results

Harvard Researchers Unveil How Strategic Text Sequences Can Manipulate AI-Driven Search Results

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

  • Trending
  • Comments
  • Latest
Is C.AI Down? Here Is What To Do Now

Is C.AI Down? Here Is What To Do Now

January 10, 2024
Accenture creates a regulatory document authoring solution using AWS generative AI services

Accenture creates a regulatory document authoring solution using AWS generative AI services

February 6, 2024
Managing PDFs in Node.js with pdf-lib

Managing PDFs in Node.js with pdf-lib

November 16, 2023
23 Plagiarism Facts and Statistics to Analyze Latest Trends

23 Plagiarism Facts and Statistics to Analyze Latest Trends

June 4, 2024
Azul cloud service spots dead code in Java apps

Azul cloud service spots dead code in Java apps

October 7, 2023
The 15 Best Python Courses Online in 2024 [Free + Paid]

The 15 Best Python Courses Online in 2024 [Free + Paid]

April 13, 2024
Can You Guess What Percentage Of Their Wealth The Rich Keep In Cash?

Can You Guess What Percentage Of Their Wealth The Rich Keep In Cash?

June 10, 2024
AI Compared: Which Assistant Is the Best?

AI Compared: Which Assistant Is the Best?

June 10, 2024
How insurance companies can use synthetic data to fight bias

How insurance companies can use synthetic data to fight bias

June 10, 2024
5 SLA metrics you should be monitoring

5 SLA metrics you should be monitoring

June 10, 2024
From Low-Level to High-Level Tasks: Scaling Fine-Tuning with the ANDROIDCONTROL Dataset

From Low-Level to High-Level Tasks: Scaling Fine-Tuning with the ANDROIDCONTROL Dataset

June 10, 2024
UGRO Capital: Targeting to hit milestone of Rs 20,000 cr loan book in 8-10 quarters: Shachindra Nath

UGRO Capital: Targeting to hit milestone of Rs 20,000 cr loan book in 8-10 quarters: Shachindra Nath

June 10, 2024
Facebook Twitter LinkedIn Pinterest RSS
News PouroverAI

The latest news and updates about the AI Technology and Latest Tech Updates around the world... PouroverAI keeps you in the loop.

CATEGORIES

  • AI Technology
  • Automation
  • Blockchain
  • Business
  • Cloud & Programming
  • Data Science & ML
  • Digital Marketing
  • Front-Tech
  • Uncategorized

SITEMAP

  • Disclaimer
  • Privacy Policy
  • DMCA
  • Cookie Privacy Policy
  • Terms and Conditions
  • Contact us

Copyright © 2023 PouroverAI News.
PouroverAI News

No Result
View All Result
  • Home
  • AI Tech
  • Business
  • Blockchain
  • Data Science & ML
  • Cloud & Programming
  • Automation
  • Front-Tech
  • Marketing

Copyright © 2023 PouroverAI News.
PouroverAI News

Welcome Back!

Login to your account below

Forgotten Password? Sign Up

Create New Account!

Fill the forms bellow to register

All fields are required. Log In

Retrieve your password

Please enter your username or email address to reset your password.

Log In