Guance Learn

Observability questions

Focused answers for definitions, architecture choices, troubleshooting, pricing, and evaluation.

Illustration of monitoring and troubleshooting application behavior
Explainer

Enable PostgreSQL query logging

Configure PostgreSQL SQL logging, distinguish reloadable settings from collector startup settings, and choose a narrower slow-query capture when appropriate.

Illustration of monitoring and troubleshooting application behavior
Explainer

Rotate log files in Ruby

Configure size or time-based Logger rotation, understand retention limits, and test collection across file changes.

Python programming and application logging
Explainer

Log to a file and the console in Python

Attach separate handlers for file and console output, set their thresholds independently, and prevent duplicate records and uncontrolled file growth.

Illustration of monitoring and troubleshooting application behavior
Explainer

Write Ruby logs to a file and the console

Configure two Logger destinations, add a small message fan-out wrapper, or use Rails BroadcastLogger without duplicating ingestion.

Python programming and application logging
Explainer

Send Python logs to standard output

Route Python logging to stdout with basicConfig or StreamHandler, and understand configuration ownership and container log collection.

Log unhandled exceptions in C#
Explainer

Log unhandled exceptions in C#

Use last-chance exception hooks alongside awaited task handling and ASP.NET Core exception middleware, without assuming crash-time logging is guaranteed.

Log uncaught exceptions in Java
Explainer

Log uncaught exceptions in Java

Register a default or per-thread exception handler, and distinguish thread termination from exceptions stored in executor futures.

Python programming and application logging
Explainer

Log uncaught exceptions in Python

Use sys.excepthook for top-level failures, threading.excepthook for worker threads, and explicit handling for functions and asynchronous tasks.

Illustration of Git branches and version history
Technical guide

Stop tracking a file that is already in .gitignore

Remove a tracked file from the index while retaining your copy, commit the ignore rule, and avoid accidentally staging unrelated work during bulk cleanup.

Illustration of application troubleshooting
Explainer

Ignore executable-bit changes in Git

Use core.fileMode to suppress unreliable working-tree executable-bit changes, then set intentional script modes explicitly in the index.

Illustration of collecting, processing, and monitoring logs
Explainer

Stop systemd from restarting rsyslog

Inspect rsyslog service restart policies and activation paths, then choose a temporary stop, a drop-in override, or a service mask.

Illustration of metrics, monitoring, and technical investigation
Explainer

Manage Prometheus counters correctly

Name cumulative metrics, handle resets in queries, control label cardinality, and plan historical retention.