1 interface inheriting from ILogger
Microsoft.Build.Framework (1)
INodeLogger.cs (1)
20public interface INodeLogger : ILogger
10 implementations of ILogger
dotnet (1)
LoggerUtility.cs (1)
231internal class FacadeLogger(PersistentDispatcher dispatcher) : ILogger
Microsoft.Build (5)
BackEnd\BuildManager\BuildManager.cs (1)
3656internal class NullLogger : ILogger
BuildCheck\Infrastructure\BuildCheckConnectorLogger.cs (1)
16internal sealed class BuildCheckConnectorLogger : ILogger
Logging\BinaryLogger\BinaryLogger.cs (1)
51public sealed class BinaryLogger : ILogger, IFileOutputLogger
Logging\ProfilerLogger.cs (1)
23public sealed class ProfilerLogger : ILogger
TelemetryInfra\InternalTelemetryConsumingLogger.cs (1)
11internal sealed class InternalTelemetryConsumingLogger : ILogger
Microsoft.Build.Utilities.Core (1)
Logger.cs (1)
15public abstract class Logger : ILogger
Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost (1)
MSBuild\Logging\MSBuildDiagnosticLogger.cs (1)
12internal sealed class MSBuildDiagnosticLogger : MSB.Framework.ILogger
Microsoft.DotNet.ArcadeLogging (1)
PipelinesLogger.cs (1)
16public sealed class PipelinesLogger : ILogger
NuGet.Build.Tasks.Console (1)
ConsoleLoggingQueue.cs (1)
28internal class ConsoleLoggingQueue : LoggingQueue<ConsoleOutLogItem>, IBuildEngine, ILogger
163 references to ILogger
dotnet (8)
Commands\Run\CommonRunHelpers.cs (1)
50public static Microsoft.Build.Framework.ILogger GetConsoleLogger(MSBuildArgs args) =>
Commands\Run\RunCommand.cs (2)
620static ProjectInstance EvaluateProject(string? projectFilePath, Func<ProjectCollection, ProjectInstance>? projectFactory, MSBuildArgs msbuildArgs, ILogger? binaryLogger) 703List<ILogger> loggersForBuild = [];
Commands\Run\RunCommandSelector.cs (1)
607private IEnumerable<ILogger> GetLoggers()
Commands\Run\VirtualProjectBuildingCommand.cs (4)
179var consoleLogger = NoConsoleLogger 287ReadOnlySpan<ILogger> binaryLoggers = binaryLogger is null ? [] : [binaryLogger.Value]; 288ReadOnlySpan<ILogger> consoleLoggers = consoleLogger is null ? [] : [consoleLogger]; 289IEnumerable<ILogger> loggers = [.. binaryLoggers, .. consoleLoggers];
dotnet-format (1)
Workspaces\MSBuildWorkspaceLoader.cs (1)
39Build.Framework.ILogger? binlog = null;
Microsoft.Build (93)
BackEnd\BuildManager\BuildManager.cs (5)
789IEnumerable<ILogger> AppendDebuggingLoggers(IEnumerable<ILogger> loggers) 3249IEnumerable<ILogger>? loggers, 3292ILogger buildCheckLogger = 3328foreach (ILogger logger in loggers)
BackEnd\BuildManager\BuildParameters.cs (4)
153private IEnumerable<ILogger> _loggers; 295_loggers = other._loggers != null ? new List<ILogger>(other._loggers) : null; 537public IEnumerable<ILogger> Loggers 545foreach (ILogger logger in value)
BackEnd\Components\Logging\ForwardingLoggerRecord.cs (2)
19public ForwardingLoggerRecord(ILogger centralLogger, LoggerDescription forwardingLoggerDescription) 31public ILogger CentralLogger
BackEnd\Components\Logging\ILoggingService.cs (3)
112ICollection<ILogger> Loggers 333bool RegisterDistributedLogger(ILogger centralLogger, LoggerDescription forwardingLogger); 340bool RegisterLogger(ILogger logger);
BackEnd\Components\Logging\LoggingService.cs (17)
136private List<ILogger> _loggers; 314_loggers = new List<ILogger>(); 509public ICollection<ILogger> Loggers => _loggers; 817foreach (ILogger logger in _loggers) 944foreach (ILogger logger in _loggers) 970foreach (ILogger logger in _loggers) 983_loggers = new List<ILogger>(); 1025public bool RegisterLogger(ILogger logger) 1115public bool RegisterDistributedLogger(ILogger centralLogger, LoggerDescription forwardingLogger) 1138/// supplied to the engine as already-constructed <see cref="ILogger"/> instances are unaffected and 1150private bool RegisterDistributedLoggerCore(ILogger centralLogger, LoggerDescription forwardingLogger, IForwardingLogger localForwardingLogger) 1555private void ShutdownLogger(ILogger logger) 1875private void InitializeLogger(ILogger logger, IEventSource sourceForLogger) 1877ILogger UnwrapLoggerType(ILogger log) 1923private void UpdateMinimumMessageImportance(ILogger logger) 1925var innerLogger = (logger is ReusableLogger reusableLogger) ? reusableLogger.OriginalLogger : logger;
BackEnd\Components\Logging\LoggingServiceLogMethods.cs (4)
414foreach (ILogger logger in Loggers) 416ILogger actualLogger = UnwrapLogger(logger); 456private ILogger UnwrapLogger(ILogger logger)
Definition\Project.cs (11)
1525public bool Build(ILogger logger) 1527var loggers = new List<ILogger>(1) { logger }; 1541public bool Build(IEnumerable<ILogger> loggers) 1557public bool Build(IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers) 1588public bool Build(string target, IEnumerable<ILogger> loggers) 1605public bool Build(string target, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers) 1640public bool Build(string[] targets, IEnumerable<ILogger> loggers) 1658public bool Build(string[] targets, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers) 1664/// See <see cref="Build(string[], IEnumerable&lt;ILogger&gt;, IEnumerable&lt;ForwardingLoggerRecord&gt;)"/>. 1672public bool Build(string[] targets, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers, EvaluationContext evaluationContext) 3380public override bool Build(string[] targets, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers, EvaluationContext evaluationContext)
Definition\ProjectCollection.cs (15)
253public ProjectCollection(IDictionary<string, string> globalProperties, IEnumerable<ILogger> loggers, ToolsetDefinitionLocations toolsetDefinitionLocations) 272public ProjectCollection(IDictionary<string, string> globalProperties, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers, ToolsetDefinitionLocations toolsetDefinitionLocations, int maxNodeCount, bool onlyLogCriticalEvents) 292public ProjectCollection(IDictionary<string, string> globalProperties, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers, ToolsetDefinitionLocations toolsetDefinitionLocations, int maxNodeCount, bool onlyLogCriticalEvents, bool loadProjectsReadOnly) 314/// This constructor disables target output logging, so TerminalLogger and other loggers may not work well. Prefer <see cref="ProjectCollection(IDictionary{string, string}, IEnumerable{ILogger}, IEnumerable{ForwardingLoggerRecord}, ToolsetDefinitionLocations, int, bool, bool, bool, bool, bool)"/> instead to control this behavior. 317public ProjectCollection(IDictionary<string, string> globalProperties, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers, ToolsetDefinitionLocations toolsetDefinitionLocations, int maxNodeCount, bool onlyLogCriticalEvents, bool loadProjectsReadOnly, bool useAsynchronousLogging, bool reuseProjectRootElementCache) : 340public ProjectCollection(IDictionary<string, string> globalProperties, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers, ToolsetDefinitionLocations toolsetDefinitionLocations, int maxNodeCount, bool onlyLogCriticalEvents, bool loadProjectsReadOnly, bool useAsynchronousLogging, bool reuseProjectRootElementCache, bool enableTargetOutputLogging) 363private ProjectCollection(IDictionary<string, string> globalProperties, IEnumerable<ILogger> loggers, ToolsetDefinitionLocations toolsetDefinitionLocations, int maxNodeCount, bool onlyLogCriticalEvents, bool loadProjectsReadOnly, bool useAsynchronousLogging, bool reuseProjectRootElementCache, bool enableTargetOutputLogging) 674public ICollection<ILogger> Loggers 682? (ICollection<ILogger>)ReadOnlyEmptyCollection<ILogger>.Instance 683: new List<ILogger>(_loggingService.Loggers); 1373public void RegisterLogger(ILogger logger) 1388public void RegisterLoggers(IEnumerable<ILogger> loggers) 1395foreach (ILogger logger in loggers) 1781private void RegisterLoggerInternal(ILogger logger)
Instance\ProjectInstance.cs (12)
2252public bool Build(IEnumerable<ILogger> loggers) 2268public bool Build(IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers) 2285public bool Build(string target, IEnumerable<ILogger> loggers) 2303public bool Build(string target, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers) 2322public bool Build(string[] targets, IEnumerable<ILogger> loggers) 2340public bool Build(string[] targets, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers) 2359public bool Build(string[] targets, IEnumerable<ILogger> loggers, out IDictionary<string, TargetResult> targetOutputs) 2377public bool Build(string[] targets, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers, out IDictionary<string, TargetResult> targetOutputs) 2846internal bool Build(string[] targets, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers, ILoggingService loggingService, int maxNodeCount, out IDictionary<string, TargetResult> targetOutputs) 2864parameters.Loggers = (loggers is ICollection<ILogger> loggersCollection) ? loggersCollection : new List<ILogger>(loggers); 2902internal bool Build(string[] targets, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers, ILoggingService loggingService, out IDictionary<string, TargetResult> targetOutputs)
Logging\LoggerDescription.cs (5)
187public ILogger CreateLogger() 197private ILogger CreateLogger(bool forwardingLogger) 199ILogger logger = null; 217LoadedType loggerClass = TypeLoader.Create<ILogger>().Load(_loggerClassName, _loggerAssembly, logWarning: (format, args) => { }); 222logger = (ILogger)Activator.CreateInstance(loggerClass.Type);
Logging\ReusableLogger.cs (8)
13/// The ReusableLogger wraps a <see cref="ILogger"/> and allows it to be used for both design-time and build-time. It internally swaps 14/// between the design-time and build-time event sources in response to <see cref="ILogger.Initialize"/> and <see cref="ILogger.Shutdown"/> events. 15/// Use this if you'd like to provide the same instance of an <see cref="ILogger"/> to both a 17/// directly during a call to one of the <see cref="ILogger"/>-accepting overloads of <see cref="Evaluation.Project.Build()"/>. 29private readonly ILogger _originalLogger; 34internal ILogger OriginalLogger => _originalLogger; 134public ReusableLogger(ILogger? originalLogger)
Logging\TerminalLogger\TerminalLogger.cs (5)
269public static ILogger CreateTerminalOrConsoleLogger(string[]? args = null) 281public static (ILogger, ForwardingLoggerRecord?) CreateTerminalOrConsoleLoggerWithForwarding(string[]? args = null) 288internal static (ILogger, ForwardingLoggerRecord?) CreateTerminalOrConsoleLoggerWithForwarding(string[]? args, bool supportsAnsi, bool outputIsScreen, uint? originalConsoleMode) 297ILogger loggerToReturn; 394static ForwardingLoggerRecord TerminalLoggerForwardingRecord(ILogger loggerToReturn, string? tlpArg, LoggerVerbosity verbosity)
ObjectModelRemoting\DefinitionObjectsLinks\ProjectLink.cs (1)
256public abstract bool Build(string[] targets, IEnumerable<ILogger> loggers, IEnumerable<ForwardingLoggerRecord> remoteLoggers, EvaluationContext evaluationContext);
src\msbuild\src\Shared\TypeLoader.cs (1)
126/// (for example <see cref="ITask"/> or <see cref="ILogger"/>).
Microsoft.Build.Framework (1)
FeatureSwitches.cs (1)
229/// engine as already-constructed <see cref="ILogger"/> instances are unaffected and remain the supported
Microsoft.Build.Utilities.Core (5)
MuxLogger.cs (5)
228public void RegisterLogger(int submissionId, ILogger logger) 350private readonly List<ILogger> _loggers; 473_loggers = new List<ILogger>(); 561internal void AddLogger(ILogger logger) 599foreach (ILogger logger in _loggers)
Microsoft.CodeAnalysis.Workspaces.MSBuild (10)
MSBuild\MSBuildProjectLoader.cs (6)
155/// <param name="msbuildLogger">An optional <see cref="ILogger"/> that will log MSBuild results.</param> 160ILogger? msbuildLogger = null, 214/// <param name="msbuildLogger">An optional <see cref="ILogger"/> that will log msbuild results.</param> 220ILogger? msbuildLogger = null, 252ILogger? msbuildLogger, 317private static bool IsBinaryLogger([NotNullWhen(returnValue: true)] ILogger? logger, out string? fileName)
MSBuild\MSBuildWorkspace.cs (4)
196/// <param name="msbuildLogger">An optional <see cref="ILogger"/> that will log msbuild results.</param> 202ILogger? msbuildLogger, 244/// <param name="msbuildLogger">An optional <see cref="ILogger"/> that will log msbuild results..</param> 250ILogger? msbuildLogger,
Microsoft.CodeAnalysis.Workspaces.MSBuild.BuildHost (3)
Build\ProjectBuildManager.cs (3)
68public ProjectBuildManager(string[] knownCommandLineParserLanguages, Dictionary<string, string> globalProperties, ILogger? msbuildLogger = null, int? maxNodeCount = null) 81? new MSB.Framework.ILogger[] { msbuildLogger } 82: Array.Empty<MSB.Framework.ILogger>();
Microsoft.DotNet.HotReload.Utils.Generator (1)
BaselineProject.cs (1)
43ILogger? logger = null;
Microsoft.DotNet.HotReload.Watch (3)
Build\BuildReporter.cs (3)
10using IMSBuildLogger = Microsoft.Build.Framework.ILogger; 38public sealed class Loggers(ILogger logger, string? binLogPath) : IEnumerable<IMSBuildLogger>, IDisposable 59public IEnumerator<IMSBuildLogger> GetEnumerator()
MSBuild (28)
DistributedLoggerRecord.cs (3)
18internal DistributedLoggerRecord(ILogger centralLogger, LoggerDescription forwardingLoggerDescription) 29internal ILogger CentralLogger 51private ILogger _centralLogger;
src\msbuild\src\Shared\TypeLoader.cs (1)
126/// (for example <see cref="ITask"/> or <see cref="ILogger"/>).
XMake.cs (24)
893ILogger[] loggers = Array.Empty<ILogger>(); 1392private static ExitType OutputBuildInformationInJson(BuildResult result, string[] getProperty, string[] getItem, string[] getTargetResult, ILogger[] loggers, ExitType exitType, TextWriter outputStream) 1396ILogger logger = loggers.FirstOrDefault(l => l is SimpleErrorLogger); 1546ILogger[] loggers, 1628foreach (var logger in loggers) 1659ILogger[] evaluationLoggers = 2386ref ILogger[] loggers, 3266internal static ProfilerLogger ProcessProfileEvaluationSwitch(string[] parameters, List<ILogger> loggers, out bool enableProfiler) 3700private static ILogger[] ProcessLoggingSwitches( 3742var loggers = new List<ILogger>(); 3820private static void ProcessFileLoggers(string[][] groupedFileLoggerParameters, List<DistributedLoggerRecord> distributedLoggerRecords, int cpuCount, List<ILogger> loggers) 3875private static void ProcessBinaryLogger(string[] binaryLoggerParameters, List<ILogger> loggers, ref LoggerVerbosity verbosity) 3927List<ILogger> loggers) 3974List<ILogger> loggers) 4020private static DistributedLoggerRecord CreateForwardingLoggerRecord(ILogger logger, string loggerParameters, LoggerVerbosity defaultVerbosity) 4201private static void ProcessLoggerSwitch(string[] parameters, List<ILogger> loggers, LoggerVerbosity verbosity) 4209if (CreateAndConfigureLogger(loggerDescription, verbosity, unquotedParameter, out ILogger logger)) 4235if (!CreateAndConfigureLogger(centralLoggerDescription, verbosity, unquotedParameter, out ILogger centralLogger)) 4350out ILogger logger) 4416ILogger[] loggers, 4435ILogger centralLogger = distributedLoggerRecord.CentralLogger; 4446foreach (var logger in loggers) 4473foreach (var logger in loggers)
NuGet.Build.Tasks.Console (9)
ConsoleLoggingQueue.cs (8)
27/// This class implements <see cref="ILogger" /> so that it can be passed to MSBuild APIs that require an ILogger to log messages.</remarks> 67/// <inheritdoc cref="ILogger.Parameters" /> 68string ILogger.Parameters { get; set; } 78/// <inheritdoc cref="ILogger.Verbosity" /> 112/// <inheritdoc cref="ILogger.Initialize" /> 113void ILogger.Initialize(IEventSource eventSource) 134/// <inheritdoc cref="ILogger.Shutdown" /> 135void ILogger.Shutdown()
MSBuildStaticGraphRestore.cs (1)
1240var loggers = new List<Microsoft.Build.Framework.ILogger>
NuGet.CommandLine.XPlat (1)
Utility\MSBuildAPIUtility.cs (1)
936newProject.Build(new[] { CollectPackageReferences, CollectCentralPackageVersions }, new List<Microsoft.Build.Framework.ILogger> { }, out var targetOutputs);