Skip to content
This repository was archived by the owner on Jun 1, 2024. It is now read-only.

Commit c35e764

Browse files
committed
Merge branch 'feature/7.x-support' of github.com:Mpdreamz/serilog-sinks-elasticsearch into feature/7.x-support
2 parents b516297 + 154678a commit c35e764

File tree

10 files changed

+46
-7
lines changed

10 files changed

+46
-7
lines changed

Build.ps1

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ echo "In directory: $PSScriptRoot"
22

33
$solution = "serilog-sinks-elasticsearch.sln"
44
$test = "test\\Serilog.Sinks.Elasticsearch.Tests\\Serilog.Sinks.Elasticsearch.Tests.csproj"
5+
$testIntegration = "test\\Serilog.Sinks.Elasticsearch.IntegrationTests\\Serilog.Sinks.Elasticsearch.IntegrationTests.csproj"
56
[string[]]$projects = @(
67
("src\\Serilog.Sinks.Elasticsearch\\Serilog.Sinks.Elasticsearch.csproj"),
78
("src\\Serilog.Formatting.Elasticsearch\\Serilog.Formatting.Elasticsearch.csproj")
@@ -22,6 +23,16 @@ function Invoke-Build()
2223
Write-Output "The tests failed"
2324
exit 1
2425
}
26+
27+
Write-Output "Running integration tests"
28+
# Tee-Object forces console redirection on vstest which magically makes Console.WriteLine works again.
29+
# This allows you to see the console out of Elastic.Xunit while its running
30+
& dotnet test $testIntegration -c Release | Tee-Object -Variable integ
31+
if($LASTEXITCODE -ne 0)
32+
{
33+
Write-Output "The integration tests failed"
34+
exit 1
35+
}
2536

2637
Write-Output "Creating packages"
2738
foreach ($project in $projects)

src/Serilog.Formatting.Elasticsearch/Serilog.Formatting.ElasticSearch.nuspec

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
<tags>serilog logging elasticsearch formatters</tags>
1414
<dependencies>
1515
<dependency id="Serilog" version="2.8.0" />
16+
<dependency id="System.Diagnostics.DiagnosticSource" version="[4.5.1,)" />
1617
</dependencies>
1718
</metadata>
1819
<files>

src/Serilog.Sinks.Elasticsearch/Serilog.Sinks.Elasticsearch.csproj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@
4848
<PackageReference Include="Serilog.Sinks.File" Version="4.0.0" />
4949
<PackageReference Include="Serilog.Sinks.PeriodicBatching" Version="2.1.1" />
5050
<PackageReference Include="Elasticsearch.Net" Version="7.0.0" />
51+
<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="4.5.1" />
5152
</ItemGroup>
5253

5354
<ItemGroup Condition=" '$(TargetFramework)' == 'netstandard2.0' ">

test/Serilog.Sinks.Elasticsearch.Tests/ElasticsearchSinkTestsBase.cs

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
using Serilog.Sinks.Elasticsearch.Tests.Domain;
1313
using Nest.JsonNetSerializer;
1414
using System.Collections;
15+
using System.Threading;
1516

1617
namespace Serilog.Sinks.Elasticsearch.Tests
1718
{
@@ -135,7 +136,7 @@ Func<int> templateExistReturnCode
135136

136137
public override TReturn Request<TReturn>(RequestData requestData)
137138
{
138-
MemoryStream ms = new MemoryStream();
139+
var ms = new MemoryStream();
139140
if (requestData.PostData != null)
140141
requestData.PostData.Write(ms, new ConnectionConfiguration());
141142

@@ -155,6 +156,29 @@ public override TReturn Request<TReturn>(RequestData requestData)
155156
var responseStream = new MemoryStream();
156157
return ResponseBuilder.ToResponse<TReturn>(requestData, null, this._templateExistReturnCode(), Enumerable.Empty<string>(), responseStream);
157158
}
159+
160+
public override async Task<TResponse> RequestAsync<TResponse>(RequestData requestData, CancellationToken cancellationToken)
161+
{
162+
var ms = new MemoryStream();
163+
if (requestData.PostData != null)
164+
await requestData.PostData.WriteAsync(ms, new ConnectionConfiguration(), cancellationToken);
165+
166+
switch (requestData.Method)
167+
{
168+
case HttpMethod.PUT:
169+
_seenHttpPuts.Add(Tuple.Create(requestData.Uri, Encoding.UTF8.GetString(ms.ToArray())));
170+
break;
171+
case HttpMethod.POST:
172+
_seenHttpPosts.Add(Encoding.UTF8.GetString(ms.ToArray()));
173+
break;
174+
case HttpMethod.HEAD:
175+
_seenHttpHeads.Add(this._templateExistReturnCode());
176+
break;
177+
}
178+
179+
var responseStream = new MemoryStream();
180+
return await ResponseBuilder.ToResponseAsync<TResponse>(requestData, null, this._templateExistReturnCode(), Enumerable.Empty<string>(), responseStream, null, cancellationToken);
181+
}
158182
}
159183
}
160184
}

test/Serilog.Sinks.Elasticsearch.Tests/Serilog.Sinks.Elasticsearch.Tests.csproj

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
11
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
4-
<TargetFrameworks>netcoreapp2.0;net461</TargetFrameworks>
4+
<TargetFrameworks>netcoreapp2.1;net461</TargetFrameworks>
55
<AssemblyName>Serilog.Sinks.Elasticsearch.Tests</AssemblyName>
66
<PackageId>Serilog.Sinks.Elasticsearch.Tests</PackageId>
7+
8+
<DebugSymbols>True</DebugSymbols>
9+
<LangVersion>latest</LangVersion>
10+
<IsTestProject>True</IsTestProject>
11+
712
<GenerateRuntimeConfigurationFiles>true</GenerateRuntimeConfigurationFiles>
8-
<PackageTargetFallback Condition=" '$(TargetFramework)' == 'netcoreapp1.1' ">$(PackageTargetFallback);dnxcore50;portable-net45+win8</PackageTargetFallback>
9-
<RuntimeFrameworkVersion Condition=" '$(TargetFramework)' == 'netcoreapp1.1' ">1.1.2</RuntimeFrameworkVersion>
1013
<GenerateAssemblyDescriptionAttribute>false</GenerateAssemblyDescriptionAttribute>
1114
<GenerateAssemblyFileVersionAttribute>false</GenerateAssemblyFileVersionAttribute>
1215
<GenerateAssemblyInformationalVersionAttribute>false</GenerateAssemblyInformationalVersionAttribute>
@@ -44,7 +47,6 @@
4447
<DotNetCliToolReference Include="dotnet-version" Version="1.1.2" />
4548

4649
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.5.0" />
47-
<PackageReference Include="Microsoft.NETCore.Platforms" Version="2.0.1" />
4850
<PackageReference Include="Serilog.Sinks.ColoredConsole" Version="3.0.1" />
4951
<PackageReference Include="dotnet-test-nunit" Version="3.4.0-beta-3" />
5052
<PackageReference Include="xunit" Version="2.3.1" />
@@ -72,7 +74,7 @@
7274
<PackageReference Include="Microsoft.CSharp" Version="4.5.0" />
7375
</ItemGroup>
7476

75-
<PropertyGroup Condition=" '$(TargetFramework)' == 'netcoreapp2.0' ">
77+
<PropertyGroup Condition=" '$(TargetFramework)' == 'netcoreapp2.1' ">
7678
<DefineConstants>$(DefineConstants);DOTNETCORE;PARTIALLY_SERIALIZATION</DefineConstants>
7779
</PropertyGroup>
7880

test/Serilog.Sinks.Elasticsearch.Tests/Templating/SendsTemplateHandlesUnavailableServerTests.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public void Should_write_error_to_self_log()
3434
private static ILogger CreateLoggerThatCrashes()
3535
{
3636
var loggerConfig = new LoggerConfiguration()
37-
.WriteTo.Elasticsearch(new ElasticsearchSinkOptions(new Uri("http://localhost:31234"))
37+
.WriteTo.Elasticsearch(new ElasticsearchSinkOptions(new Uri("http://localhost:9199"))
3838
{
3939
AutoRegisterTemplate = true,
4040
TemplateName = "crash"

0 commit comments

Comments
 (0)