Environment
iManager 3.2
eDirectory 9.2
Situation
Dclient works as a client on every eDirectory server. This allows server to server communications such as when chaining to another server on behalf of a LDAP request.
There are times that an error or error condition is encountered while using a plugin within iManager. At times the actual error returned to iManager from a server cannot be seen server-side (ndstrace). This is when a dclient debug log can be useful to show what the client (plugin + dclient) sees.
Resolution
Below are the steps to perform based on whether the server is running standalone iManager server or iManager on the OES platform.
Standalone (iManager runs as novlwww):
1) Create a directory for the log: IE., /var/opt/novell/novlwww/dclient
2) Create a file named dlclient.log in the directory created above.
3) Assign novlwww owner permissions to the dclient folder and the dclient.log file.
mkdir /var/opt/novell/novlwww/dclient
chown novlwww:novlwww /var/opt/novell/novlwww/dclient
touch /var/opt/novell/novlwww/dclient/dclient.log
chown novlwww:novlwww /var/opt/novell/novlwww/dclient/dclient.log
chown novlwww:novlwww /var/opt/novell/novlwww/dclient
touch /var/opt/novell/novlwww/dclient/dclient.log
chown novlwww:novlwww /var/opt/novell/novlwww/dclient/dclient.log
4) In the script /opt/novell/tomcat7/bin/dtomcat7 or /opt/novell/tomcat9/bin/dtomcat9 add the environment variable DCLIENTDEBUG which will point to a file inside the directory created with the first step.
Place it below these two lines as shown below:
Place it below these two lines as shown below:
TOMCAT_CFG="/etc/opt/novell/tomcat9/tomcat9.conf"
JAVADIR="/opt/netiq/common/jre"
export DCLIENTDEBUG="/var/opt/novell/novlwww/dclient/dclient.log"
JAVADIR="/opt/netiq/common/jre"
export DCLIENTDEBUG="/var/opt/novell/novlwww/dclient/dclient.log"
5) Stop and start Tomcat. Do not restart it or the variable will not be read.
systemctl stop novell-tomcat9-service.service
systemctl start novell-tomcat9-service.service
OES 2018 (iManager runs as user wwwrun):
1) Create a directory for the log: /var/lib/wwwrun/dclient
2) Create a file named dclient.log in this directory.
3) Assign wwwrun and group www owner permissions to the dclient folder and to the dclient.log file.
mkdir /var/lib/wwwrun/dclient
chown wwwrun:www /var/lib/wwwrun/dclient
touch /var/lib/wwwrun/dclient/dclient.log
chown wwwrun:www /var/lib/wwwrun/dclient/dclient.log
4. Edit the /etc/opt/novell/tomcat/conf/novell-tomcat.conf file and add the variable as shown below:
mkdir /var/lib/wwwrun/dclient
chown wwwrun:www /var/lib/wwwrun/dclient
touch /var/lib/wwwrun/dclient/dclient.log
chown wwwrun:www /var/lib/wwwrun/dclient/dclient.log
4. Edit the /etc/opt/novell/tomcat/conf/novell-tomcat.conf file and add the variable as shown below:
#
LD_LIBRARY_PATH="/usr/lib64${LD_LIBRARY_PATH+:$LD_LIBRARY_PATH}"
export LD_LIBRARY_PATH
#
DCLIENTDEBUG="/var/lib/wwwrun/dclient/dclient.log"
export DCLIENTDEBUG
#
LD_LIBRARY_PATH="/usr/lib64${LD_LIBRARY_PATH+:$LD_LIBRARY_PATH}"
export LD_LIBRARY_PATH
#
DCLIENTDEBUG="/var/lib/wwwrun/dclient/dclient.log"
export DCLIENTDEBUG
#
5. Stop Tomcat and Apache and then start them up again. Do not restart or perform this any other way or the environment variable will not be read.
systemctl stop novell-tomcat.service
systemctl stop apache2.service
systemctl start novell-tomcat.service
systemctl start apache2.service
systemctl stop apache2.service
systemctl start novell-tomcat.service
systemctl start apache2.service