Guance Learn

Observability questions

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

Illustration of a Git commit history and an earlier revision
Technical guide

Recover a deleted Git branch

Find a surviving branch tip in local refs, the reflog, or remaining objects, then recreate the branch. Recovery depends on object availability, not a fixed deadline.

Illustration of application modules working together
Technical guide

Can one DNS name have multiple CNAME records?

A DNS name can have only one CNAME target. Use address records or a provider-supported routing feature when you need multiple destinations.

Illustration of log monitoring and analysis
Explainer

Remove selected fields or keep an allowlist in Logstash

Choose mutate for named fields, prune for a top-level allowlist, and conditional removal for events that need different retention rules.

Illustration of log collection and monitoring
Explainer

Can you use environment variables in a Fluentd configuration?

Reference environment variables in Fluentd, require missing values explicitly, and supply settings through a shell, systemd, or Kubernetes.

Illustration of log collection and monitoring
Explainer

What is the maximum message size in centralized rsyslog?

Separate syslog protocol limits from rsyslog input limits, raise maxMessageSize, and verify that every hop preserves long messages.

Change a column’s data type in pandas illustration
Technical guide

Change a column’s data type in pandas

Convert pandas columns with astype, handle invalid values with to_numeric and to_datetime, and preserve missing values with nullable dtypes.

Log monitoring illustration
Explainer

Map new Elasticsearch string fields as keyword by default

Use an index template and a dynamic template to map new string fields as keyword, with clear boundaries for legacy versions and existing data.

Illustration of files, modules, and dependencies
Technical guide

Check whether a string starts with a digit

Use a start-anchored regular expression and choose ASCII or Unicode digit semantics explicitly for JavaScript, Python, and Java.

Illustration of server operations and request logs
Explainer

Why client_max_body_size is not taking effect in Nginx

Trace an upload limit through Nginx configuration inheritance, reloads, upstream proxies, and application body parsers.

Illustration of a Git commit history and an earlier revision
Technical guide

Commit only part of a file in Git

Use git add --patch to stage selected changes, inspect the complete staged snapshot, and commit it without accidentally including the rest of the file.

Illustration of Git branches and shared commit history
Technical guide

Compare two Git branches

Choose endpoint diffs, merge-base diffs, or commit ranges to compare Git branches, then generate and check a patch when you need to transfer file changes.

Illustration of log collection and monitoring
Explainer

How to apply conditional logic in Fluentd

Filter records, route them by field values, or assign a derived field with Fluentd plugins and explicit handling for unmatched events.