diff --git a/README.md b/README.md index c613e0e..88bef63 100644 --- a/README.md +++ b/README.md @@ -1,28 +1,129 @@ -![sink](https://cdn.brammys.com/file/brammys/img/potable-water_1f6b0.png "Sink img") - -# Serilog.Sinks.Mongodb.TimeSeries -[![serilogsink-mongodb-timeseries](https://img.shields.io/github/workflow/status/BrammyS/Serilog.Sinks.Mongodb.TimeSeries/.NET%20Build%20Serilog.Sinks.Mongodb.TimeSeries/main?style=for-the-badge)](https://github.com/brammys/Serilog.Sinks.Mongodb.TimeSeries/actions/workflows/dotnet.yml) -[![CodeFactor](https://www.codefactor.io/repository/github/brammys/serilog.sinks.mongodb.timeseries/badge?style=for-the-badge)](https://www.codefactor.io/repository/github/brammys/serilog.sinks.mongodb.timeseries) -[![NuGet](https://img.shields.io/nuget/vpre/Serilog.Sinks.Mongodb.TimeSeries.svg?maxAge=600&style=for-the-badge)](https://www.nuget.org/packages/Serilog.Sinks.Mongodb.TimeSeries) -[![NuGet](https://img.shields.io/nuget/dt/Serilog.Sinks.Mongodb.TimeSeries.svg?maxAge=600&style=for-the-badge)](https://www.nuget.org/packages/Serilog.Sinks.Mongodb.TimeSeries) -[![License](https://img.shields.io/github/license/BrammyS/Serilog.Sinks.Mongodb.TimeSeries?style=for-the-badge)](https://github.com/BrammyS/Serilog.Sinks.Mongodb.TimeSeries/blob/main/LICENSE) - -A sink for Serilog that saves logs in a MongoDb [time series](https://docs.mongodb.com/manual/core/timeseries-collections/) collection. - -## 1. Installation -Serilog.Sinks.Mongodb.TimeSeries is available on [NuGet](https://www.nuget.org/packages/Serilog.Sinks.Mongodb.TimeSeries). -* [Serilog.Sinks.Mongodb.TimeSeries](https://www.nuget.org/packages/Serilog.Sinks.Mongodb.TimeSeries) -```powershell -Install-Package Serilog.Sinks.Mongodb.TimeSeries -``` -OR -```powershell -dotnet add package Serilog.Sinks.Mongodb.TimeSeries -``` + + +[![NuGet][nuget-version-shield]][package-url] +[![NuGet][nuget-downloads-shield]][package-url] +[![Stargazers][stars-shield]][stars-url] +[![Issues][issues-shield]][issues-url] +[![MIT License][license-shield]][license-url] + + + + +
+

+ + Logo + + +

Serilog.Sinks.Mongodb.TimeSeries

+ +

+ A simple to use sink for Serilog that saves logs in a Mongodb time series collection. +
+ Explore the docs » +
+
+ Report Bug + · + Request Feature +

+

+ + + + +
+

Table of Contents

+
    +
  1. + About The Project + +
  2. +
  3. + Getting Started + +
  4. +
  5. Usage
  6. +
  7. Contributing
  8. +
  9. License
  10. +
  11. Versioning
  12. +
  13. Acknowledgements
  14. +
+
+ + + + +## About The Project + +Serilog.Sinks.Mongodb.TimeSeries is a nuget package to save all your logs to a [time series](https://docs.mongodb.com/manual/core/timeseries-collections/) mongodb collection. +It is super simple to setup! There are only a couple lines needed. Head down to the Installation guide for more info. + + +### Built With + +* [.NET 5](https://dotnet.microsoft.com/download/dotnet/5.0) +* [Serilog](https://github.com/serilog/serilog) +* [Mongodb](https://github.com/mongodb/mongo) + + + + +## Getting Started + +To get a local copy up and running follow these simple steps. + +### Prerequisites + +* [.NET 5](https://dotnet.microsoft.com/download/dotnet/5.0) + +### Installation + +#### Nuget + +Serilog.Sinks.Mongodb.TimeSeries is available on [NuGet](Serilog.Sinks.Mongodb.TimeSeries). +* [Serilog.Sinks.Mongodb.TimeSeries](Serilog.Sinks.Mongodb.TimeSeries) -## 2. Usage -You will need to do the following to add Serilog.Sinks.Mongodb.TimeSeries as a sink in your program. + ```powershell + Install-Package Serilog.Sinks.Mongodb.TimeSeries + ``` + + OR + + ```powershell + dotnet add package Serilog.Sinks.Mongodb.TimeSeries + ``` + +#### Cloning + + +1. Clone the repo + ```sh + git clone https://github.com/BrammyS/Serilog.Sinks.Mongodb.TimeSeries.git + ``` +2. Build the repo + ```sh + dotnet build + ``` + + + +## Usage + +You will need to do the following to add Serilog.Sinks.Mongodb.TimeSeries as a sink in your program. +#### Default configurations ```csharp var client = new MongoClient("mongodb://mongodb0.example.com:27017"); var mongoDatabase = client.GetDatabase("dbName"); @@ -31,7 +132,7 @@ Log.Logger = new LoggerConfiguration() .WriteTo.MongoDbTimeSeriesSink(mongoDatabase) .CreateLogger(); ``` -OR +#### Custom configurations ```csharp var client = new MongoClient("mongodb://mongodb0.example.com:27017"); var mongoDatabase = client.GetDatabase("dbName"); @@ -54,22 +155,59 @@ Log.Logger = new LoggerConfiguration() .CreateLogger(); ``` -## 3. Compiling -You will need the following to compile Serilog.Sinks.Mongodb.TimeSeries: -### With an IDE -* [Visual Studio 2017](https://visualstudio.microsoft.com/downloads/) or [Rider](https://www.jetbrains.com/rider/download/) -* [.NET sdk](https://dotnet.microsoft.com/download) -### With the command line -* [.NET sdk](https://dotnet.microsoft.com/download) + +## Contributing + +Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**. + +1. Fork the Project +2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`) +3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`) +4. Push to the Branch (`git push origin feature/AmazingFeature`) +5. Open a Pull Request + + +## Versioning + +Color-Chan.Discord uses [Semantic Versioning 2.0.0](https://semver.org/#semantic-versioning-200) for its versioning. + -## 4. Versioning -Serilog.Sinks.Mongodb.TimeSeries uses [Semantic Versioning 2.0.0](https://semver.org/#semantic-versioning-200). ### Summary + The versioning will be using the following format: MAJOR.MINOR.PATCH. * MAJOR version when you make incompatible API changes, * MINOR version when you add functionality in a backwards compatible manner, and * PATCH version when you make backwards compatible bug fixes. * Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format. + + + +## License + +Distributed under the MIT License. See `LICENSE` for more information. + + + +## Acknowledgements + +* [Readme-template](https://github.com/othneildrew/Best-README-Template) +* [Serilog.Sinks.PeriodicBatching](https://github.com/serilog/serilog-sinks-periodicbatching) + + + + + + + +[stars-shield]: https://img.shields.io/github/stars/BrammyS/Serilog.Sinks.Mongodb.TimeSeries.svg?style=for-the-badge +[stars-url]: https://github.com/BrammyS/Serilog.Sinks.Mongodb.TimeSeries/stargazers +[issues-shield]: https://img.shields.io/github/issues/BrammyS/Serilog.Sinks.Mongodb.TimeSeries.svg?style=for-the-badge +[issues-url]: https://github.com/BrammyS/Serilog.Sinks.Mongodb.TimeSeries/issues +[license-shield]: https://img.shields.io/github/license/BrammyS/Serilog.Sinks.Mongodb.TimeSeries.svg?style=for-the-badge +[license-url]: https://github.com/BrammyS/Serilog.Sinks.Mongodb.TimeSeries/blob/master/LICENSE.txt +[package-url]: https://www.nuget.org/packages/Serilog.Sinks.Mongodb.TimeSeries +[nuget-version-shield]: https://img.shields.io/nuget/vpre/Serilog.Sinks.Mongodb.TimeSeries.svg?maxAge=600&style=for-the-badge +[nuget-downloads-shield]: https://img.shields.io/nuget/dt/Serilog.Sinks.Mongodb.TimeSeries.svg?maxAge=600&style=for-the-badge diff --git a/docs/index.md b/docs/index.md index fe184f1..02a4ef6 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,24 +1,129 @@ -# serilogsink-mongodb-timeseries -[![serilogsink-mongodb-timeseries](https://github.com/brammys/Serilog.Sinks.Mongodb.TimeSeries/actions/workflows/dotnet.yml/badge.svg)](https://github.com/brammys/Serilog.Sinks.Mongodb.TimeSeries/actions/workflows/dotnet.yml) -[![NuGet](https://img.shields.io/nuget/vpre/Serilog.Sinks.Mongodb.TimeSeries.svg?maxAge=600?style=plastic)](https://www.nuget.org/packages/Serilog.Sinks.Mongodb.TimeSeries) -[![NuGet](https://img.shields.io/nuget/dt/Serilog.Sinks.Mongodb.TimeSeries.svg?maxAge=600?style=plastic)](https://www.nuget.org/packages/Serilog.Sinks.Mongodb.TimeSeries) - -A sink for Serilog that saves logs in a MongoDb [time series](https://docs.mongodb.com/manual/core/timeseries-collections/) collection. - -## 1. Installation -Serilog.Sinks.Mongodb.TimeSeries is available on [NuGet](https://www.nuget.org/packages/Serilog.Sinks.Mongodb.TimeSeries). -* [Serilog.Sinks.Mongodb.TimeSeries](https://www.nuget.org/packages/Serilog.Sinks.Mongodb.TimeSeries) -```powershell -Install-Package Serilog.Sinks.Mongodb.TimeSeries -``` -OR -```powershell -dotnet add package Serilog.Sinks.Mongodb.TimeSeries -``` + + +[![NuGet][nuget-version-shield]][package-url] +[![NuGet][nuget-downloads-shield]][package-url] +[![Stargazers][stars-shield]][stars-url] +[![Issues][issues-shield]][issues-url] +[![MIT License][license-shield]][license-url] + + + + +
+

+ + Logo + + +

Serilog.Sinks.Mongodb.TimeSeries

+ +

+ A simple to use sink for Serilog that saves logs in a Mongodb time series collection. +
+ Explore the docs » +
+
+ Report Bug + · + Request Feature +

+

+ + + + +
+

Table of Contents

+
    +
  1. + About The Project + +
  2. +
  3. + Getting Started + +
  4. +
  5. Usage
  6. +
  7. Contributing
  8. +
  9. License
  10. +
  11. Versioning
  12. +
  13. Acknowledgements
  14. +
+
+ + + + +## About The Project + +Serilog.Sinks.Mongodb.TimeSeries is a nuget package to save all your logs to a [time series](https://docs.mongodb.com/manual/core/timeseries-collections/) mongodb collection. +It is super simple to setup! There are only a couple lines needed. Head down to the Installation guide for more info. + + +### Built With + +* [.NET 5](https://dotnet.microsoft.com/download/dotnet/5.0) +* [Serilog](https://github.com/serilog/serilog) +* [Mongodb](https://github.com/mongodb/mongo) + + + + +## Getting Started + +To get a local copy up and running follow these simple steps. + +### Prerequisites + +* [.NET 5](https://dotnet.microsoft.com/download/dotnet/5.0) + +### Installation + +#### Nuget + +Serilog.Sinks.Mongodb.TimeSeries is available on [NuGet](Serilog.Sinks.Mongodb.TimeSeries). +* [Serilog.Sinks.Mongodb.TimeSeries](Serilog.Sinks.Mongodb.TimeSeries) -## 2. Usage -You will need to do the following to add Serilog.Sinks.Mongodb.TimeSeries as a sink in your program. + ```powershell + Install-Package Serilog.Sinks.Mongodb.TimeSeries + ``` + + OR + + ```powershell + dotnet add package Serilog.Sinks.Mongodb.TimeSeries + ``` + +#### Cloning + + +1. Clone the repo + ```sh + git clone https://github.com/BrammyS/Serilog.Sinks.Mongodb.TimeSeries.git + ``` +2. Build the repo + ```sh + dotnet build + ``` + + + +## Usage + +You will need to do the following to add Serilog.Sinks.Mongodb.TimeSeries as a sink in your program. +#### Default configurations ```csharp var client = new MongoClient("mongodb://mongodb0.example.com:27017"); var mongoDatabase = client.GetDatabase("dbName"); @@ -27,40 +132,82 @@ Log.Logger = new LoggerConfiguration() .WriteTo.MongoDbTimeSeriesSink(mongoDatabase) .CreateLogger(); ``` -OR +#### Custom configurations ```csharp var client = new MongoClient("mongodb://mongodb0.example.com:27017"); var mongoDatabase = client.GetDatabase("dbName"); -var batchingConfig = new PeriodicBatchingSinkOptions +var configs = new MongoDbTimeSeriesSinkConfig(mongoDatabase) { - BatchSizeLimit = 250, - Period = TimeSpan.FromSeconds(20), + CollectionName = "Logs", + TimeSeriesGranularity = TimeSeriesGranularity.Seconds, + SyncingPeriod = TimeSpan.FromSeconds(10), + LogsExpireAfter = TimeSpan.FromDays(7), + MaxCollectionSize = 100 * 1024 * 1024, EagerlyEmitFirstEvent = true, - QueueLimit = 500 + MaxLogsAmount = 100000, + BatchSizeLimit = 500, + QueueLimit = 20000 }; Log.Logger = new LoggerConfiguration() - .WriteTo.MongoDbTimeSeriesSink(mongoDatabase, batchingConfig) + .WriteTo.MongoDbTimeSeriesSink(configs) .CreateLogger(); ``` -## 3. Compiling -You will need the following to compile Serilog.Sinks.Mongodb.TimeSeries: -### With an IDE -* [Visual Studio 2017](https://visualstudio.microsoft.com/downloads/) or [Rider](https://www.jetbrains.com/rider/download/) -* [.NET sdk](https://dotnet.microsoft.com/download) -### With the command line -* [.NET sdk](https://dotnet.microsoft.com/download) + +## Contributing + +Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**. + +1. Fork the Project +2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`) +3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`) +4. Push to the Branch (`git push origin feature/AmazingFeature`) +5. Open a Pull Request + + +## Versioning + +Color-Chan.Discord uses [Semantic Versioning 2.0.0](https://semver.org/#semantic-versioning-200) for its versioning. + -## 4. Versioning -Serilog.Sinks.Mongodb.TimeSeries uses [Semantic Versioning 2.0.0](https://semver.org/#semantic-versioning-200). ### Summary + The versioning will be using the following format: MAJOR.MINOR.PATCH. * MAJOR version when you make incompatible API changes, * MINOR version when you add functionality in a backwards compatible manner, and * PATCH version when you make backwards compatible bug fixes. * Additional labels for pre-release and build metadata are available as extensions to the MAJOR.MINOR.PATCH format. + + + +## License + +Distributed under the MIT License. See `LICENSE` for more information. + + + +## Acknowledgements + +* [Readme-template](https://github.com/othneildrew/Best-README-Template) +* [Serilog.Sinks.PeriodicBatching](https://github.com/serilog/serilog-sinks-periodicbatching) + + + + + + + +[stars-shield]: https://img.shields.io/github/stars/BrammyS/Serilog.Sinks.Mongodb.TimeSeries.svg?style=for-the-badge +[stars-url]: https://github.com/BrammyS/Serilog.Sinks.Mongodb.TimeSeries/stargazers +[issues-shield]: https://img.shields.io/github/issues/BrammyS/Serilog.Sinks.Mongodb.TimeSeries.svg?style=for-the-badge +[issues-url]: https://github.com/BrammyS/Serilog.Sinks.Mongodb.TimeSeries/issues +[license-shield]: https://img.shields.io/github/license/BrammyS/Serilog.Sinks.Mongodb.TimeSeries.svg?style=for-the-badge +[license-url]: https://github.com/BrammyS/Serilog.Sinks.Mongodb.TimeSeries/blob/master/LICENSE.txt +[package-url]: https://www.nuget.org/packages/Serilog.Sinks.Mongodb.TimeSeries +[nuget-version-shield]: https://img.shields.io/nuget/vpre/Serilog.Sinks.Mongodb.TimeSeries.svg?maxAge=600&style=for-the-badge +[nuget-downloads-shield]: https://img.shields.io/nuget/dt/Serilog.Sinks.Mongodb.TimeSeries.svg?maxAge=600&style=for-the-badge \ No newline at end of file diff --git a/src/Serilog.Sinks.Mongodb.TimeSeries/Configurations/LogCollectionConfig.cs b/src/Serilog.Sinks.Mongodb.TimeSeries/Configurations/LogCollectionConfig.cs index 7e9fae0..e0c7358 100644 --- a/src/Serilog.Sinks.Mongodb.TimeSeries/Configurations/LogCollectionConfig.cs +++ b/src/Serilog.Sinks.Mongodb.TimeSeries/Configurations/LogCollectionConfig.cs @@ -3,6 +3,9 @@ namespace Serilog.Sinks.Mongodb.TimeSeries.Configurations { + /// + /// Holds the mongodb collection configuration for the collection. + /// internal static class LogCollectionConfig { /// diff --git a/src/Serilog.Sinks.Mongodb.TimeSeries/Configurations/MongoDbTimeSeriesSinkConfig.cs b/src/Serilog.Sinks.Mongodb.TimeSeries/Configurations/MongoDbTimeSeriesSinkConfig.cs index 0e50e63..b4d4a2d 100644 --- a/src/Serilog.Sinks.Mongodb.TimeSeries/Configurations/MongoDbTimeSeriesSinkConfig.cs +++ b/src/Serilog.Sinks.Mongodb.TimeSeries/Configurations/MongoDbTimeSeriesSinkConfig.cs @@ -23,61 +23,62 @@ public MongoDbTimeSeriesSinkConfig(IMongoDatabase database) /// /// The collection name of where the logs will be stored. The default is "logs". /// - public string CollectionName { get; set; } = "logs"; + public string CollectionName { get; init; } = "logs"; /// /// The maximum number of log events to include in a single batch. The default is 1000. /// - public int BatchSizeLimit { get; set; } = 1000; + public int BatchSizeLimit { get; init; } = 1000; /// - /// Maximum number of events to hold in the sink's internal queue, or null for an unbounded queue. The default is 10000. + /// Maximum number of events to hold in the sink's internal queue, or null for an unbounded queue. The default is + /// 10000. /// - public int QueueLimit { get; set; } = 10000; + public int QueueLimit { get; init; } = 10000; /// /// Eagerly emit a batch containing the first received event, regardless of the target batch size or batching time. /// This helps with perceived "liveness" when running/debugging applications interactively. The default is true. /// - public bool EagerlyEmitFirstEvent { get; set; } = true; + public bool EagerlyEmitFirstEvent { get; init; } = true; /// /// The time to wait between checking for event batches. The default is 5 seconds. /// - public TimeSpan SyncingPeriod { get; set; } = TimeSpan.FromSeconds(5); + public TimeSpan SyncingPeriod { get; init; } = TimeSpan.FromSeconds(5); /// /// The coarse granularity of time-series data. The default is Seconds. /// - public TimeSeriesGranularity TimeSeriesGranularity { get; set; } = TimeSeriesGranularity.Seconds; + public TimeSeriesGranularity TimeSeriesGranularity { get; init; } = TimeSeriesGranularity.Seconds; /// /// Gets or sets the maximum size of the collection in bytes. /// Logs will get deleted when this number has been hit. /// - public long? MaxCollectionSize { get; set; } + public long? MaxCollectionSize { get; init; } /// /// Gets or sets the maximum number of logs that will be stored. /// Logs will get deleted when this number has been hit. /// - public long? MaxLogsAmount { get; set; } + public long? MaxLogsAmount { get; init; } /// /// Gets or sets a timespan indicating how long documents in a time series collection should be retained. /// - public TimeSpan? LogsExpireAfter { get; set; } + public TimeSpan? LogsExpireAfter { get; init; } /// /// The that will be used to create a new collection /// when no collection with the name of exists. /// - internal CreateCollectionOptions CreateCollectionOptions { get; set; } + internal CreateCollectionOptions CreateCollectionOptions { get; init; } /// /// The of where the collection will be stored.. /// - internal IMongoDatabase Database { get; set; } + internal IMongoDatabase Database { get; init; } /// /// Get a default implementation of . diff --git a/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LogEventLevelExtensions.cs b/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LogEventLevelExtensions.cs index 2c724a1..aa36841 100644 --- a/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LogEventLevelExtensions.cs +++ b/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LogEventLevelExtensions.cs @@ -14,7 +14,7 @@ internal static class LogEventLevelExtensions private const string Warning = "warning"; private const string Error = "error"; private const string Fatal = "fatal"; - + /// /// Converts a into a readable . /// diff --git a/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LogEventPropertyValueExtensions.cs b/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LogEventPropertyValueExtensions.cs index c77a2dc..624811a 100644 --- a/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LogEventPropertyValueExtensions.cs +++ b/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LogEventPropertyValueExtensions.cs @@ -5,18 +5,21 @@ namespace Serilog.Sinks.Mongodb.TimeSeries.Extensions { - public static class LogEventPropertyValueExtensions + /// + /// Contains all extensions methods for . + /// + internal static class LogEventPropertyValueExtensions { /// - /// Converts the to a + /// Converts the to a /// /// The value to convert (possibly null). /// A format string applied to the value, or null. /// A format provider to apply to the value, or null to use the default. /// - /// The converted . + /// The converted . /// - public static BsonValue ToBsonValue(this LogEventPropertyValue propertyValue, string? format = null, IFormatProvider? formatProvider = null) + internal static BsonValue ToBsonValue(this LogEventPropertyValue propertyValue, string? format = null, IFormatProvider? formatProvider = null) { if (propertyValue is ScalarValue scalar) { @@ -30,7 +33,7 @@ public static BsonValue ToBsonValue(this LogEventPropertyValue propertyValue, st { bsonDict.Add(ConvertScalar(key), value.ToBsonValue(format, formatProvider)); } - + return BsonValue.Create(bsonDict); } @@ -41,7 +44,7 @@ public static BsonValue ToBsonValue(this LogEventPropertyValue propertyValue, st { bsonList.Add(value.ToBsonValue(format, formatProvider)); } - + return BsonValue.Create(bsonList); } diff --git a/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LoggerSinkConfigurationExtensions.cs b/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LoggerSinkConfigurationExtensions.cs index 888e53e..af7e4ee 100644 --- a/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LoggerSinkConfigurationExtensions.cs +++ b/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/LoggerSinkConfigurationExtensions.cs @@ -31,7 +31,7 @@ public static LoggerConfiguration MongoDbTimeSeriesSink(this LoggerSinkConfigura }; var logSink = new MongoDbTimeSink(sinkConfig, formatProvider); - + var batchingMongoDbSink = new PeriodicBatchingSink(logSink, batchingOptions); return loggerConfiguration.Sink(batchingMongoDbSink); } diff --git a/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/MongoDatabaseExtensions.cs b/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/MongoDatabaseExtensions.cs index 235dcc1..684cfa9 100644 --- a/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/MongoDatabaseExtensions.cs +++ b/src/Serilog.Sinks.Mongodb.TimeSeries/Extensions/MongoDatabaseExtensions.cs @@ -19,7 +19,7 @@ internal static class MongoDatabaseExtensions internal static bool CollectionExists(this IMongoDatabase database, string collectionName) { var filter = new BsonDocument("name", collectionName); - var collectionCursor = database.ListCollections(new ListCollectionsOptions {Filter = filter}); + var collectionCursor = database.ListCollections(new ListCollectionsOptions { Filter = filter }); return collectionCursor.Any(); } } diff --git a/src/Serilog.Sinks.Mongodb.TimeSeries/Models/LogDocument.cs b/src/Serilog.Sinks.Mongodb.TimeSeries/Models/LogDocument.cs index b6a5d09..3268070 100644 --- a/src/Serilog.Sinks.Mongodb.TimeSeries/Models/LogDocument.cs +++ b/src/Serilog.Sinks.Mongodb.TimeSeries/Models/LogDocument.cs @@ -4,6 +4,9 @@ namespace Serilog.Sinks.Mongodb.TimeSeries.Models { + /// + /// The document that will be stored in mongodb. + /// internal class LogDocument { /// diff --git a/src/Serilog.Sinks.Mongodb.TimeSeries/Serilog.Sinks.Mongodb.TimeSeries.csproj b/src/Serilog.Sinks.Mongodb.TimeSeries/Serilog.Sinks.Mongodb.TimeSeries.csproj index c24dbc8..ebd70de 100644 --- a/src/Serilog.Sinks.Mongodb.TimeSeries/Serilog.Sinks.Mongodb.TimeSeries.csproj +++ b/src/Serilog.Sinks.Mongodb.TimeSeries/Serilog.Sinks.Mongodb.TimeSeries.csproj @@ -7,12 +7,12 @@ - - + + - + @@ -41,8 +41,16 @@ https://cdn.brammys.com/file/brammys/img/potable-water_1f6b0.png + + bin\Debug\Serilog.Sinks.Mongodb.TimeSeries.xml + + + + bin\Release\Serilog.Sinks.Mongodb.TimeSeries.xml + + - + - + diff --git a/tests/Serilog.Sinks.Mongodb.TimeSeries.Tests/Serilog.Sinks.Mongodb.TimeSeries.Tests.csproj b/tests/Serilog.Sinks.Mongodb.TimeSeries.Tests/Serilog.Sinks.Mongodb.TimeSeries.Tests.csproj index 002dc3a..ef0fa40 100644 --- a/tests/Serilog.Sinks.Mongodb.TimeSeries.Tests/Serilog.Sinks.Mongodb.TimeSeries.Tests.csproj +++ b/tests/Serilog.Sinks.Mongodb.TimeSeries.Tests/Serilog.Sinks.Mongodb.TimeSeries.Tests.csproj @@ -7,16 +7,16 @@ - - - - - - + + + + + + - +