Localize log messages

This commit is contained in:
hishamco 2020-11-27 21:48:52 +03:00
parent f6fafbfcfa
commit 2ea0b7199b

View File

@ -1,15 +1,14 @@
using Oqtane.Shared;
using System;
using Oqtane.Models;
using System.Text.Json;
using Microsoft.Extensions.Configuration;
using Microsoft.AspNetCore.Http;
using System.Collections.Generic;
using System.Text.Json;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.Localization;
using Oqtane.Enums;
using Oqtane.Models;
using Oqtane.Repository;
using Oqtane.Security;
// ReSharper disable StringIndexOfIsCultureSpecific.2
// ReSharper disable StringIndexOfIsCultureSpecific.1
using Oqtane.Shared;
namespace Oqtane.Infrastructure
{
@ -20,14 +19,16 @@ namespace Oqtane.Infrastructure
private readonly IConfigurationRoot _config;
private readonly IUserPermissions _userPermissions;
private readonly IHttpContextAccessor _accessor;
private readonly IStringLocalizer _localizer;
public LogManager(ILogRepository logs, ITenantResolver tenantResolver, IConfigurationRoot config, IUserPermissions userPermissions, IHttpContextAccessor accessor)
public LogManager(ILogRepository logs, ITenantResolver tenantResolver, IConfigurationRoot config, IUserPermissions userPermissions, IHttpContextAccessor accessor, IStringLocalizer<LogManager> localizer)
{
_logs = logs;
_tenantResolver = tenantResolver;
_config = config;
_userPermissions = userPermissions;
_accessor = accessor;
_localizer = localizer;
}
public void Log(LogLevel level, object @class, LogFunction function, string message, params object[] args)
@ -123,6 +124,7 @@ namespace Oqtane.Infrastructure
log.LogDate = DateTime.UtcNow;
log.Server = Environment.MachineName;
log.MessageTemplate = log.Message;
log.Message = _localizer[log.Message];
log = ProcessStructuredLog(log);
try
{