diff --git a/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Extensions/StreamExtensions.cs b/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Extensions/StreamExtensions.cs
index dcaecb4..7b06d41 100644
--- a/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Extensions/StreamExtensions.cs
+++ b/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Extensions/StreamExtensions.cs
@@ -57,43 +57,15 @@ internal static class StreamExtensions
public static (long, string?) ReadAsString(this Stream stream, Encoding? encoding = null, int bufferSize = 4096)
{
- if (stream == null || !stream.CanRead || !stream.CanSeek)
- return (-1, null);
-
- var start = stream.Position;
try
{
- var maxBodySize = OpenTelemetryInstrumentationOptions.MaxBodySize;
- if (maxBodySize > 0 && stream.Length > maxBodySize)
- return (stream.Length, null);
-
- using var dataStream = new MemoryStream();
- var buffer = new byte[bufferSize];
- stream.Seek(0, SeekOrigin.Begin);
- while (true)
- {
- var count = stream.Read(buffer, 0, bufferSize);
- if (count <= 0)
- break;
-
- dataStream.Write(buffer, 0, count);
- }
-
- if (dataStream.Length <= 0)
- return (-1, null);
-
- return (dataStream.Length, (encoding ?? _defaultEncoding).GetString(dataStream.ToArray()));
+ return ReadAsStringAsync(stream, encoding, bufferSize).ConfigureAwait(false).GetAwaiter().GetResult();
}
catch (Exception ex)
{
OpenTelemetryInstrumentationOptions.Logger?.LogError(ex, "ReadAsString Error");
+ return (-1, null);
}
- finally
- {
- stream.Seek(start, SeekOrigin.Begin);
- }
-
- return (-1, null);
}
public static (long, string?) ReadAsBase64(this Stream stream, int bufferSize = 4096)
diff --git a/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Traceing/Handler/ExceptionHandler.cs b/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Traceing/Handler/ExceptionHandler.cs
index 78824db..8568726 100644
--- a/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Traceing/Handler/ExceptionHandler.cs
+++ b/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Traceing/Handler/ExceptionHandler.cs
@@ -52,7 +52,7 @@ public static string GetIp(IHeaderDictionary headers, IPAddress? deafultIp)
public static void SetActivityBody(Activity activity, Stream inputSteam, Encoding? encoding = null)
{
- (long length, string? body) = inputSteam.ReadAsString(encoding);
+ (long length, string? body) = inputSteam.ReadAsStringAsync(encoding).ConfigureAwait(false).GetAwaiter().GetResult();
if (length <= 0)
return;
@@ -65,12 +65,7 @@ public static void SetActivityBody(Activity activity, Stream inputSteam, Encodin
activity.SetTag(OpenTelemetryAttributeName.Http.REQUEST_CONTENT_BODY, body);
}
}
-
- ///
- /// ���ڿӣ�masaauth�������淶���£�֮���е������ٵ����˴�
- ///
- ///
- ///
+
public static void SetUserInfo(Activity activity, ClaimsPrincipal? claims)
{
if (claims == null || !claims.Claims.Any()) return;
diff --git a/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Traceing/Handler/HttpClientInstrumentHandler.cs b/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Traceing/Handler/HttpClientInstrumentHandler.cs
index d7fa751..cf37cec 100644
--- a/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Traceing/Handler/HttpClientInstrumentHandler.cs
+++ b/src/Contrib/Masa.Contrib.StackSdks.Tsc.OpenTelemetry/Traceing/Handler/HttpClientInstrumentHandler.cs
@@ -90,7 +90,7 @@ private static bool TrySetMultipartFormBody(Activity activity, HttpRequestMessag
}
var contentStream = item.ReadAsStreamAsync().ConfigureAwait(false).GetAwaiter().GetResult();
- (_, var value) = contentStream.ReadAsString(GetHttpRequestMessageEncoding(httpRequest));
+ (_, var value) = contentStream.ReadAsStringAsync(GetHttpRequestMessageEncoding(httpRequest)).ConfigureAwait(false).GetAwaiter().GetResult();
formItems.Add($"{key}={value ?? string.Empty}");
}