16.7 Using DSTrace

To use the DSTrace utility in a Linux environment, run the following command from the server prompt:

/opt/novell/eDirectory/bin/ndstrace

The full syntax for the ndstrace command is as follows:

ndstrace [-l|-u|-c "command1;......"|--version] [-h <local_interface:port>] [--config-file <configuration_file_path>] [thrd <thread ID>] [svty <severity_level>] [conn <connection_ID>]

The DSTrace utility has three main parts:

16.7.1 Basic Functions

The basic functions of DSTrace are to:

  • View internal eDirectory activity and debugging messages in Linux.

  • Initiate limited synchronization processes.

You can use the DSTrace utility in either UI mode or command line mode. By default, DSTrace runs in UI mode. To start DSTrace in UI mode, enter the following command at the server prompt:

/opt/novell/eDirectory/bin/ndstrace

To start DSTrace in command line mode, enter the following command at the prompt:

/opt/novell/eDirectory/bin/ndstrace -l

To initiate basic DSTrace functions, enter commands at the server prompt using the following syntax:

ndstrace command_option

The following table lists the command options that you can enter.

Option

Description

ON

Starts the eDirectory trace screen with basic trace messages.

OFF

Disables the trace screen.

ALL

Starts the eDirectory trace screen and displays all the trace messages.

AGENT

Starts the eDirectory trace screen with the trace messages that are equivalent to the ON, BACKLINK, DSAGENT, JANITOR, RESNAME, and VCLIENT flags.

DEBUG

Turns on a predefined set of trace messages typically used for debugging. The flags set are ON, BACKLINK, ERRORS, EMU, FRAGGER, INIT, INSPECTOR, JANITOR, LIMBER, MISC, PART, RECMAN, REPAIR, SCHEMA, SKULKER, STREAMS, and VCLIENT.

NODEBUG

Leaves the trace screen enabled, but turns off all debugging messages previously set. This option also leaves the messages set to the ON command option.

16.7.2 Debugging Messages

When the DSTrace screen is enabled, the information displayed is based on a default set of filters. If you want to view more or less than the default, you can manipulate the filters using the debugging message flags. The debugging messages help you determine the status of eDirectory and verify that everything is working well.

Each eDirectory process has a set of debugging messages. To view the debugging messages on a particular process, use a plus sign (+) and the process name or option. To disable the display of a process, use a minus sign (-) and the process name or option. The following are some examples:

Message

Description

set ndstrace = +SYNC

Enables the synchronization messages.

set ndstrace = -SYNC

Disables the synchronization messages.

set ndstrace = +SCHEMA

Enables the schema messages.

You can also combine the debugging message flags by using the Boolean operators & (which means AND) and | (which means OR). The syntax for controlling the debugging messages at the server console is as follows:

set ndstrace = <trace_flag> [parameter]

The following table describes the trace flags for the debugging messages. You can enter abbreviations for each of the trace flags.

Trace Flag

Description

ABUF

Messages and information related to inbound and outbound packet buffers that contain data being received in conjunction with, or in response to, an eDirectory request.

ALOC

Messages to show the details of memory allocation.

AREQ

Messages related to inbound requests from other servers or clients.

AUTH

Messages and error reports relating to authentication.

BASE

Debug error messages at the minimum debugging level.

BLNK

Backlink and inbound obituary messages and error reports.

CBUF

Messages related to outbound DS Client requests.

CHNG

Change cache messages.

COLL

Status and error reports concerning an object’s update information when the update has been previously received.

CONN

Messages that show information about the servers your server is trying to connect to, and about errors and timeouts that might be causing your server not to connect.

DNS

Messages about the eDirectory-integrated DNS server processes.

DRLK

Distributed reference link messages.

DVRS

Messages to show DirXML® driver-specific areas that eDirectory might be working on.

DXML

Messages to show details of DirXML events.

FRAG

Messages from the NCP™ fragger which breaks eDirectory messages into NCP-sized messages.

IN

Messages related to inbound requests and processes.

INIT

Messages related to the initialization of eDirectory.

INSP

Messages related to the integrity of objects in the source server’s local database. Using this flag increases the demands on the source server’s disk storage system, memory, and processor. Do not leave this flag enabled unless objects are being corrupted.

JNTR

Messages related to the following background processes: janitor, replica synchronization, and flat cleaner.

LDAP

Messages related to the LDAP server.

LMBR

Messages related to the limber process.

LOCK

Messages related to the use and manipulation of the source server’s local database locks.

LOST

Messages related to lost entries.

MISC

Messages from different sources in eDirectory.

MOVE

Messages from the move partition or move subtree operations.

NCPE

Messages to show the server receiving NCP-level requests.

NMON

Messages related to iMonitor.

OBIT

Messages from the obituary process.

PART

Messages related to partition operations from background processes and from request processing.

PURG

Messages about the purge process.

RECM

Messages related to the manipulation of the source server’s database.

RSLV

Reports related to the processing of resolve name requests.

SADV

Messages related to the registration of tree names and partitions with Service Location Protocol (SLP).

SCMA

Messages related to the schema synchronization process.

SCMD

Messages showing the details of schema-related operations. They give details of both inbound and outbound synchronization.

SKLK

Messages related to the replica synchronization process.

SPKT

Messages related to eDirectory NCP server-level information.

STRM

Messages related to the processing of attributes with a Stream syntax.

SYDL

Messages showing more details during the replication process.

SYNC

Messages about inbound synchronization traffic (what is being received by the server).

TAGS

Displays the tag string that identifies the trace option that generated the event on each line displayed by the trace process.

THRD

Messages to show when any background processes (threads) begin and end.

TIME

Messages about the transitive vectors that are used during the synchronization process.

TVEC

Messages related to the following attributes: Synchronize Up To, Replica Up To, and Transitive Vector.

VCLN

Messages related to the establishment or deletion of connections with other servers.

As you use the debugging messages in DSTrace, you will find that some of the trace flags are more useful than others. One of the favorite DSTrace settings of NetIQ Support is actually a shortcut:

set ndstrace = A81164B91

This setting enables a group of debugging messages.

16.7.3 Background Processes

In addition to the debugging messages, which help you check the status of eDirectory, there is a set of commands that force the eDirectory background processes to run. To force the background process to run, place an asterisk (*) before the command. For example:

set ndstrace = *H

You can also change the status, timing, and control for a few of the background processes. To change these values, place an exclamation point (!) before the command and enter a new parameter or value. For example:

set ndstrace = !H 15 (parameter_value_in_minutes)

The following is the syntax for each statement controlling the background processes of eDirectory:

set ndstrace = <trace_flag> [parameter]

The following table lists the trace flags for the background processes, any required parameters, and the process the trace flags are displayed.

Trace Flag

Parameters

Description

*A

None

Resets the address cache on the source server.

*AD

None

Disables the address cache on the source server.

*AE

None

Enables the address cache on the source server.

*B

None

Schedules the backlink process to begin execution on the source server in one second.

!B

Time

Sets the interval (in minutes) for the backlink process.

Default=1500 minutes (25 hours) Range=2 to 10080 minutes (168 hours)

*CT

None

Displays the source server’s outbound connection table and the current statistical information for the table. These statistics do not give any information about the inbound connections from other servers or clients to the source server.

*CTD

None

Displays, in comma-delimited format, the source server’s outbound connection table and the current statistical information for the table. These statistics do not give any information about the inbound connections from other servers or clients to the source server.

*D

Replica rootEntry ID

Removes the specified local entry ID from the source server’s Send All Object list. The entry ID must specify a partition root object that is specific to the server’s local database. This command is usually used only when a Send All Updates process is endlessly trying to show updates and failing because a server is inaccessible.

!D

Time

Sets the inbound and outbound synchronization interval to the specified number of minutes.

Default=24 minutes. Range=2 to 10080 minutes (168 hours)

!DI

Time

Sets the inbound synchronization interval to the specified number of minutes.

Default=24 minutes Range=2 to 10080 minutes (168 hours)

!DO

Time

Sets the outbound synchronization interval to the specified number of minutes.

Default=24 minutes Range=2 to 10080 minutes (168 hours)

*E

None

Reinitializes the source server’s entry cache.

!E

None

Schedules the inbound and outbound synchronization processes to begin execution.

!EI

None

Schedules the inbound synchronization process to begin execution.

!EO

None

Schedules the outbound synchronization process to begin execution.

*F

None

Schedules the flat cleaner process, which is part of the janitor process, to begin execution on the source server in five seconds.

!F

Time

Sets the interval (in minutes) for the flat cleaner process.

Default=240 minutes (4 hours) Range=2 to 10080 minutes (168 hours)

*FL

1-10

Sets the number of rolling log files used by DSTrace. If you set this parameter to any value greater than 1, once the source server’s ndstrace.log file reaches the configured maximum file size, DSTrace renames the file ndstrace1.log and creates a new ndstrace.log file. When that file reaches its maximum file size, the previous ndstrace1.log file is renamed ndstrace2.log, and the more recent ndstrace.log file is renamed ndstrace1.log.

This process continues until DSTrace reaches the maximum number of rolling log files set by this option. Once the specified limit is reached, the oldest log files will be deleted and only the specified maximum number of rolling files will be maintained.

You can configure a maximum of 10 rolling log files. By default, DSTrace must use at least 1 rolling log file. If you set this parameter to 0, DSTrace uses 1 as the parameter value.

*G

Replica rootEntry ID

Rebuilds the change cache of the specified root partition ID.

*H

None

Schedules the replica synchronization process to begin execution immediately on the source server.

!H

Time

Sets the interval (in minutes) for the heartbeat synchronization process.

Default=30 minutes Range=2 to 1440 minutes (24 hours)

*HR

None

Clears the in-memory last-sent vector.

*I

Replica rootEntry ID

Adds the specified local entry ID to the source server’s Send All Object list. The entry ID must specify a partition root object that is specific to the server’s local database. The replica synchronization process checks the Send All Object list. If the entry ID of a partition’s root object is in the list, eDirectory synchronizes all objects and attributes in the partition, regardless of the value of the Synchronized Up To attribute.

!I

Time

Sets the interval (in minutes) for the heartbeat synchronization process.

Default=30 minutes Range=2 to 1440 minutes (24 hours)

*J

None

Schedules the purge process, which is part of the replica synchronization process, to begin running on the source server.

!J

Time

Sets the interval (in minutes) for the janitor process.

Default=2 minutes Range=1 to 10080 minutes (168 hours)

*L

None

Schedules the limber process to begin running on the source server in five seconds.

*M

Bytes

Changes the maximum file size used by the source server’s ndstrace.log file. The command can be used regardless of the state of the debug file. The bytes specified must be a decimal value between 10000 bytes and 100 MB. If the value specified is higher or lower than the specified range, no change occurs.

!M

None

Reports the maximum memory used by eDirectory.

!N

0|1

Sets the name form.

0=hex only 1=full dot form

*P

None

Displays the tunable parameters and their default settings.

*R

None

Resets the size of the ndstrace.log file to zero bytes. This command is the same as the SET parameter NDS Trace File Length Set to Zero.

*S

None

Schedules the Skulker process, which checks whether any of the replicas on the server need to be synchronized.

!SI

Time

Sets the interval (in minutes) for the inbound schema synchronization process.

Default=24 minutes Range=2 to 10080 minutes (168 hours)

!SO

Time

Sets the interval (in minutes) for the outbound schema synchronization process.

Default=24 minutes Range=2 to 10080 minutes (168 hours)

!SIO

Time

Disables the inbound schema synchronization process for the specified number of minutes.

Default=24 minutes Range=2 to 10080 minutes (168 hours)

!SO0

Time

Disables the inbound schema synchronization process for the specified number of minutes.

Default=24 minutes Range=2 to 10080 minutes (168 hours)

*SS

None

Forces immediate schema synchronization.

*SSA

None

Schedules the schema synchronization process to begin immediately and forces schema synchronization with all target servers, even if they have been synchronized in the last 24 hours.

*SSD

None

Resets the source server’s Target Schema Sync list. This list identifies which servers the source server should synchronize with during the schema synchronization process. A server that does not hold any replicas sends a request to be included in the target list of a server that contains a replica with its Server object.

*SSL

None

Prints the schema synchronization list of target servers.

*ST

None

Displays the status information for the background processes on the source server.

*STX

None

Displays the status information for the backlink process (external references) on the source server.

*STS

None

Displays the status information for the schema synchronization process on the source server.

*STO

None

Displays the status information for the backlink process (obituaries) on the source server.

*STL

None

Displays the status information for the limber process on the source server.

!T

Time

Sets the interval (in minutes) for checking the server’s UP state.

Default=30 minutes Range=1 to 720 minutes (12 hours)

*U

Optional ID of server

If the command does not include an entry ID, this changed the status of any server that has been previously labeled down to up. If the command includes a local entry ID, it changes the status of the specified server from down to up. Entry IDs are specific to the source server’s database and must refer to an object that represents a server.

!V

A list

Lists the restricted eDirectory versions. If no versions are listed, there are no restrictions. Each version is separated by a comma.

*Z

None

Displays the currently scheduled tasks.