Class FileLogFormattingSettings
Controls the output format and metadata components written to each entry in log files produced by FileLog. These settings are independent of ConsoleLoggingSettings and are applied only to the on-disk log.
Inherited Members
Namespace: Scylla.Core.Config
Assembly: ScyllaCore.dll
Syntax
[Serializable]
public sealed class FileLogFormattingSettings
Remarks
The Format field determines the overall file structure. All boolean flags apply within that format:
- PlainText - Human-readable lines. Each enabled component is concatenated in order: timestamp, code location, prefix, label, category, then the message.
-
JSON - JSON Lines (JSONL) format. Each entry
is a single JSON object on one line. The boolean flags still control which
fields are included in the object (e.g.,
ShowPrefix = falseomits the"prefix"key). Suitable for ELK stack, Splunk, or other log aggregation pipelines.
File log entries tend to benefit from more verbose metadata than console output, because log files are read after the fact without the Unity console's interactive stack-trace. Enabling ShowTimestamp and ShowCodeLocation is strongly recommended for file output.
Fields
Format
The serialization format for log files written by FileLog. PlainText (default) produces human-readable lines. JSON produces one JSON object per line (JSONL format), which is machine-parseable and compatible with log aggregation tools. Switching format after a session has begun results in a mixed-format file until the next file rotation, because existing file content is never rewritten.
Declaration
[Tooltip("Determines the output format for log files. PlainText produces human-readable logs suitable for manual inspection. JSON produces structured, machine-readable output that can be parsed by log aggregation tools or custom analyzers.")]
public LogFileFormat Format
Field Value
| Type | Description |
|---|---|
| LogFileFormat |
ShowCategory
When true, includes the LogCategory tag (e.g.,
[Core], [Input]) in each file log entry. Enables text-based filtering
by subsystem (e.g., grep "[Graphics]" app_01.log).
Defaults to true.
Declaration
[Tooltip("When enabled, the log category (e.g., [Core], [Input], [Camera]) is included in each file log entry. This allows filtering log files by subsystem to isolate issues in specific modules.")]
public bool ShowCategory
Field Value
| Type | Description |
|---|---|
| bool |
ShowCodeLocation
When true, includes the source file name and line number in each file log
entry (e.g., [MyClass.cs:42]). Strongly recommended because file logs are
typically read in isolation without a debugger attached, making call-site context
valuable for diagnosing issues. Defaults to true.
Declaration
[Tooltip("When enabled, each file log entry includes the source file name and line number that generated the message. Valuable for tracking down the exact origin of logged issues when reviewing log files after a session.")]
public bool ShowCodeLocation
Field Value
| Type | Description |
|---|---|
| bool |
ShowLabel
When true, includes the log level label (e.g., [INFO],
[WARNING], [ERROR]) in each file log entry. Enables text-based
filtering of log files by severity (e.g., grep "[ERROR]" app_01.log).
Defaults to true.
Declaration
[Tooltip("When enabled, the severity level label (e.g., [INFO], [WARNING], [ERROR]) is included in each file log entry. This makes it possible to filter or search log files by severity level.")]
public bool ShowLabel
Field Value
| Type | Description |
|---|---|
| bool |
ShowPrefix
When true, includes the Scylla log prefix (e.g., [Scylla]) in each
file log entry. Useful when log files may be concatenated with output from other
systems and framework entries need to be distinguishable.
Defaults to true.
Declaration
[Tooltip("When enabled, the framework prefix tag (e.g., [Scylla]) is included in each file log entry. Useful when log files might be merged with output from other systems or tools.")]
public bool ShowPrefix
Field Value
| Type | Description |
|---|---|
| bool |
ShowTimestamp
When true, prepends an ISO-8601 timestamp to each file log entry.
Strongly recommended for file output, as timestamps are essential for post-session
analysis and correlating events with other log sources.
Defaults to true.
Declaration
[Tooltip("When enabled, each file log entry includes a timestamp. This is essential for correlating events across sessions or analyzing the timing of issues in post-mortem debugging.")]
public bool ShowTimestamp
Field Value
| Type | Description |
|---|---|
| bool |