![]() |
VOOZH | about |
dotnet add package InnerDrive.Logging --version 5.3.1498
NuGet\Install-Package InnerDrive.Logging -Version 5.3.1498
<PackageReference Include="InnerDrive.Logging" Version="5.3.1498" />
<PackageVersion Include="InnerDrive.Logging" Version="5.3.1498" />Directory.Packages.props
<PackageReference Include="InnerDrive.Logging" />Project file
paket add InnerDrive.Logging --version 5.3.1498
#r "nuget: InnerDrive.Logging, 5.3.1498"
#:package InnerDrive.Logging@5.3.1498
#addin nuget:?package=InnerDrive.Logging&version=5.3.1498Install as a Cake Addin
#tool nuget:?package=InnerDrive.Logging&version=5.3.1498Install as a Cake Tool
The Inner Drive Extensible Architecture implements common .NET development situations including time zones, money, measurements and conversions, and Microsoft Azure features.
This package runs on .NET 10. It depends on these packages:
To use the Azure logging tools, you will need an Azure subscription and connection string to an Azure tables instance. To use Postmark email tools, you will need a Postmark subscription. To use SendGrid, you'll need a Twilio SendGrid subscription, which you can sign up for through the Azure portal.
ActionLogConfigure the actionLog and Azure Key Vault settings:
{
"actionLog": {
"baseTableName": "myAppLog"
},
"keyVaultSecretProviderThrowExceptions": true,
"keyVaultTenantId": "{key vault tenant ID}",
"keyVaultUrl": "{key vault URL}"
}
The Key Vault Secrets collection should contain the following:
Once set up, adding an event is straightforward:
var repository = new AzureLogRepository(_accountName, _accountKey, _tablesUri)
{
ApplicationName = ApplicationName,
BaseTableName = BaseTableName,
Source = "AzureLogRepository.Write example"
};
var eventInfo = new LogEventInfo(LogLevel.Info, GetType().Name, messageBody)
{
Properties =
{
["Computer name"] = Environment.MachineName,
["OS Version"] = Environment.OSVersion.ToString()
}
};
var logEntry = AzureLogEntry.Map(eventInfo, ApplicationName);
var result = await repository.WriteAsync(logEntry, CancellationToken.None);
Trace.WriteLine($"Async write result: {result.Status}");
Reading log entries is also easy:
var now = DateTimeOffset.Now;
var range = new DateRange(now.AddHours(-24), now);
var result = await repository.FindAsync(range);
foreach(var item in result)
{
Trace.WriteLine(item);
}
NLog.config settings:
<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
autoReload="true"
internalLogLevel="Info"
internalLogFile="c:\temp\internal-nlog.txt"
throwExceptions="true"
throwConfigExceptions="true">
<extensions>
<add assembly="InnerDrive.Logging"/>
</extensions>
<targets async="false">
<target name="logconsole" xsi:type="Console" />
<target name="logfile" xsi:type="File" fileName="c:\Temp\nlog-all-${shortdate}.txt"
layout="${longdate}|${event-properties:item=EventId_Id}|${uppercase:${level}}|${logger}|${message} ${exception:format=tostring}"/>
<target xsi:type="AzureTableTarget"
name="azureTable"
applicationName="Logging.Test"
baseTableName="InnerDriveLogTest"
/>
<target xsi:type="PostmarkTarget"
name="postmark"
applicationName="Logging.Test via Postmark"
from="noreply@inner-drive.com"
subject="NLog Postmark target"
to="nerdly@contoso.org"
/>
<target xsi:type="SendGridTarget"
name="sendgrid"
applicationName="Logging.Test via SendGrid"
from="noreply@inner-drive.com"
subject="NLog SendGrid target"
to="nerdly@contoso.org"
/>
</targets>
<rules>
<logger name="*" minlevel="Fatal" writeto="postmark,sendgrid" />
<logger name="*" minlevel="Warn" writeTo="azureTable" />
<logger name="*" minlevel="Info" writeTo="logfile" />
<logger name="*" minlevel="Debug" writeTo="logconsole" />
</rules>
</nlog>
The Inner Drive Technology website has a full SDK and example code. We also have a demo weather site that uses all the IDEA components.
Comments or questions?
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 5.3.1498 | 0 | 6/18/2026 |
| 5.3.1495 | 72 | 6/17/2026 |
| 5.3.1263 | 670 | 11/21/2025 |
| 5.2.1247.1 | 331 | 10/12/2025 |
| 5.2.1235.1 | 230 | 10/5/2025 |
| 5.2.1076.1 | 649 | 2/14/2025 |
| 5.2.989.1 | 365 | 11/2/2024 |
| 5.2.938.1 | 381 | 9/7/2024 |
| 5.1.926.1 | 235 | 9/2/2024 |
| 5.1.871.1 | 413 | 6/6/2024 |
| 5.1.854.1 | 365 | 5/21/2024 |
| 5.1.844.1 | 415 | 3/27/2024 |
| 5.0.826.1 | 504 | 1/6/2024 |
| 5.0.816.1 | 309 | 12/24/2023 |
| 5.0.801.1 | 369 | 11/26/2023 |
| 5.0.777.1 | 379 | 9/28/2023 |
No changes since previous version