using System; using System.Text.Json.Serialization; namespace CoreAgent.Domain.Models.Protocol; /// /// 网络层日志集合 /// 用于统一管理不同网络层的日志配置 /// public class NetworkLayerLogs { /// /// IMS层日志配置 /// public ImsLayerLog ImsLog { get; set; } /// /// RAN层日志配置 /// public RanLayerLog RanLog { get; set; } /// /// 初始化所有网络层的日志级别 /// /// 是否为非独立组网模式(NSA模式) public void InitializeAllLogLevels(bool isNonStandaloneMode = false) { ImsLog = new ImsLayerLog(); RanLog = new RanLayerLog(); ImsLog.InitializeLogLevels(); RanLog.InitializeLogLevels(isNonStandaloneMode); } /// /// 更新指定网络层和指定层的日志级别 /// /// 网络类型("IMS" 或 "RAN") /// 层名称 /// 日志级别 /// 是否更新成功 public bool UpdateLogLevel(string networkType, string layerName, LogLevel logLevel) { if (string.IsNullOrEmpty(networkType) || string.IsNullOrEmpty(layerName)) return false; return networkType.ToUpper() switch { "IMS" => ImsLog?.UpdateLogLevel(layerName, logLevel) ?? false, "RAN" => RanLog?.UpdateLogLevel(layerName, logLevel) ?? false, _ => false }; } }