You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/en/ninja-workshops/10-advanced-otel/40-resillience/_index.md
+13-6Lines changed: 13 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -52,10 +52,10 @@ Let's add the extension part first:
52
52
3.**Add**`directory:`**key**: under the `file_storage` extension and set it to a value of `"./checkpoint-folder"`
53
53
4.**Add**`create_directory:`**key**: Set the Value to `true`.
54
54
5.**Add**`timeout:`**key**: Set the value to `1s`.
55
-
6.**Add**`compaction:`**key**:
56
-
7.**Add `on_start:` key**: Under the `compaction:` section, Set the value to `true`
57
-
8.**Add**`directory:`**key**: Set the value to `./checkpoint-folder`.
58
-
9.**Add**`max_transaction_size:`**key**: Set it to a value of `65_536`
55
+
6.**Add**`compaction:`**key** section.
56
+
7.**Add**`on_start:`**key**: Under the `compaction:` section, set the value to ``true`.
57
+
7.**Add**`directory:`**key**: Set the value to `./checkpoint-folder/tmp`.
58
+
8.**Add**`max_transaction_size:`**key**: Set it to a value of `65_536`
59
59
60
60
{{% /notice%}}
61
61
@@ -65,7 +65,9 @@ Let's add the extension part first:
65
65
-`create_directory: true`: Ensures that the directory is created if it doesn’t already exist.
66
66
-`timeout: 1s`: Specifies a timeout for file operations related to the checkpointing.
67
67
-`compaction`: Ensures that old checkpoint data is compacted periodically.
68
-
-`max_transaction_size` defines the size limit for checkpoint transactions before compaction occurs.
68
+
-`on_start: true` : Determines whether the compaction process begins immediately when the OpenTelemetry Collector starts.
69
+
-`directory:``./checkpoint-folder/tmp`: Specifies the directory used for compaction (as a midstep).
70
+
-`max_transaction_size` defines the size limit for checkpoint transactions before compaction occurs.
69
71
70
72
The next exercise is modifying the `otlphttp:` exporter where retries and queueing are configured.
71
73
@@ -84,7 +86,7 @@ exporters:
84
86
85
87
1. **Add** `tls:` **key**: Place at the same indent level as `headers:`.
86
88
2. **Add** `insecure:` **key**: Under the `tls:` key and set its value to `true`.
87
-
3. **Add** `retry_on_failure:` **key**:
89
+
3. **Add** `retry_on_failure:` **key**:Place at the same indent level as `headers:`.
88
90
4. **Add** `enabled:` **key**: Under the `retry_on_failure:` key and set its value to `true`.
89
91
5. **Add** `sending_queue:` **key**:
90
92
6. **Add** `enabled:` **key**: Under the `sending_queue:` key and set its value to `true`.
@@ -102,3 +104,8 @@ exporters:
102
104
- `queue_size: 10000`: The maximum size of the queue.
103
105
- `storage: file_storage/checkpoint`: Specifies that the queue state will be backed up in the file system.
104
106
107
+
Again, validate the agent configuration using **[otelbin.io](https://www.otelbin.io/)** for spelling mistakes etc. Your `Logs:` pipeline should like this:
108
+
109
+

110
+
111
+
This setup ensures your OpenTelemetry Collector can handle network interruptions gracefully by storing telemetry data on disk and retrying failed transmissions. It combines checkpointing for recovery and queueing for efficient retries, making your pipeline more resilient and reliable. Now, let’s test this configuration!
0 commit comments