CerberusClientLogging 1.0.22
dotnet add package CerberusClientLogging --version 1.0.22
NuGet\Install-Package CerberusClientLogging -Version 1.0.22
<PackageReference Include="CerberusClientLogging" Version="1.0.22" />
paket add CerberusClientLogging --version 1.0.22
#r "nuget: CerberusClientLogging, 1.0.22"
// Install CerberusClientLogging as a Cake Addin #addin nuget:?package=CerberusClientLogging&version=1.0.22 // Install CerberusClientLogging as a Cake Tool #tool nuget:?package=CerberusClientLogging&version=1.0.22
Cerbi Logging Suite
Cerbi is a modern, scalable logging solution designed for distributed systems and cloud environments. It combines logging, message routing, and metadata-driven insights into a unified, developer-friendly platform. Cerbi helps organizations achieve consistent, resource-efficient logging with built-in support for Business Intelligence (BI) and predictive analytics.
🔑 Key Features
CerbiStream (Logging Library)
- Developer-Friendly API: Simple integration with minimal setup.
- Metadata Capture: Automatically collects essential metadata (OS, framework, timestamp, cloud provider, region, etc.).
- Protocol Support: Compatible with AMQP, HTTPS, REST, and more.
- Queue Systems: Works with Azure Service Bus, RabbitMQ, Kafka, and others.
CerbiLogIQ (Routing Service)
- Dynamic Log Routing: Distributes logs to appropriate destinations, including:
- Relational and NoSQL databases
- Data lakes (Azure Blob Storage, S3, etc.)
- Log aggregators (Splunk, Loggly)
- Metadata Parsing: Enhances routing with intelligent metadata management.
CerbiSense (Analytics & Insights)
- BI and Reporting: Integrated with tools like Power BI for visualization.
- Predictive Analytics: Enables anomaly detection and performance insights.
- Customizable Metadata Pools: Aggregates metadata across systems for better visibility.
🚀 Get Started
Installation
The CerbiStream logging library is available on NuGet:
dotnet add package cerberus-logger-interface
Visit the NuGet Package for details.
📖 Usage
Configuration
Add the following to your appsettings.json
:
{
"Logging": {
"ApplicationName": "MyApp",
"DestinationType": "Azure_Queue",
"LogLevel": "Information",
"ConnectionString": "your_connection_string",
"QueueName": "myapp-logs",
"CloudProvider": "Azure",
"Encryption": {
"IsEnabled": true,
"Algorithm": "AES-256"
},
"HostType": "Cloud",
"Region": "East US"
}
}
Minimal Logging
await logger.SendApplicationLogAsync(
applicationMessage: "An error occurred.",
currentMethod: nameof(MyMethod),
logLevel: LogLevel.Error,
log: "Detailed log message",
hostType: HostType.Cloud,
timestamp: DateTime.UtcNow,
encryption: new Encryption { IsEnabled = true, Algorithm = "AES-256" },
operatingSystem: RuntimeInformation.OSDescription,
frameworkVersion: RuntimeInformation.FrameworkDescription
);
Full Logging
await logger.SendApplicationLogAsync(
applicationMessage: "Transaction completed.",
currentMethod: nameof(MyMethod),
logLevel: LogLevel.Information,
log: "Transaction details",
hostType: HostType.Cloud,
timestamp: DateTime.UtcNow,
encryption: new Encryption { IsEnabled = true, Algorithm = "AES-256" },
operatingSystem: RuntimeInformation.OSDescription,
frameworkVersion: RuntimeInformation.FrameworkDescription,
applicationName: "MyApp",
platform: "Web",
applicationVersion: "1.0.0",
cloudProvider: CloudProvider.Azure,
region: new Region { RegionName: "East US", Country: "USA" },
traceId: Guid.NewGuid().ToString(),
destination: new TransactionDestination { Name = "Database", Type = "SQL" },
destinationType: TransactionDestinationTypes.Database
);
🏗️ Architecture Overview
CerbiStream provides a seamless logging and routing experience. CerbiLogIQ ensures that logs are routed intelligently, while CerbiSense provides analytics and predictions.
Architecture Diagram
- CerbiStream: Captures and encrypts logs programmatically.
- CerbiLogIQ: Manages and routes logs to downstream systems.
- CerbiSense: Aggregates metadata for BI and predictive insights.
🛠️ Supported Platforms and Protocols
- Languages: C#, Java, Python, Go, Node.js, Ruby
- Queue Systems: RabbitMQ, Azure Service Bus, Kafka
- Log Destinations: SQL/NoSQL databases, Splunk, Loggly, and more
- Protocols: AMQP, HTTPS, REST
📝 License
Cerbi is licensed under the MIT License. See LICENSE
for more information.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. 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. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
-
net8.0
- Azure.Core (>= 1.44.1)
- Azure.Messaging.ServiceBus (>= 7.18.2)
- Azure.Storage.Common (>= 12.22.0)
- Azure.Storage.Queues (>= 12.21.0)
- cerberus-logger-interface (>= 1.0.26)
- Microsoft.Extensions.Configuration.Abstractions (>= 9.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.0)
- Moq (>= 4.20.72)
- NETCore.RabbitMQKit (>= 2.0.0)
- Newtonsoft.Json (>= 13.0.3)
- NUnit (>= 4.3.2)
- RabbitMQ.Client (>= 7.0.0)
- System.Configuration.ConfigurationManager (>= 9.0.0)
- System.Data.SqlClient (>= 4.9.0)
- System.Diagnostics.EventLog (>= 9.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.