13 Troubleshooting Instant Messaging Server

This chapter describes common problems that might occur during installation and deployment of Oracle Communications Instant Messaging Server. It also provides an overview of the watchdog process.

Troubleshooting and Monitoring Instant Messaging Server Overview

The log information generated by the various system components on their operation can be extremely useful when trying to isolate or troubleshoot a problem. In addition, you can use the monitoring framework agent to monitor the general health of Instant Messaging Server processes to help prevent problems before they occur, assess usage levels to help you scale your deployment, and to prevent downtime.

See "Managing Logging for Instant Messaging Server" for details and more information on managing server, multiplexor, watchdog, Calendar agent, and client logging, and for default log file locations.

General Troubleshooting

This section describes general problems and solutions.

Cannot Forward Mail to Offline Users

By default, Instant Messaging Server uses the mail attribute to determine the email address to which it forwards instant messages when a recipient is offline. If your directory does not use the mail attribute for email addresses, you must configure Instant Messaging Server to use the same attribute as your directory.

Configuring the Attribute Used for User Email Addresses

Use the imconfutil command to change the value of the iim_ldap.usermailattr property to the attribute that your directory uses to contain email addresses in user entries.

Calendar Pop-up Reminders Do Not Work

If Calendar pop-ups are not being delivered as expected, you can troubleshoot the configuration as described in this section. See "Using Calendar Pop-up Reminders" for instructions on setting up Calendar pop-ups.

The most common error in Calendar pop-up configuration is incorrectly entered property names in the configuration files. This includes typos and misspelled property names. Ensure that you have correctly entered all of the configuration properties and values in the iim.conf.xml and ics.conf files. If you have already configured pop-ups, use "JMQ Properties" to compare your entries with the required properties.

If your Instant Messaging Server and Calendar Server configuration files are correct, but pop-ups are still not arriving as expected, ensure the Calendar client and Instant Messaging client are configured correctly.

If you received the email alert, but not the Calendar pop-up, and you are sure that you have configured both servers and clients correctly, check the xmppd.log for further information. You might need to set this log to a more verbose setting, for example DEBUG. See "Managing Logging for Instant Messaging Server" for instructions on changing the log level.

Connection Refused or Timed Out

The following are the possible causes for this problem:

  • Either the Instant Messaging server or the multiplexor is not running.

  • Incorrect multiplexor host or port names used in the Applet descriptor file .jnlp or .html.

  • Different SSL settings used between instant messaging client and the multiplexor.

  • Client and server version mismatch.

Where to get diagnostic information:

  • Instant Messaging server and multiplexor log files

Authentication Errors

The following are the possible causes for this problem:

  • Problems while accessing the LDAP server, such as the LDAP server is not running, or a provisioning error, such as a schema violation, has occurred

  • End user not found

  • Invalid credentials

Where to get diagnostic information:

  • Instant Messaging server, Identity authentication, and LDAP log files.

Instant Messaging Server Content is not Archived

The following are the possible causes for this problem:

  • Content is actually archived but the end user has insufficient rights to access it.

  • The content has not yet been committed to the database.

  • The archive provider has been disabled in the Instant Messaging server.

You can get diagnostic information from the Instant Messaging server log files.

Server-to-Server Communication Fails to Start

The following are the possible causes for this problem:

  • Incorrect server identification

  • Mismatch in the SSL settings

You can get diagnostic information from the Instant Messaging server log file for both servers.

Troubleshooting Instant Messaging Server and LDAP

The following LDAP issues might arise in a given deployment. Change the LDAP properties in the iim.conf.xml file accordingly.

Using a Directory That Does not Permit Anonymous Bind

By default, Instant Messaging Server performs an anonymous search of the LDAP directory. However, it is common for sites to prevent anonymous searches in their directory so that any random person cannot do a search and retrieve all the information. If your site's directory is configured to prevent such anonymous searches, and you did not provide bind credentials during post-installation configuration, you must configure Instant Messaging Server with a user ID and password it can use to bind and perform searches.

Use the iim_ldap.usergroupbinddn and iim_ldap.usergroupbindcred properties to configure the necessary credentials.

Configuring Bind Credentials for Instant Messaging Server

To configure bind credentials for Instant Messaging Server, use the imconfutil command to set the iim_ldap.usergroupbinddn and iim_ldap.usergroupbindcred properties:

imconfutil set-prop -c InstantMessaging_home/config/iim.conf.xml iim_ldap.usergroupbinddn="cn=Directory Manager" iim_ldap.usergroupbindcred=password

Changing the Attribute Used to Display Contact Names

To change the attribute used to display contact names, use the imconfutil command to set the iim_ldap.userdisplay and iim_ldap.groupdisplay properties:

imconfutil set-prop -c InstantMessaging_home/config/iim.conf.xml iim_ldap.userdisplay=sn iim_ldap.groupdisplay=sn

Searching the Directory by Using Wildcards

If your directory is indexed to allow the use of wildcards, and you want to be able to use wildcards while searching for contact names, you must configure Instant Messaging Server to enable wildcard searches. However, enabling wildcard searches can impact performance unless User IDs are indexed for substring search.

  • Use the imconfutil command to set the iim_ldap.usergroupbynamesearchfilter attribute. This property specifies the LDAP search string used when searching for users or groups. Provide the attribute value in standard LDAP filter syntax. You can modify it to allow more complex searches. See your Directory Server documentation for more information on modifying search strings.

Using Nonstandard Objectclasses for Users and Groups

If your directory uses nonstandard object classes to define users and groups you must change the appropriate iim_ldap.* properties, replacing inetorgperson and groupofuniquenames with your values.

See Table 28-2, "LDAP, User Registration, and Source Configuration Properties" for a list of LDAP properties.

Changing the Object Classes Used to Specify Users and Groups

To change the object classes used to specify users and groups:

  1. Use the imconfutil command to change the iim_ldap.* properties.

  2. Search for and replace inetorgperson with the object class used to define users in your directory.

  3. Search for and replace groupofuniquenames with the object class used to define groups in your directory.

Using an Attribute Other than uid for User Authentication

If your directory does not use the uid attribute for user authentication, you must configure Instant Messaging Server with the attribute used by your directory. By default, Instant Messaging Server uses uid. You also need to change each filter property that contains uid in its value.

Use the iim_ldap.loginfilter property to specify which attribute to use for user authentication.

Changing the Attribute Used for User Authentication

Use the imconfutil command to set the uid with the attribute you want to use for user authentication in the iim_ldap.loginfilter and iim_ldap.usergroupbyidsearchfilter properties.

Using an Attribute Other than uid for User IDs

If your directory does not use the uid attribute for user IDs, you must configure Instant Messaging Server with the attribute used by your directory. By default, Instant Messaging Server uses uid. In addition, you should index the attribute in the directory to help offset any performance degradation caused by searching on unindexed attributes.

Use the iim_ldap.useruidattr property to specify which attribute to use for user IDs.

Changing the Attribute Used for User IDs

To change the user ID attribute:

  1. Use the imconfutil command to set the attribute you want to use for user IDs as the value for the iim_ldap.useruidattr property. For example, to use the loginname attribute:

    imconfutil -c InstantMessaging_home/config/iim.conf.xml iim_ldap.useruidattr=loginname
    
  2. Add the index directive to the indexing rules in LDAP:

    index loginname eq
    

Troubleshooting Connectivity Issues in a Multi-Node Deployment (Server Pool)

If you are receiving errors where presence status is not being shared between servers in a server pool:

  • Ensure that the nodes are configured correctly to enable server-to-server communication. See "About Server Pooling" for more information.

  • Check for server-to-server session establishment errors in the log file.

Managing the Watchdog Process

The watchdog process monitors the server and multiplexor components and attempts to restart a component if it determines that the component is not running.

For the server, the watchdog determines whether the server is running by periodically attempting to make a connection, either directly to the server or through the multiplexor, based on the current configuration of the server. The watchdog tries to poll the server's operational status and if it cannot determine the status, it then tries to make a connection to the server. If both operations fail, the watchdog stops and then restarts the server.

Before you use the watchdog, verify that it is enabled and running using the imadmin status command. By default, the watchdog is enabled and running when you install Instant Messaging Server.

See "imadmin Command Reference" for more information about the imadmin command.

Determining the Status of the Watchdog

Use the imadmin command to check the status of the watchdog:

  1. Change to the directory that contains the imadmin command.

    cd InstantMessaging_home/sbin
    
  2. Run imadmin status:

    imadmin status watchdog
    

    The imadmin command returns the current status of the watchdog.

Enabling and Disabling the Watchdog

By default, the watchdog is enabled when you install Instant Messaging Server. You can disable or enable the watchdog by setting a configuration property in the iim.conf.xml file.

  1. Use the imconfutil command to either enable or disable the watchdog by setting the iim_wd.enable property as follows:

    To enable the watchdog:

    iim_wd.enable=true
    

    To disable the watchdog:

    iim_wd.enable=false
    
  2. Refresh the Instant Messaging Server configuration:

    imadmin refresh
    

Managing Logging for the Watchdog

You manage logging for the watchdog the same way you manage logging for the server, multiplexor, and the Calendar agent. The watchdog log file is saved as InstantMessaging_database/log/iim_wd.log.

See "Managing Logging for Instant Messaging Server" for more information on setting logging levels for all Instant Messaging Server components including the watchdog.