Soenneker.Utils.LogPath
11.0.189
Prefix Reserved
dotnet add package Soenneker.Utils.LogPath --version 11.0.189
NuGet\Install-Package Soenneker.Utils.LogPath -Version 11.0.189
<PackageReference Include="Soenneker.Utils.LogPath" Version="11.0.189" />
<PackageVersion Include="Soenneker.Utils.LogPath" Version="11.0.189" />
<PackageReference Include="Soenneker.Utils.LogPath" />
paket add Soenneker.Utils.LogPath --version 11.0.189
#r "nuget: Soenneker.Utils.LogPath, 11.0.189"
#:package Soenneker.Utils.LogPath@11.0.189
#addin nuget:?package=Soenneker.Utils.LogPath&version=11.0.189
#tool nuget:?package=Soenneker.Utils.LogPath&version=11.0.189
Soenneker.Utils.LogPath
Chooses a writable log-file path for explicit, Azure App Service, GitHub Actions, container, and local application environments.
Installation
dotnet add package Soenneker.Utils.LogPath
Quick start
using Soenneker.Utils.LogPath;
Call the static LogPathUtil methods directly; no dependency-injection registration is required.
Usage
string logPath = await LogPathUtil.Get("application-.log", cancellationToken);
Log.Logger = new LoggerConfiguration()
.WriteTo.File(logPath, rollingInterval: RollingInterval.Day)
.CreateLogger();
Get returns a full path for the supplied file name. It does not create or open the log file.
Pass a file name rather than a rooted path or a path containing directory traversal segments.
Candidates are evaluated in this order:
LOG_PATH/<fileName>when theLOG_PATHenvironment variable is set.- Azure App Service's persistent
LogFilesdirectory. <GITHUB_WORKSPACE>/logsin GitHub Actions./var/log/appin another detected container.<AppContext.BaseDirectory>/logsas the fallback.
The explicit LOG_PATH override is returned as configured; the caller is responsible for making
sure that directory exists and is writable. For the environment-derived candidates, the utility
creates the directory and falls through when creation is denied or fails with an I/O error. The
final application-directory fallback can still throw if that location cannot be created.
Container detection is the asynchronous part of the operation and observes the cancellation token. Resolving a path does not guarantee a later file open will succeed because permissions or the filesystem can change afterward.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net11.0 is compatible. |
-
net11.0
- Soenneker.Utils.Runtime (>= 11.0.1161)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Soenneker.Utils.LogPath:
| Package | Downloads |
|---|---|
|
Soenneker.Extensions.LoggerConfiguration
A set of useful Serilog LoggerConfiguration extension methods |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 11.0.189 | 0 | 11/3/2026 |
| 11.0.188 | 0 | 11/3/2026 |
| 11.0.187 | 0 | 11/3/2026 |
| 11.0.186 | 0 | 11/2/2026 |
| 11.0.185 | 10,708 | 10/26/2026 |
| 11.0.184 | 225 | 10/26/2026 |
| 11.0.183 | 159 | 10/26/2026 |
| 11.0.182 | 198 | 10/26/2026 |
| 11.0.181 | 305 | 10/26/2026 |
| 4.0.180 | 12,837 | 10/15/2026 |
| 4.0.179 | 91 | 10/15/2026 |
| 4.0.178 | 88 | 10/14/2026 |
| 4.0.176 | 2,205 | 10/14/2026 |
| 4.0.175 | 691 | 10/14/2026 |
| 4.0.169 | 1,053 | 10/13/2026 |
| 4.0.168 | 1,534 | 10/12/2026 |
| 4.0.167 | 407 | 10/12/2026 |
| 4.0.166 | 6,867 | 10/12/2026 |
| 4.0.165 | 99 | 10/11/2026 |
| 4.0.164 | 14,833 | 9/30/2026 |
Updated Soenneker.Utils.Runtime to 11.0.1161