decentraland / decentraland/unity-explorer

Clear Output.log on every new release launch

Open
#9,465 1 comment 0 reactions 0 assignees View on GitHub
3-low enhancement optimization
Dominant language
C#
Stars
23
Forks
17
Avg merge
2d 16h
Merged PRs (30d)
101

Description

### Is your feature request related to a problem? Please describe.

The `Output.log` file grows to 100–900 MB in size over time. When Sentry's DNS is blocked (e.g. by a Pi-Hole ad blocker), the Unity client generates a large number of DNS lookup failure entries that are continuously appended to the log. Since the log is never cleared between sessions or releases, it can grow to several hundred megabytes, consuming significant disk space.

### Describe the solution you'd like

Clear (or rotate) the `Output.log` file on every new release launch, so that old log entries from previous versions do not accumulate indefinitely. This would keep the log file manageable in size and ensure that logs always reflect the current version.

Alternative approaches:
- Truncate the log at application startup (each launch starts fresh)
- Rotate the log per release version (keep one log file per version)
- Cap the log file size and rotate when it exceeds a threshold

### Describe alternatives you've considered

- Suppressing Sentry DNS failure logs when the endpoint is unreachable (addresses the root cause of the bloat)
- Implementing log rotation with a configurable size limit
- Providing users with an in-app option to clear the log

### Additional context

Reported by a user running a Pi-Hole DNS blocker, which blocks Sentry's telemetry endpoints. The resulting flood of DNS failure messages caused the log to grow to 100–900 MB. This is likely to affect other users on similar network setups (corporate firewalls, privacy-oriented DNS resolvers, etc.).

---
Reported by Stom
Requested by Dawid Krajewski (<@U079GRD9WTZ>)

Contributor guide

Open the contributing guide

Research direction

No source file or test is named. Start by tracing how the Unity client launches a new release and where Output.log is created or appended; compare startup behavior with the requested release boundary. Done means old log entries no longer accumulate across releases while current-release logging remains available, with coverage for the chosen behavior.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, unity
Domain
desktop
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.