My Presentation from the ILUG 2010 Belfast conference.
Here the Abstract: "Come to this session to learn on real examples how to read and understand those NSD files that can give you so mush information for troubleshooting and debugging your Domino Servers, Notes Clients and even your Applications. You will learn how to find what files and documents has been open, what agents has been running and how much memory was available, as the last crash occurred. You will also see all kinds of tips and tricks around the system diagnostics, that will allow you to troubleshoot problems faster and more effective. "
2. Some Rights Reserved
Copyright 2010 by Gregory Engels,
Kompurity. Except where otherwise
noted, this work is licensed under the
Creative Commons Attribution Share
Alike 3.0 License
3. About me
Gregory Engels
Born in Moscow, live in Frankfurt, Germany
since 1989
Been around Lotus Notes since 1998
Advanced Certified Domino Developer and
Admin and Security R5, R6, R7, R8
Co-Author "Migrating
Microsoft Exchange 2000/2003 to IBM Lotus
Notes 7"
Founder Kompurity http://www.kompurity.de
Specialize in Hosting, Infrastructure
management
Blog: http://inotes.de
Twitter: dichter
13. Put this in the nsd.ini
• canceldisable=1
• (BOFH tip of the day)
14. Real Life
• ADC Enabled 9 Month ago
• User Population c.a. 6000 Users
• 1700 Users have created at least 1
NSD
• c.a. 13000 Client NSD
• 13 Users (0.05%) created 1700 NSD
(14%)
15. How often does Notes
Crashes?
0
10
20
30
40
50
60
70
80
90
100
1 5 9 14 21 30 52 75 163 1258
Number of Users that had N Crashes
Occurency
20. • See TN #4013182 for ftp links
• See TN #1233676 for list of SPR’s
fixed
• Version of NSD is
<NotesVersion><Fixpack>.<YNNN>
• NNN = Days since year begin
• example: NSD 8.0.10.8057 (Release
8.0.1) = Feb 27 2008 (57 Days since
Jan 01)
22. Finding the log
• Logs are stored in the
IBM_TECHNICAL_SUPPORT
subdirectory
• in the Lotus Notes Domino Fault
Reports Database lndfr.nsf
• ND6 - nsd_all_<Platform>_<Host>_MM_DD@HH_MM.log
• ND7 -
nsd_<Platform>_<ServerName>_YYYY_MM_DD@HH_MM_SS.log
23. Contents of the NSD
• Rather verbose
• Process Info (Call Stack)
• Memcheck (Domino Memory
Objects)
• System Information
• Environment Information
24. • Process Information (Call Stacks) –
Process Information is composed of
the list of all running processes
system wide, followed by a list of all
Domino specific processes.
• the code path involved in a particular
problem.
25. • Memcheck (Domino Memory Objects)
– The Memcheck section dumps
information about Domino-specific
structures.
• memory pools (both private and
shared)
• list of open resources such as open
database, open view, open documents,
connected users, and open files.
26. • System Information – This section
provides information regarding
version of OS,
• kernel configurations, patch
information, disk information,
network connections, and memory
usage.
32. Note Class Description
• 0x0001 Data Note (document)
• 0x0004 Form Note
• 0x0008 View note
• 0x0040 ACL Note
• 0x0200 Agent Note
• 0x0800 Replication Formula Note
33. Search for VTread info
• Search on KEYWORDs “Resource
Usage” or “Resource Usage Summary”
• Search on KEYWORD “Process” until
you located the necessary process ID
• Search on the PHYSICAL THREAD ID
of the thread you are interested in
(cosection after you have looked at
call stacks)
35. • Try NSD -info
• If this runs to completion, perhaps
there is a problem with the pid.nbf
file
• Try upgrading NSD
• Check if symbols are installed
• lotusnotes.sym
44. Thank You!
• Please fill out the evaluation (so I can
get back next year)
• Contact: Gregory.Engels ※
kompurity.de
Blog http://inotes.de
twitter: dichter
46. NSD parameters
• nsd –stack (collects only call stacks, speeds execution)
• nsd –info (collects only system info)
• nsd –noinfo (collects all but info)
• nsd –memcheck (collects only memcheck info)
• nsd –nomemcheck (collects all but memcheck)
• nsd –perf (collects process memory usage)
• nsd –noperf (collects all but performance data)
• nsd –handles (collects OS level handle info)
• nsd –nohandles (collects all but handle info)
• nsd –kill (kills all notes process and associated memory)
• nsd –monitor (attaches and waits for exceptions)
• nsd –p (runs against a specific process – call stacks only)