> ## Documentation Index
> Fetch the complete documentation index at: https://docs.honeycomb.io/llms.txt
> Use this file to discover all available pages before exploring further.

# File

<Badge className="hny-badge-enterprise-addon" stroke>Ent+</Badge>

<Note>
  This feature is available as an add-on for the [Honeycomb Enterprise plan](https://www.honeycomb.io/pricing/).
  Please contact your Honeycomb account team for details.
</Note>

<Warning>
  This source offers a delete\_after\_read option that can be hazardous. When this option is combined with file globbing, it will delete every file that matches the globbing pattern. Use with caution and care.
</Warning>

***

## Supported Platforms

| Platform | Metrics | Logs | Traces |
| :- | :- | :- | :- |
| Linux | | ✓ | |
| Windows | | ✓ | |
| macOS | | ✓ | |

## Configuration Table

| Parameter | Type | Default | Description |
| :- | :- | :- | :- |
| file\_path\* | `strings` | | File or directory paths to tail for logs. |
| exclude\_file\_path | `strings` | "" | File or directory paths to exclude. |
| log\_type | `string` | "file" | A friendly name that will be added to each log entry as an attribute. |
| parse\_format | `enum` | none | Method to use when parsing. Valid values are `none`, `json`, and `regex`. When regex is selected, 'Regex Pattern' must be set. |
| regex\_pattern | `string` | | The regex pattern that is used when parsing log entries. |
| multiline\_line\_start\_pattern | `string` | | Regex pattern that matches the beginning of a log entry for handling multiline logs. |
| multiline\_line\_end\_pattern | `string` | | Regex pattern that matches the end of a log entry, useful for terminating parsing of multiline logs. |
| parse\_timestamp | `bool` | false | Whether to parse the timestamp from the log entry. |
| timestamp\_field | `string` | timestamp | The field containing the timestamp in the log entry. |
| parse\_timestamp\_format | `enum` | ISO8601 | The format of the timestamp in the log entry. Choose a common format, or specify a custom format. Options include "ISO8601", "RFC3339", "Epoch", and "Manual". |
| epoch\_timestamp\_format | `enum` | s | The layout of the epoch-based timestamp. It's required when parse\_timestamp\_format is set to "Epoch". Options include "s", "ms", "us", "ns", "s.ms", "s.us", "s.ns". |
| manual\_timestamp\_format | `string` | '%Y-%m-%dT%H:%M:%S.%f%z' | The strptime layout of the timestamp. It's used when parse\_timestamp\_format is set to "Manual". |
| timezone | `timezone` | UTC | The timezone to use if the Timestamp Format doesn't include a timezone. Otherwise, the timezone in the Timestamp Format will be respected. **NOTE: This is also required to parse timezone abbreviations due to their ambiguity.** |
| parse\_severity | `bool` | false | Whether to parse severity from the log entry. |
| severity\_field | `string` | severity | The field containing the severity in the log entry. |
| encoding | `enum` | utf-8 | The encoding of the file being read. Valid values are `nop`, `utf-8`, `utf-16le`, `utf-16be`, `ascii`, and `big5`. |
| include\_file\_name\_attribute | `bool` | true | Whether to add the file name as the attribute `log.file.name`. |
| include\_file\_path\_attribute | `bool` | false | Whether to add the file path as the attribute `log.file.path`. |
| include\_file\_name\_resolved | `bool` | false | Whether to add the file name after symlinks resolution as the attribute `log.file.name_resolved`. |
| include\_file\_path\_resolved | `bool` | false | Whether to add the file path after symlinks resolution as the attribute `log.file.path_resolved`. |
| delete\_after\_read | `bool` | false | Whether to delete the file(s) after reading. Only valid in combination start\_at: beginning. |
| offset\_storage\_dir | `string` | \$OIQ\_OTEL\_COLLECTOR\_HOME/storage | The directory where the offset storage file will be created. It is okay if multiple receivers use the same directory. By default, the [observIQ Distro for OpenTelemetry Collector](https://github.com/observIQ/observiq-otel-collector) sets `$OIQ_OTEL_COLLECTOR_HOME` in its runtime. |
| poll\_interval | `int` | 200 | The duration of time in milliseconds between filesystem polls. |
| max\_concurrent\_files | `int` | 1024 | The maximum number of log files from which logs will be read concurrently. If the number of files matched exceeds this number, then files will be processed in batches. |
| parse\_to | `string` | body | The [field](https://github.com/open-telemetry/opentelemetry-collector-contrib/blob/main/pkg/stanza/docs/types/field.md) that the log will be parsed to. Some exporters handle logs favorably when parsed to `attributes` over `body` and vice versa. |
| start\_at | `enum` | end | Start reading the file from the 'beginning' or 'end'. |
