# <a id="bitdrift.public.unary.timeline.v1.Log"></a>Log

**Source definition:** [`src/bitdrift/public/unary/timeline/v1/logs.proto#L15-L46`](<https://github.com/bitdriftlabs/api/blob/main/src/bitdrift/public/unary/timeline/v1/logs.proto#L15-L46>)

<section class="proto-fields-table" markdown>
| Field | Type | Description |
|---|---|---|
| fields | <span class="proto-type proto-type-message">[<i class="proto-type-part">bitdrift</i><i class="proto-type-dot">.</i><i class="proto-type-part">public</i><i class="proto-type-dot">.</i><i class="proto-type-part">unary</i><i class="proto-type-dot">.</i><i class="proto-type-part">timeline</i><i class="proto-type-dot">.</i><i class="proto-type-part">v1</i><i class="proto-type-dot">.</i><i class="proto-type-part">Log</i><i class="proto-type-dot">.</i><i class="proto-type-part">LogFields</i>](#bitdrift.public.unary.timeline.v1.Log.LogFields "bitdrift.public.unary.timeline.v1.Log.LogFields")</span> | Additional key-value fields captured with the log. |
| listener_ids | <span class="proto-type proto-type-primitive">array of string</span> | The listener IDs for workflows that captured the log. |
| log_level | <span class="proto-type proto-type-enum">[<i class="proto-type-part">bitdrift</i><i class="proto-type-dot">.</i><i class="proto-type-part">public</i><i class="proto-type-dot">.</i><i class="proto-type-part">unary</i><i class="proto-type-dot">.</i><i class="proto-type-part">timeline</i><i class="proto-type-dot">.</i><i class="proto-type-part">v1</i><i class="proto-type-dot">.</i><i class="proto-type-part">Log</i><i class="proto-type-dot">.</i><i class="proto-type-part">LogLevel</i>](#bitdrift.public.unary.timeline.v1.Log.LogLevel "bitdrift.public.unary.timeline.v1.Log.LogLevel")</span> | The severity level of the log. |
| log_type | <span class="proto-type proto-type-enum">[<i class="proto-type-part">bitdrift_public</i><i class="proto-type-dot">.</i><i class="proto-type-part">protobuf</i><i class="proto-type-dot">.</i><i class="proto-type-part">logging</i><i class="proto-type-dot">.</i><i class="proto-type-part">v1</i><i class="proto-type-dot">.</i><i class="proto-type-part">LogType</i>](bitdrift_public_protobuf_logging_v1_LogType.md "bitdrift_public.protobuf.logging.v1.LogType")</span> | The log type. Use it to categorize logs for filtering and display. |
| message | <span class="proto-type proto-type-primitive">string</span> | The primary log message. |
| timestamp | <span class="proto-type proto-type-well-known">[google.protobuf.Timestamp](https://protobuf.dev/reference/protobuf/google.protobuf/#timestamp "google.protobuf.Timestamp")</span> | The recorded timestamp of the log. |

</section>
<p class="h4">Example</p>
```json
{
  "fields": {
    "fields": {
      "key": {
        "string_data": ""
      }
    }
  },
  "listener_ids": [
    "abc-123-def"
  ],
  "log_level": "DEBUG",
  "log_type": "REPLAY",
  "message": "Example text",
  "timestamp": "2024-01-15T09:30:00Z"
}
```

# <a id="bitdrift.public.unary.timeline.v1.Log.LogFields"></a>Log.LogFields

**Source definition:** [`src/bitdrift/public/unary/timeline/v1/logs.proto#L24-L27`](<https://github.com/bitdriftlabs/api/blob/main/src/bitdrift/public/unary/timeline/v1/logs.proto#L24-L27>)

<section class="proto-fields-table" markdown>
| Field | Type | Description |
|---|---|---|
| fields | <span class="proto-type proto-type-primitive">map<string, bitdrift_public.protobuf.logging.v1.Data></span> | Additional key-value fields captured with the log. |

</section>
<p class="h4">Example</p>
```json
{
  "fields": {
    "key": {
      "string_data": ""
    }
  }
}
```

# <a id="bitdrift.public.unary.timeline.v1.Log.LogLevel"></a>Log.LogLevel <em class="proto-enum">Enum</em>

**Source definition:** [`src/bitdrift/public/unary/timeline/v1/logs.proto#L16-L22`](<https://github.com/bitdriftlabs/api/blob/main/src/bitdrift/public/unary/timeline/v1/logs.proto#L16-L22>)

| Name | Description |
|---|---|
| TRACE |  |
| DEBUG |  |
| INFO |  |
| WARN |  |
| ERROR |  |

