private final static String MATCH_LEVEL = "ERROR|error|INFO|info|DEBUG|debug|WARN|warn|FATAL|fatal";
private static Logger logger = Logger.getLogger("com.huawei.mediax");
public Integer32 getHwLogLevel() throws SnmpException
{
Level Level = logger.getLevel();
if (Level.isGreaterOrEqual(Priority.DEBUG))
{
this.hwLogLevel = new Integer32(1);
}
if (Level.isGreaterOrEqual(Priority.INFO))
{
this.hwLogLevel = new Integer32(2);
}
if (Level.isGreaterOrEqual(Priority.WARN))
{
this.hwLogLevel = new Integer32(3);
}
if (Level.isGreaterOrEqual(Priority.ERROR))
{
this.hwLogLevel = new Integer32(4);
}
if (Level.isGreaterOrEqual(Priority.FATAL))
{
this.hwLogLevel = new Integer32(5);
}
return hwLogLevel;
}
public void modifyLogfile(final Integer32 newValue)
{
//读取配置并组装日志文件log4j.xml的文件路径
String filePath = "";
//mdxdb模块存放log4j.xml文件目录与其他目录不一致
if (ConfigKit.getMoudleType().equals(MDXDBTYPE))
{
filePath = System.getenv("SNMP_HOME") + File.separatorChar + "conf"
+ File.separatorChar + "log4j.xml";
}
else
{
filePath = System.getenv("SNMP_HOME") + File.separatorChar + "conf"
+ File.separatorChar + "server" + File.separatorChar
+ "log4j.xml";
}
if (logger.isDebugEnabled())
{
logger.debug("The log4j.xml file path is <" + filePath + ">");
}
StringBuilder builder = new StringBuilder();
try
{
//读写文件
File logfile = new File(filePath);
BufferedReader reader = new BufferedReader(new FileReader(logfile));
if (reader.ready())
{
String tmp = null;
while (null != (tmp = reader.readLine()))
{
builder.append(tmp).append("\r\n");
if (-1 != tmp.indexOf("com.huawei.mediax"))
{
String loglevel = reader.readLine();
//把匹配MATCH_LEVEL中的字符串,修改为传入的字符串
builder.append(
loglevel.replaceAll(MATCH_LEVEL,
getLogLevelStr(newValue.getValue())))
.append("\r\n");
}
}
BufferedWriter write = new BufferedWriter(new FileWriter(
logfile));
write.write(builder.toString());
write.close();
reader.close();
if (logger.isDebugEnabled())
{
logger.debug("Changed the content :\r\n" + builder);
}
}
else
{
logger.error("reader is not ready");
}
}
catch (FileNotFoundException e)
{
logger.error("Reade log4j file error", e);
}
catch (IOException e)
{
logger.error("Writer log4j file error", e);
}
}
public void setHwLogLevel(final Integer32 newValue) throws SnmpException
{
this.hwLogLevel = newValue;
logger.setLevel(getLogLevel(newValue.getValue()));
if (logger.isDebugEnabled())
{
logger.debug("set Log Level =" + getLogLevel(newValue.getValue()));
}
//修改日志文件
modifyLogfile(newValue);
if (logger.isDebugEnabled())
{
logger.debug("set Log Level success");
}
}
}
分享到:
相关推荐
射频调试方法与常见问题解决办法 本课件涵盖了射频调试方法和常见问题解决办法两大部分。第一部分介绍了射频调试方法,包括粗略调试方法和细致调试方法。粗略调试方法包括目测法、手触摸法、铅笔或镊子一个一个拆掉...
这是一个非常简单的解决方法。下载 MSWGA.EXE 文件(中文名称:微软正版认证离线包),双击运行即可。系统可能会问你“现在安装的版本低,是否替换”,选择是就行了。 方法五:修复系统 如果以上方法都无法解决...
Oracle 常见故障解决方法 Oracle 是一种关系型数据库管理系统,广泛应用于各种行业和领域。然而,在使用 Oracle 过程中,经常会遇到各种故障和问题,影响系统的稳定性和性能。下面总结了一些常见的 Oracle 故障...
Wincc7.2从一台计算机移植到另一台计算机,打开变量记录时提示错误的解决方法
最后,如果以上方法都无法解决问题,可能需要查阅VirtualBox和Genymotion的官方文档,或者在相关的用户论坛寻求帮助,那里可能有更具体和针对性的解决方案。记住,良好的问题记录和描述将有助于他人更有效地为你提供...
解决ajax跨域问题有多种方法,以下是几种常见的解决方案: 1. 使用中间层过渡的方式 这种方法是通过在ajax请求和不同域的服务器之间加一层中间层来解决跨域问题。中间层可以是php、jsp、c++等任何具备网络通讯功能...
Win7 电脑看视频出现绿屏解决方法总结 Win7 电脑看视频出现绿屏是很多用户经常遇到的问题,这个问题不仅会影响用户的观看体验,还会使用户感到非常烦恼。那么, Win7 电脑看视频出现绿屏怎么办呢?下面,我们将为...
为了解决这个问题,Simulink设计了状态端口,其输出与输出端口相同,但在计算时序上有微小差异,且状态端口与初始值输入端和复位输入端都不直通。因此,通过使用状态端口引出信号,可以有效地拆解代数环。 代数环的...
### MSN安装不了的解决方法之一 在遇到MSN无法正常安装的问题时,用户往往会感到非常困扰。本篇文章将详细介绍一种有效的解决方法,并深入探讨其中涉及的技术细节,帮助用户更好地理解和解决问题。 #### 问题概述 ...
本文将深入探讨无驱摄像头黑屏问题的可能原因,并提供有效的解决方法。 首先,我们需要理解摄像头黑屏可能是由多种因素导致的: 1. **硬件问题**:摄像头本身可能存在故障,如传感器损坏、连接线松动或电源供应...
算法合集之《浅析竞赛中一类数学期望问题的解决方法》
"WORD文档此文件正由另一应用程序或用户使用的解决办法" 在 Microsoft Office Word 中,用户可能会遇到一个问题,即当打开多个 Word 文档时,关闭其中一个文档时,系统会弹出对话框,提示“此文件正由另一应用程序...
总的来说,利用遗传算法解决一维装箱问题是一种有效的方法,因为它能够处理非线性和组合优化问题,而MATLAB则提供了方便的工具和环境来实现这一过程。通过对算法的参数调整和优化,可以得到更高效、更接近实际应用的...
ACPI:System State [S0 S3 S4 S5] (S3) 错误是 MAC 操作系统中的一种常见错误,解决方法是换内核 kernel 试试看。常见于 Asus 主板的 G31、G41 集显无解错误,须外插一块独显后,才可进行安装。 五、 still waiting...
标题“解决设备有感叹号”通常指的是在操作系统中,设备图标前出现的黄色或红色感叹号,这代表设备驱动程序存在问题或者设备未被正确识别。这种情况可能是由于驱动程序丢失、损坏,或者是系统与硬件之间的兼容性问题...
教程地址:http://blog.csdn.net/oushangfeng123/article/details/48040525 ToolBar、TabLayout加角标无从下手?且看一看我的解决方法!
JSP 中文显示问号问题解决方法 JSP(Java Server Pages)是一种基于Java技术的服务器端脚本语言,广泛应用于Web开发中。但是,在JSP中输出中文时,经常会出现问号问题,即中文字符被显示为问号。今天,我们将探讨...
**解决方法**: - 使用方杆插入前把手孔内,旋转带动方刚帽上的箭头指向把手尾端。请注意在锁未正确安装于门上时,尽量避免尝试使用机械钥匙。 ##### 单独安装锁芯的型号 **故障原因**: - 锁芯安装位置不当; - ...
"丰田汽车培训教材-丰田问题解决方法(TBP)" ...丰田问题解决法是丰田汽车的一种问题解决方法,旨在提高工作效率、降低成本、提高客户满意度等。它包括基本意识、步骤、实施方法、案例等多个方面的内容。