Elastic.Ingest.Elasticsearch
0.1.0
Prefix Reserved
See the version list below for details.
dotnet add package Elastic.Ingest.Elasticsearch --version 0.1.0
NuGet\Install-Package Elastic.Ingest.Elasticsearch -Version 0.1.0
<PackageReference Include="Elastic.Ingest.Elasticsearch" Version="0.1.0" />
paket add Elastic.Ingest.Elasticsearch --version 0.1.0
#r "nuget: Elastic.Ingest.Elasticsearch, 0.1.0"
// Install Elastic.Ingest.Elasticsearch as a Cake Addin #addin nuget:?package=Elastic.Ingest.Elasticsearch&version=0.1.0 // Install Elastic.Ingest.Elasticsearch as a Cake Tool #tool nuget:?package=Elastic.Ingest.Elasticsearch&version=0.1.0
Elastic.Ingest.Elasticsearch
Elastic.Channels
implementations of BufferedChannelBase
that allows data to pushed to either indices or data streams
DataStreamChannel<TEvent>
A channel that specializes to writing data with a timestamp to Elasticsearch data streams. E.g given the following document.
public class TimeSeriesDocument
{
[JsonPropertyName("@timestamp")]
public DateTimeOffset Timestamp { get; set; }
[JsonPropertyName("message")]
public string Message { get; set; }
}
A channel can be created to push data to the logs-dotnet-default
data stream.
var dataStream = new DataStreamName("logs", "dotnet");
var bufferOptions = new BufferOptions { }
var options = new DataStreamChannelOptions<TimeSeriesDocument>(transport)
{
DataStream = dataStream,
BufferOptions = bufferOptions
};
var channel = new DataStreamChannel<TimeSeriesDocument>(options);
NOTE: read more about Elastic's data stream naming convention here: https://www.elastic.co/blog/an-introduction-to-the-elastic-data-stream-naming-scheme
we can now push data to Elasticsearch using the DataStreamChannel
var doc = new TimeSeriesDocument
{
Timestamp = DateTimeOffset.Now,
Message = "Hello World!",
}
channel.TryWrite(doc);
IndexChannel<TEvent>
A channel that specializes in writing catalog data to Elastic indices. Catalog data is typically data that has an id of sorts.
Given the following minimal document
public class CatalogDocument
{
[JsonPropertyName("id")]
public string Id { get; set; }
[JsonPropertyName("title")]
public string Title { get; set; }
[JsonPropertyName("created")]
public DateTimeOffset Created { get; set; }
}
We can create an IndexChannel<>
to push CatalogDocument
instances.
var options = new IndexChannelOptions<CatalogDocument>(transport)
{
IndexFormat = "catalog-data-{0:yyyy.MM.dd}",
BulkOperationIdLookup = c => c.Id,
TimestampLookup = c => c.Created,
};
var channel = new IndexChannel<CatalogDocument>(options);
now we can push data using:
var doc = new CatalogDocument
{
Created = date,
Title = "Hello World!",
Id = "hello-world"
}
channel.TryWrite(doc);
This will push data to catalog-data-2023.01.1
because TimestampLookup
yields Created
to IndexFormat
.
IndexFormat
can also simply be a fixed string to write to an Elasticsearch alias/index.
BulkOperationIdLookup
determines if the document should be pushed to Elasticsearch using a create
or index
operation.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- Elastic.Ingest.Transport (>= 0.1.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Elastic.Ingest.Elasticsearch:
Package | Downloads |
---|---|
Elastic.Ingest.Elasticsearch.CommonSchema
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
0.7.3 | 1,328 | 10/3/2024 |
0.7.2 | 77,309 | 9/18/2024 |
0.7.1 | 256 | 9/16/2024 |
0.7.0 | 393,035 | 4/10/2024 |
0.6.0 | 220 | 3/28/2024 |
0.5.7 | 13,946 | 2/13/2024 |
0.5.6 | 440 | 1/22/2024 |
0.5.5 | 578,897 | 7/12/2023 |
0.5.4 | 180 | 7/10/2023 |
0.5.3 | 212 | 7/5/2023 |
0.5.2 | 226 | 6/22/2023 |
0.5.1 | 192 | 5/4/2023 |
0.5.0 | 99,573 | 4/28/2023 |
0.4.3 | 224 | 4/17/2023 |
0.4.2 | 367 | 4/5/2023 |
0.4.1 | 195 | 4/5/2023 |
0.4.0 | 207 | 4/5/2023 |
0.3.2 | 22,436 | 2/27/2023 |
0.3.1 | 703 | 2/20/2023 |
0.3.0 | 312 | 2/16/2023 |
0.2.2 | 494 | 1/31/2023 |
0.2.1 | 311 | 1/31/2023 |
0.2.0 | 310 | 1/31/2023 |
0.1.0 | 509 | 1/25/2023 |