v6.0.0
Implemented:
- Remove dependency from Serilog.Sinks.Http and implement infrastructure code
- Implement client, which will use gzip for logs compression
Breaking changes:
- Deprecated dependency
Serilog.Sinks.Http
- Replaced
IHttpClient
withILokiHttpClient
Migration guide:
You will have to migrate your code if you've implemented your own version ofILokiHttpClient
. The signature of methodILokiHttpClient.PostAsync
(before upgradeIHttpClient.PostAsync
has changed from Task PostAsync(string, HttpContent) to Task PostAsync(string, Stream).
Before upgrade:
public class CustomLokiHttpClient : IHttpClient
{
// Code removed for brevity...
public async Task<HttpResponseMessage> PostAsync(string requestUri, HttpContent content)
{
// Here you probably have some code updating the content,
// and then you send the request
return await httpClient.PostAsync(requestUri, content)
}
}
After update:
public class CustomLokiHttpClient : ILokiHttpClient
{
// Code removed for brevity...
public async Task<HttpResponseMessage> PostAsync(string requestUri, Stream contentStream)
{
using var content = new StreamContent(contentStream);
// Here you probably have some code updating the content,
// and then you send the request
return await httpClient.PostAsync(requestUri, content)
}
}