Skip to content

Commit

Permalink
Merge branch 'main' into docs-metrics-exemplarreservoir
Browse files Browse the repository at this point in the history
  • Loading branch information
CodeBlanch authored May 17, 2024
2 parents fcf3da6 + 16f2bf0 commit 61eb277
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 20 deletions.
21 changes: 17 additions & 4 deletions src/OpenTelemetry.Exporter.OpenTelemetryProtocol/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -632,10 +632,23 @@ want to solicit feedback from the community.

Added in `1.8.0`.

* When set to `disk` along with setting
`OTEL_DOTNET_EXPERIMENTAL_OTLP_DISK_RETRY_DIRECTORY_PATH` to the path on
disk, it enables retries by storing telemetry on disk during transient
errors.
* When set to `disk`, it enables retries by storing telemetry on disk during
transient errors. The default path where the telemetry is stored is
obtained by calling
[Path.GetTempPath()](https://learn.microsoft.com/dotnet/api/system.io.path.gettemppath)
or can be customized by setting
`OTEL_DOTNET_EXPERIMENTAL_OTLP_DISK_RETRY_DIRECTORY_PATH` environment
variable.

The OTLP exporter utilizes a forked version of the
[OpenTelemetry.PersistentStorage.FileSystem](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/tree/main/src/OpenTelemetry.PersistentStorage.FileSystem)
library to store telemetry data on disk. When a transient failure occurs,
a file is created at the specified directory path on disk containing the
serialized request data that was attempted to be sent to the OTLP
ingestion. A background thread attempts to resend any offline stored
telemetry every 60 seconds. For more details on how these files are
managed on disk, refer to the [File
details](https://github.com/open-telemetry/opentelemetry-dotnet-contrib/tree/main/src/OpenTelemetry.PersistentStorage.FileSystem#file-details).

Added in **TBD** (Unreleased).

Expand Down
32 changes: 16 additions & 16 deletions src/OpenTelemetry/Metrics/MetricPoint.cs
Original file line number Diff line number Diff line change
Expand Up @@ -492,9 +492,9 @@ internal void UpdateWithExemplar(long number, ReadOnlySpan<KeyValuePair<string,
}
}

this.CompleteUpdate();

this.UpdateExemplar(number, tags, offerExemplar);

this.CompleteUpdate();
}

internal void Update(double number)
Expand Down Expand Up @@ -608,9 +608,9 @@ internal void UpdateWithExemplar(double number, ReadOnlySpan<KeyValuePair<string
}
}

this.CompleteUpdate();

this.UpdateExemplar(number, tags, offerExemplar);

this.CompleteUpdate();
}

internal void TakeSnapshot(bool outputDelta)
Expand Down Expand Up @@ -899,9 +899,9 @@ private void UpdateHistogram(double number, ReadOnlySpan<KeyValuePair<string, ob

this.mpComponents.ReleaseLock();

this.CompleteUpdate();

this.UpdateExemplar(number, tags, offerExemplar);

this.CompleteUpdate();
}

private void UpdateHistogramWithMinMax(double number, ReadOnlySpan<KeyValuePair<string, object?>> tags = default, bool offerExemplar = false)
Expand All @@ -923,9 +923,9 @@ private void UpdateHistogramWithMinMax(double number, ReadOnlySpan<KeyValuePair<

this.mpComponents.ReleaseLock();

this.CompleteUpdate();

this.UpdateExemplar(number, tags, offerExemplar);

this.CompleteUpdate();
}

private void UpdateHistogramWithBuckets(double number, ReadOnlySpan<KeyValuePair<string, object?>> tags = default, bool offerExemplar = false)
Expand All @@ -947,9 +947,9 @@ private void UpdateHistogramWithBuckets(double number, ReadOnlySpan<KeyValuePair

this.mpComponents.ReleaseLock();

this.CompleteUpdate();

this.UpdateExemplar(number, tags, offerExemplar, bucketIndex);

this.CompleteUpdate();
}

private void UpdateHistogramWithBucketsAndMinMax(double number, ReadOnlySpan<KeyValuePair<string, object?>> tags = default, bool offerExemplar = false)
Expand All @@ -974,9 +974,9 @@ private void UpdateHistogramWithBucketsAndMinMax(double number, ReadOnlySpan<Key

this.mpComponents.ReleaseLock();

this.CompleteUpdate();

this.UpdateExemplar(number, tags, offerExemplar, bucketIndex);

this.CompleteUpdate();
}

private void UpdateBase2ExponentialHistogram(double number, ReadOnlySpan<KeyValuePair<string, object?>> tags = default, bool offerExemplar = false)
Expand All @@ -1002,9 +1002,9 @@ private void UpdateBase2ExponentialHistogram(double number, ReadOnlySpan<KeyValu

this.mpComponents.ReleaseLock();

this.CompleteUpdate();

this.UpdateExemplar(number, tags, offerExemplar);

this.CompleteUpdate();
}

private void UpdateBase2ExponentialHistogramWithMinMax(double number, ReadOnlySpan<KeyValuePair<string, object?>> tags = default, bool offerExemplar = false)
Expand Down Expand Up @@ -1033,9 +1033,9 @@ private void UpdateBase2ExponentialHistogramWithMinMax(double number, ReadOnlySp

this.mpComponents.ReleaseLock();

this.CompleteUpdate();

this.UpdateExemplar(number, tags, offerExemplar);

this.CompleteUpdate();
}

[MethodImpl(MethodImplOptions.AggressiveInlining)]
Expand Down

0 comments on commit 61eb277

Please sign in to comment.