问题描述:
如何监测 Lotus Notes? 客户端到服务器的连接,例如查看 Notes 客户端的 IP 地址?
解答:
下面的几种方法都可以得到Notes客户端的 IP 地址。
1. 使用 Activity Logging
从 Domino 6.x 版本开始,您可以设置 Activity Logging。活动分析的结果数据库包含用户会话的信息,IP 地址会列在客户端地址域。要设置 Activity Logging, 请参考管理员帮助。设置完成后,您就可以分析所收集的数据。
启动 Domino 管理员客户端,点击 服务器 - 监测 标签,在右面的面板中,选择 工具 - 分析 - 活动。确保活动类型选择 Domino - Notes - 会话。确认其它的附加选项,然后点击“确定”。然后活动分析数据库会被打开,您就可以查看用户会话的信息。
Domino.NOTES.Session 的样例输出:
Server Name: CN=Server/O=Company
User Name: CN=Admin Domino/O=Company
SessionId: 86256F4F0077567F
Session State: Closed
Client Address: TCPIP: 192.0.2.0:1990
Bytes Sent: 1852
Bytes Received: 8956
Documents Read: 1
Documents Written:0
Open Time: 6.53 seconds
Transactions: 12
Port: TCPIP
2. 启用 debug 参数,将信息输出到日志中
您可以启用服务器的 notes.ini 文件中的 debug 参数来捕获连接信息。
注意: 使用 debug 参数要小心。Debug 能输出一些信息到服务器的日志文件中,影响可用的磁盘空间,有时甚至会影响性能。
将下面的参数添加到 notes.ini 文件中,然后重新启动服务器,就可以开始收集信息:
LOG_CONNECTIONS=1 (记录连接信息)
DEBUG_THREADID=1 (记录进程和线程信息,以关联连接信息)
CONSOLE_LOG_ENABLED=1 (将控制台日志输出到文件中)
相关的 debug 信息会记录到控制台日志文件中以及 log.nsf 中。
样例输出:
[097C:0008-139C] 2008-07-15 13:49:05 Opened TCP/IP connection from 127.0.0.1,2614 to 127.0.0.1,1352
[097C:0008-139C] 2008-07-15 13:49:05 Opened TCP/IP connection from 127.0.0.1,2615 to 127.0.0.1,1352
[097C:0033-1670] 2008-07-15 13:49:05 Opened session for admin/org8 (Release 8.0.1)
[097C:0033-1670] 2008-07-15 13:49:05 Closed TCP/IP connection from 127.0.0.1,2615 to 127.0.0.1,1352
[097C:0033-1670] 2008-07-15 13:49:05 Closed session for admin/org8 Databases accessed: 2 Documents read: 0 Documents written: 0
3. 使用服务器控制台
要查看当前的连接,在服务器控制台上输入下面的命令之一:
show user debug >debug.txt
show port tcpip >tcpip.txt
debug.txt的样例输出:
User Name Databases Open Minutes Since Last Used
[0032] admin/China/IBM (5) TCPIP: 127.0.0.1:2498 names.nsf 5
tcpip.txt的样例输出:
TCP/IP Port Driver
Transport Provider: TCP
Notes Session Local Address Foreign Address
12630001 127.0.0.1:1352 127.0.0.1:2498
12630002 *:389 *:*
12630003 *:1352 *:*
输出的数据会被写入到 (>) 符号后面指定的文件名中(在 Domino 程序目录下)。