logging

typescript
import { AsyncLocalStorage } from 'node:async_hooks';

interface Store {
  requestId: string;
}

Propagate a Request ID Through NestJS Logs with AsyncLocalStorage

nestjs logging middleware
by codesnips 4 tabs
javascript
const SHUTDOWN_TIMEOUT_MS = 10_000;

function registerFatalHandlers({ logger, onFatal, exitCode = 1 }) {
  let shuttingDown = false;

  async function handleFatal(kind, error) {

Graceful Node.js Shutdown on uncaughtException and unhandledRejection

node reliability graceful-shutdown
by codesnips 3 tabs
xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <springProperty scope="context" name="APP_NAME" source="spring.application.name"/>

    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>

Logging with SLF4J and Logback

java logging slf4j
by David Kumar 2 tabs
python
import threading


class MinuteRingBuffer:
    def __init__(self, window_minutes=15):
        if window_minutes < 1:

Rolling Per-Minute Log Aggregation with a Ring Buffer

logging metrics observability
by codesnips 3 tabs
python
LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
        'verbose': {
            'format': '{levelname} {asctime} {module} {message}',

Django logging configuration for production

django python logging
by Priya Sharma 1 tab
python
import uuid
import logging


class RequestIDMiddleware:
    def __init__(self, get_response):

Django middleware for request ID tracking

django python middleware
by Priya Sharma 1 tab
go
package observability

import (
  "context"
  "log/slog"
  "os"

Request-scoped slog logger with JSON output (Go 1.21+)

go logging observability
by Leah Thompson 1 tab
javascript
const express = require('express');
const AppError = require('./AppError');
const asyncHandler = require('./asyncHandler');
const errorMiddleware = require('./errorMiddleware');
const UserRepo = require('./UserRepo');

Centralized Express Error Handling with Typed AppError and Async Wrapper

express error-handling middleware
by codesnips 4 tabs
ruby
Rails.application.config.filter_parameters += [
  :password,
  :password_confirmation,
  :token,
  :authorization,
  :ssn,

Sanitizing logs so secrets and PII do not leak downstream

logging pii redaction
by Kai Nakamura 1 tab
java
package com.example.observability;

public final class CorrelationIdConstants {

    public static final String HEADER_NAME = "X-Correlation-Id";
    public static final String MDC_KEY = "correlationId";

Propagate a Correlation ID Through Every Log Line with an MDC Servlet Filter in Spring Boot

spring-boot logging mdc
by codesnips 4 tabs
php
<?php

namespace App\Correlation;

final class CorrelationIdStorage
{

Propagate a Correlation ID Through Symfony Requests and Monolog Logs

symfony monolog logging
by codesnips 4 tabs
rust
use once_cell::sync::Lazy;
use regex::Regex;
use std::str::FromStr;

#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, PartialOrd, Ord)]
pub enum Severity {

Grouping Log Lines by Severity and Emitting a Summary Report in Rust

logging parsing cli
by codesnips 3 tabs