如果扫描日志无法获取足够的信息,可以通过编程方式监控应用程序。例如,可以通过电子邮件发送某类消息。
您可以编写方法,用于接收代表输出到日志中每条错误或警告消息的类。这样可以帮助您监控和审计 MobiLink 服务器。
以下代码为所有错误消息安装监听器,并将信息输出到 StreamWriter。
class TestLogListener { public TestLogListener(StreamWriter output_file) { _output_file = output_file; } public void errCallback(ServerContext sc, LogMessage lm) { string type; string user; if (lm.Type == LogMessage.MessageType.ERROR) { type = "ERROR"; } else if (lm.Type==LogMessage.MessageType.WARNING) { type = "WARNING"; } else { type = "INVALID TYPE!!"; } if (lm.User == null) { user = "null"; } else { user = lm.User; } _output_file.WriteLine("Caught msg type=" + type + " user=" + user + " text=" + lm.Text); _output_file.Flush(); } StreamWriter _output_file; } |
以下代码可注册 TestLogListener。从有权访问 ServerContext 的位置(例如类构造函数或同步脚本)调用此代码。
// ServerContext serv_context; TestLogListener etll = new TestLogListener(log_listener_file); serv_context.ErrorListener += new LogCallback(etll.errCallback); |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |