Serilog.Sinks.Firestore
0.1.3
dotnet add package Serilog.Sinks.Firestore --version 0.1.3
NuGet\Install-Package Serilog.Sinks.Firestore -Version 0.1.3
<PackageReference Include="Serilog.Sinks.Firestore" Version="0.1.3" />
paket add Serilog.Sinks.Firestore --version 0.1.3
#r "nuget: Serilog.Sinks.Firestore, 0.1.3"
// Install Serilog.Sinks.Firestore as a Cake Addin #addin nuget:?package=Serilog.Sinks.Firestore&version=0.1.3 // Install Serilog.Sinks.Firestore as a Cake Tool #tool nuget:?package=Serilog.Sinks.Firestore&version=0.1.3
Installation
Using the dotnet cli:
dotnet add package Serilog.Sinks.Firestore
Usage
To use with default settings, add the Firestore Sink using one of the following methods:
var project = "myProject";
var collection = "myLogs";
var log = new LoggerConfiguration()
.MinimumLevel.Information()
.WriteTo.Firestore(project, collection)
.CreateLogger();
// or
var firestoreConfiguration = new FirestoreConfiguration(project, collection);
var log = new LoggerConfiguration()
.MinimumLevel.Information()
.WriteTo.Firestore(firestoreConfiguration)
.CreateLogger();
Credential types
By default if no credentials are specified the default environment variables credentials for Google Cloud in the following structureGOOGLE_APPLICATION_CREDENTIALS
- path/credentials.json
In order to explicitly set other credentials, the optional parameters of both sink configurations provide a credentialType
and credentialValue
parameter.
Examples
JsonCredentials - a string (in JSON format) containing service account credentials
var firestoreApiClient = new FirestoreConfiguration(CredentialType.JsonCredentials, "project", "logs", "{ \"creds\" : \"value\"}");
CredentialsPath - a path to a JSON file containing service account credentials
var firestoreApiClient = new FirestoreConfiguration(CredentialType.CredentialsPath, "project", "logs", @"C:\creds.json");
Default - null/not used (Credentials loaded from Environment Variable)
var firestoreConfiguration = new FirestoreConfiguration("project", "logs");
Batching
This sink utilises PeriodicBatchingSink
to write logs in batches to Firestore, because batch jobs have a limit of 500 operations, this limit is enforced in the configuration.
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 | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net45 is compatible. net451 was computed. net452 was computed. net46 was computed. net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.5
- Google.Cloud.Firestore (>= 1.0.0)
- Serilog (>= 2.8.0)
- Serilog.Formatting.Compact (>= 1.0.0)
- Serilog.Sinks.PeriodicBatching (>= 2.2.0)
-
.NETStandard 2.0
- Google.Cloud.Firestore (>= 1.0.0)
- Serilog (>= 2.8.0)
- Serilog.Formatting.Compact (>= 1.0.0)
- Serilog.Sinks.PeriodicBatching (>= 2.2.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.