搬运自OpenMod官网,经过翻译,可能有些不足,欢迎指正!原文链接
日志
OpenMod使用Microsoft.Extensions.Logging包用于记录摘要和Serilog作为它的日志实现。
有关更多信息,请参阅上ILogger接口文档docs.microsoft.com。
您可以通过注入logger实例来获取它:
public class MyPlugin : OpenModUniversalPlugin
{
private readonly ILogger<MyPlugin> m_Logger;
public MyPlugin(ILogger<MyPlugin> logger, IServiceProvider serviceProvider) : base(serviceProvider)
{
m_Logger = logger;
m_Logger.LogInformation("Hello world!");
}
}
通用部分(ILogger<T>中的T)必须是使用记录器的类。
实现自己的记录器
要实现自己的记录器,必须实现ILoggerFactory和ILogger<>服务。
之后,必须通过ServiceConfigurator注册它们:
public class ServiceConfigurator : IServiceConfigurator
{
public void ConfigureServices(IOpenModStartupContext openModStartupContext, IServiceCollection serviceCollection)
{
serviceCollection.AddSingleton<ILoggerFactory, MyLoggerFactory>();
serviceCollection.AddTransient(typeof(ILogger<>), typeof(MyLogger<>)(); // 必须是临时的
}
}
自定义记录器在OpenMod构建IoC容器之后使用。之前的启动消息不会显示在自定义记录器上。
游戏交流区
攻略区
问答区
Mod发布区
Mod地图发布区
Mod技术区
汉化区
角色扮演交流区
技术交流
开服教程区
服务器宣传区
游戏更新公告区
MiaBot框架
圆心云开服面板
话题中心
社区公告
认证申请
工具/软件区
RGB颜色对照表
签到中心
幸运抽奖
排行榜
友情链接
小黑屋
周边商城


