此文档详细记录了XXX局人资系统在2013年12月2日15:00左右发生的应用访问异常问题,以及整个问题的分析处理全过程。
。。。
2.2 故障表象描述
根据客户描述,营销系统是在2013年11月3日下午12点分左右应用系统登陆出现异常,用正确的用户名密码登陆后,无法正常进入系统页面,一直停留在登陆页面。
2.3 故障处理过程
时间点
过程描述
2013年11月3日
12:00左右
客户访问人资系统时,系统登陆异常。
15:00左右
接到客户反映,前往潮州解决故障。
15:10左右
远程查看故障,经过排除,发现故障是由于数据库主机的根目录写满导致,通知主机与数据库同事进行处理。
15:50左右
主机同事清理根目录,检查数据库连接可以正常使用。
15:56左右
经客户查看系统恢复正常。
此故障涉及系统为人资系统,系统使用较少,并且在一小时内处理完成,故障影响较小。
通过产看weblogic控制台,测试数据库连接失败。判断数据库可能存在问题。
报出如下错误:
通过查看日志发现具体数据库错误如下
####<Dec 2, 2013 3:42:09 PM GMT+08:00> <Info> <JDBC> <rlsrv2> <AdminServer> <[ACTIVE] ExecuteThread: '26' for queue: 'weblogic.kernel.Default (self-tuning)'>
<<WLS Kernel>> <> <> <1385970129509> <BEA-001156> <Stack trace associated with message 001129 follows:
java.sql.SQLException: ORA-00257: archiver error. Connect internal only, until freed.
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:331)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:283)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:278)
at oracle.jdbc.driver.T4CTTIoauthenticate.receiveOsesskey(T4CTTIoauthenticate.java:293)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:357)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:420)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.makeConnection(ConnectionEnvFactory.java:300)
at weblogic.jdbc.common.internal.ConnectionEnvFactory.createResource(ConnectionEnvFactory.java:204)
at weblogic.common.resourcepool.ResourcePoolImpl.makeResources(ResourcePoolImpl.java:1096)
at weblogic.common.resourcepool.ResourcePoolImpl$ResourcePoolMaintanenceTask.timerExpired(ResourcePoolImpl.java:2018)
at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:265)
at weblogic.work.ServerWorkManagerImpl$WorkAdapterImpl.run(ServerWorkManagerImpl.java:518)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
>
此错误是由于archive log 日志已满引起,需要数据库同事进行处理。
故障主要由于数据库archive log 日志写满引起。
清理数据库主机磁盘空间。
系统登陆异常,通常是由于由于相关资源耗尽引起的,以硬件资(内存,cpu)源耗尽的的情况较为常见,在本例中,该异常主要是由数据库archive log 日志写满引起,导致数据库连接不可用引起的。
在中间的使用过程中,需要加强对数据库、主机等相关部分的监控,预防此类故障再次出现。
该贴被funny编辑于2014-2-28 11:43:22