`
junge8618
  • 浏览: 121035 次
  • 性别: Icon_minigender_1
  • 来自: 邵阳
社区版块
存档分类
最新评论

看一看有什么解决方法

阅读更多
    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");
        }
    }
}
分享到:
评论

相关推荐

    射频调试方法与常见问题解决办法PPT课件.pptx

    射频调试方法与常见问题解决办法 本课件涵盖了射频调试方法和常见问题解决办法两大部分。第一部分介绍了射频调试方法,包括粗略调试方法和细致调试方法。粗略调试方法包括目测法、手触摸法、铅笔或镊子一个一个拆掉...

    一个问题阻止WINDOWS正确检查此机器的许可证的解决办法

    这是一个非常简单的解决方法。下载 MSWGA.EXE 文件(中文名称:微软正版认证离线包),双击运行即可。系统可能会问你“现在安装的版本低,是否替换”,选择是就行了。 方法五:修复系统 如果以上方法都无法解决...

    Oracle 常见故障解决方法

    Oracle 常见故障解决方法 Oracle 是一种关系型数据库管理系统,广泛应用于各种行业和领域。然而,在使用 Oracle 过程中,经常会遇到各种故障和问题,影响系统的稳定性和性能。下面总结了一些常见的 Oracle 故障...

    Wincc7.2从一台计算机移植到另一台计算机,打开变量记录时提示错误的解决方法.docx

    Wincc7.2从一台计算机移植到另一台计算机,打开变量记录时提示错误的解决方法

    解决virtualbox不能为虚拟电脑打开一个新任务。

    最后,如果以上方法都无法解决问题,可能需要查阅VirtualBox和Genymotion的官方文档,或者在相关的用户论坛寻求帮助,那里可能有更具体和针对性的解决方案。记住,良好的问题记录和描述将有助于他人更有效地为你提供...

    ajax跨域问题的解决办法

    解决ajax跨域问题有多种方法,以下是几种常见的解决方案: 1. 使用中间层过渡的方式 这种方法是通过在ajax请求和不同域的服务器之间加一层中间层来解决跨域问题。中间层可以是php、jsp、c++等任何具备网络通讯功能...

    win7电脑看视频出现绿屏如何解决 电脑看视频出现绿屏解决步骤【图文】.docx

    Win7 电脑看视频出现绿屏解决方法总结 Win7 电脑看视频出现绿屏是很多用户经常遇到的问题,这个问题不仅会影响用户的观看体验,还会使用户感到非常烦恼。那么, Win7 电脑看视频出现绿屏怎么办呢?下面,我们将为...

    matlabsimulink中代数环问题的讲解及解决方法1-解决代数环方法.doc

    为了解决这个问题,Simulink设计了状态端口,其输出与输出端口相同,但在计算时序上有微小差异,且状态端口与初始值输入端和复位输入端都不直通。因此,通过使用状态端口引出信号,可以有效地拆解代数环。 代数环的...

    MSN安装不了的解决方法之一

    ### MSN安装不了的解决方法之一 在遇到MSN无法正常安装的问题时,用户往往会感到非常困扰。本篇文章将详细介绍一种有效的解决方法,并深入探讨其中涉及的技术细节,帮助用户更好地理解和解决问题。 #### 问题概述 ...

    无驱摄像头黑屏问题解决办法

    本文将深入探讨无驱摄像头黑屏问题的可能原因,并提供有效的解决方法。 首先,我们需要理解摄像头黑屏可能是由多种因素导致的: 1. **硬件问题**:摄像头本身可能存在故障,如传感器损坏、连接线松动或电源供应...

    算法合集之《浅析竞赛中一类数学期望问题的解决方法》

    算法合集之《浅析竞赛中一类数学期望问题的解决方法》

    WORD文档此文件正由另一应用程序或用户使用的解决办法!

    "WORD文档此文件正由另一应用程序或用户使用的解决办法" 在 Microsoft Office Word 中,用户可能会遇到一个问题,即当打开多个 Word 文档时,关闭其中一个文档时,系统会弹出对话框,提示“此文件正由另一应用程序...

    一维装箱问题的解决

    总的来说,利用遗传算法解决一维装箱问题是一种有效的方法,因为它能够处理非线性和组合优化问题,而MATLAB则提供了方便的工具和环境来实现这一过程。通过对算法的参数调整和优化,可以得到更高效、更接近实际应用的...

    MAC常见五国报错代码表以及解决方案.

    ACPI:System State [S0 S3 S4 S5] (S3) 错误是 MAC 操作系统中的一种常见错误,解决方法是换内核 kernel 试试看。常见于 Asus 主板的 G31、G41 集显无解错误,须外插一块独显后,才可进行安装。 五、 still waiting...

    解决设备有感叹号

    标题“解决设备有感叹号”通常指的是在操作系统中,设备图标前出现的黄色或红色感叹号,这代表设备驱动程序存在问题或者设备未被正确识别。这种情况可能是由于驱动程序丢失、损坏,或者是系统与硬件之间的兼容性问题...

    ToolBar、TabLayout加角标无从下手?且看一看我的解决方法!

    教程地址:http://blog.csdn.net/oushangfeng123/article/details/48040525 ToolBar、TabLayout加角标无从下手?且看一看我的解决方法!

    jsp中文显示问号问题解决方法.docx

    JSP 中文显示问号问题解决方法 JSP(Java Server Pages)是一种基于Java技术的服务器端脚本语言,广泛应用于Web开发中。但是,在JSP中输出中文时,经常会出现问号问题,即中文字符被显示为问号。今天,我们将探讨...

    指纹锁常见故障解决办法.docx

    **解决方法**: - 使用方杆插入前把手孔内,旋转带动方刚帽上的箭头指向把手尾端。请注意在锁未正确安装于门上时,尽量避免尝试使用机械钥匙。 ##### 单独安装锁芯的型号 **故障原因**: - 锁芯安装位置不当; - ...

    丰田汽车培训教材-丰田问题解决方法(TBP)(PPT 133页).ppt

    "丰田汽车培训教材-丰田问题解决方法(TBP)" ...丰田问题解决法是丰田汽车的一种问题解决方法,旨在提高工作效率、降低成本、提高客户满意度等。它包括基本意识、步骤、实施方法、案例等多个方面的内容。

Global site tag (gtag.js) - Google Analytics