The OpenTelemetry Demo system is experiencing multiple cascading failures across several microservices. The issues appear to have started around 2025-05-27T00:06:00Z when the system was deployed or restarted. The primary symptoms include load generator errors, service connectivity issues, and potential performance degradation across multiple services.
During the past 24 hours, several incidents were detected in the OpenTelemetry Demo application. Analysis of telemetry data reveals three primary incidents:
- Product Catalog Service Failures: Feature flag-induced errors in the product-catalog service
- Load Generator Connection Issues: Multiple errors in the load-generator service, including export failures and browser context errors
- Performance Degradation: Significant latency spikes detected across multiple services
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { Console } from "node:console"; | |
const BALL = '⏺' | |
const COLOR = { | |
'blue': '\\033[94m', | |
'yellow': '\\033[93m', | |
'cyan': '\\033[96m', | |
'green': '\\033[92m', | |
'magenta': '\\033[95m', | |
'white': '\\033[97m', |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const div = document.createElement('div') | |
const input = document.createElement('input') | |
input.setAttribute('type', 'text') | |
input.addEventListener('change', (e) => { | |
if (text === '') { | |
return updateDiv({ text, className: 'hidden'}) | |
} | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
interface RefHandles { | |
scrollToIntent: HTMLElement['scrollTo']; | |
} | |
const targetElement = document.createElement('div'); | |
const handles: RefHandles = { | |
scrollToIntent(...args: any[]) { | |
targetElement.scrollTo(...args); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
let state = 1 | |
const update = (value) => { | |
state = value | |
document.innerHTML = Array(value % 4).fill('Hello') | |
} | |
setInterval(() => update(Date.now()), 1000) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!DOCTYPE html> | |
<html lang="en"> | |
<head> | |
<meta charset="UTF-8"> | |
<title>My Page</title> | |
<style> | |
li { cursor: pointer } | |
</style> | |
<!-- | |
The first place JS and HTML intersect is a script tag |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import React from 'react' | |
import { useStable, useWatch } from '@objects/hooks' | |
import { through, map, debounce } from '@objects/operators' | |
interface Search { | |
title: string | |
} | |
interface Data { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
wickedElements.define('.my-counter', (element, { events, changes, values }) => { | |
const counter = element.querySelector('.count') | |
const minus = element.querySelector('.minus') | |
const plus = element.querySelector('.plus') | |
changes(values).count(count => { | |
counter.textContent = count | |
}) | |
values.count = 0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import { useInstance } from 'object-hooks'; | |
class Analytics { | |
private api = () => { | |
const raceError = new Error('handler called before loaded'); | |
bugsnagClient.notify(raceError); | |
}; | |
public log = (...args: any[]) => { | |
return this.api(...args); |
NewerOlder