Oracle Internet File System Setup and Administration Guide Release 1.1 A81197-05 |
Library | Service | Contents | Index

# 13
Oracle iFS Log Files and Troubleshooting Information

This chapter provides information on troubleshooting and configuration logs. The following topics are included:

- Troubleshooting General Problems

- Using the Oracle iFS Log Files

- Using the Configuration Log Files

- Using the Protocol Server Log Files

- Using the Server Manager Log Files

- The WCP Server Log File

- The Windows Interface Log Files

- Resolution for Upgrading to the Oracle Database

- National Language Support (NLS) Troubleshooting

- Common Administrative Errors

## Troubleshooting General Problems

This section contains information to assist with general problems and problem diagnosis.

### Oracle iFS Configuration Assistant Errors

The following information describes troubleshooting information for problems that occur during configuration of Oracle iFS.

#### Possible Error

When running the Configuration Assistant and trying to create class objects on Oracle 8.1.7 and JDK 1.1.8, the following error occurs:

    java.lang.NoClassDefFoundError: org/omg/CORBA/userException

#### Possible Problem

If a custom installation of the Oracle 8.1.7 database has been completed and the OEM components were not installed.

Possible Solution

Perform the following steps on your UNIX machine where the Oracle 8.1.7 database is installed.

1. Verify that the following files are NOT present in `$ORACLE_HOME/lib`:

   - vbjob.jar

   - vbjapp.jar

   - vbjtools.jar

2. Run the Oracle Universal Installer for the Oracle 8.1.7 database by executing `/RunInstaller` from the Installation CD. Complete the following steps:

   1. Available Products Page

      On this page, select Oracle8i Enterprise Edition 8.1.7.0.0. Click Next.

   2. Installation Types Page

      On this page, select Custom and click Next.

   3. Available Product Components Page

      On this page, select the following:

      - Oracle Enterprise Manager Products 8.1.7.0.0.

      - Oracle Enterprise Manager Client 2.2.0.0.0.

      - Oracle Enterprise Manager DBA Management Pack 2.2.0.0.0 (under Oracle Enterprise Manager Client).

      You can deselect all other options and click Next.

   4. Summary Page

      On this page, verify that the following files are present in `$ORACLE_HOME/lib`:

      - vbjorb.jar

      - vbjapp.jar

      - vbjtools.jar

3. Rerun the Oracle iFS Configuration Assistant by executing `$ORACLE_HOME/ifs/bin/ifsconfig`.

### Stopping Multiple Server Instances of the Same Name

The following information describes troubleshooting information for problems that occur when shutting down ambiguously named servers.

#### Possible Error

After running `ifsstop`, the following error message displays:

    IFS-46114: Server name IfsProtocols is ambiguous; specify the server
    identifier:(47471, 47613, 47679, 47863, 47954).

#### Possible Problem

The problem is multiple instances of Server Manager were started with the same name. This can occur when:

- `ifsstarts` is run multiple times without first stopping Oracle iFS.

- Making a copy of either `IfsAgents.def` or `IfsProtocols.def` to intentionally start multiple Server Managers, but not modifying the `ManagerName` field to be unique.

`ifsstop` cannot shutdown the Server Managers due to the ambiguity in the names.

#### Possible Solution

The solution is to manually stop each Server Manager. To do this:

1. Start Oracle iFS Manager and select Monitor from the File menu. This will start the Oracle iFS Monitor.

2. Select the Server Manager you want to stop and click Stop.

## Using the Oracle iFS Log Files

When using Oracle iFS, there are three types of log files generated. These log files are:

- Configuration Logs--Log files generated during installation.

- Protocol Logs--Log files generated by the protocol servers.

- Server Manager Logs--Log files generated by Server Manager when it starts and stops agents, including the ExternalServer Agent, which starts and stops the protocol servers.

All log files, except the Java Web Server (JWS) log file, are generated and placed in the `$ORACLE_HOME/ifs<version>/log` directory. The JWS log file is placed in the `$ORACLE_HOME/ifs<version>/jws/logs/javawebserver/webpageservice` directory.

## Using the Configuration Log Files

During the configuration of Oracle iFS, the `IfsConfigOut.log` and the `IfsConfigSql.log` files are generated and stored in the following directory:

Platform | Directory
--- | ---
UNIX | `$ORACLE_HOME/ifs<version>/log`
Windows NT | `%ORACLE_HOME%\ifs<version>\log`

### IfsConfigOut.log

The `IfsConfigOut.log` file is a log of the configuration, starting with saving properties to configuration files, then creating the schema and tablespaces. This log file lists which files are executed, what `.adm` and `.typ` files are executed by the AdminManager and CreateClasses.

The `IfsConfigOut.log` file is similar to the `make_create` log, but contains more detail. At the top of the file, when the process began is displayed. At the bottom of the file, the time it took for the process to run is displayed. This file is always created in "verbose" mode.

If an error occurs during the Oracle iFS configuration, the problem is reported at the bottom of the log file. Notice a large Java stack trace. The trace is printed twice: once, exactly when the error occurred (by the thread actually executing the operation), and again by the main thread when it is displaying the error. Sometimes the first trace has more information, so be sure to examine both traces.

### IfsConfigSql.log

This log file contains a SQL "dump" of all the SQL statements that were executed directly from the SQL scripts that create the Oracle iFS schema, for example, odmmain.sql. This file is always created in "verbose" mode.

### Common Errors Found in the IfsConfigOut.log and IfsConfigSql.log Files

The following list displays the common errors found and a resolution:

- `java.lang "class not found"`--A jar or library file is missing from the $ORACLE_HOME/lib or other directory.

- `java.sql.SQLException: procedure or package not available`--A required package has not been installed in the Oracle software that Oracle iFS is being installed on top of, notably, the `DBMS_OBFUSCATION_PACKAGE`, or certain interMedia packages.

- File not found or IO exceptions--Often caused by permission problems. For example, a configuration file has been made read-only by the root user.

## Using the Protocol Server Log Files

This section discusses the log files generated by the various protocol servers, such as SMB and FTP.

### The SMB Log File

The SMB log file includes a trace level, a trace file, and an append log. For the SMB log file, the trace level can be set to the following:

- OFF--No log file is generated.

- ERR--Default, only prints unexpected exceptions and very high level messages, for example, when users log on and off. Generally, it is more useful to examine the log file after noticing unusual behavior instead of reading the log file looking for errors.

- LOW--Provides information about every operation, such as list directory, open file, and write data, performed by the SMB server. This is a useful level for tracking the general activity of the server.

- HIGH--Provides detailed information on every operation, including most of the packet data. This is typically used for Oracle iFS development tasks, but may provide administrators some clues about erroneous behavior. At HIGH level the log file can use up disk space quickly, so only use this while diagnosing or reproducing a specific problem.

#### TraceFile = {localfile}

The trace file is where the trace will output to, if you do not want it to go to standard output (stdout). Tracing from all clients is written to the same log file, so if you are diagnosing a specific problem, it is probably wise to limit the number of concurrent users, ideally to one.

The most useful lines in the trace file are those starting with a '<'. If you just want to get a general idea of the operations on the server, you can GREP (Global Regular Expression and Print) for all lines starting with '<<'. This gives you one line for each SMB command issues, for example:

    <<SMB_COM_RENAME>>\mydoc.txt

You can also show any errors for that command, for example:

    <<-SMB_COM_RENAME->>DOS/fileexists

You can also include lines starting with '<-' if you want an indication of the server side performance.

#### AppendLog = {true, false}

The default setting for the append log is true. If left with this setting, the new trace information is appended to the old trace file. If set to false, the trace file is overwritten each time the server is started.

### The FTP and CUP Log Files

Both the FTP and CUP servers offers the option LogCommands, which list all communications to and from the server. FTP also offers VerboseLogging, which lists every exception, regardless of its significance.

For both protocols, if an exception occurs outside of normal operation, that exception is logged. For normal operation, it is not necessary to keep a log of all commands or exceptions. For diagnosing problems, more information is better. For FTP, this means both LogCommands and VerboseLogging should be set to true. For CUP, this means that LogCommands should be set to true.

Oracle Corporation suggests that administrators run the servers with minimal logging. If a problem occurs, the logs might contain the stack trace (if the exception was not expected) or they might not. Once a problem is suspected with a specific protocol, the more logging the better. The amount of information in the log can become overwhelming quickly, so only turn on the extra logging when diagnosing problems.

#### FTP

For FTP, there are two login options, LogCommand and VerboseLogging, both in the FtpServer.def file. If the LogCommand is set to true, then the communication, both to and from the server, will be logged. If VerboseLogging is set to true, then all exceptions, regardless of their significance, will be logged. The FtpServer.def file is located in the following directory:

Platform | Directory
--- | ---
UNIX | `$ORACLE_HOME/ifs<version>/settings`
Windows NT | `%ORACLE_HOME%\ifs<version>\settings`

#### CUP

For CUP, there is only one login option, `LogCommand`. If this option is set to true, then the communication, both to and from the server, will be logged.

### The JWS Log Files

Oracle iFS HTTP output goes into standard web server log files. In the case of JWS, which is what comes installed with Oracle iFS, there are three files to view, all of which are located in the following directory:

Platform | Directory
--- | ---
UNIX | `IFS_HOME/jws/logs/javawebserver/webpageserver`
Windows NT | `IFS_HOME%\jws\logs\javawebserver\webpageserver`

The following list describes each log file:

- `access_log`--Contains a line of information for every web request made to the server. This file is marginally useful.

- `error_log`--Contains error output when things go wrong. This file can be very useful. The things to look for in this file are exception traces and the accompanying error messages. It is safe to ignore "IOException:Connection Reset By Peer" messages. These messages show up when the server is in the middle of serving a request but the user has hit the stop button in the browser.

- `event_log`--Contains mostly start up and shutdown information. This file is marginally useful.

The verbosity is controlled by the Web server configuration, for which there are instructions.

## Using the Server Manager Log Files

Each Server Manager instance emits logging information to its own log file. The logging information includes the following categories:

- Start up logging for the Server Manager instance.

- Agent loading and initial starting of each agent registered in the configuration file used by this Server Manager instance.

- Significant agent events and status changes.

- Agent errors and warnings.

- Specific information pertaining to the ExternalServer agent instances. This agent is responsible for managing protocol servers:

  - Protocol server start up and shutdown notifications

  - Protocol server unexpected failures and/or restarts.

- Shutdown logging for the Server Manager instance.

The default Oracle iFS installation will configure two Server Manager instances: one that manages the ExternalServer agents (which in turn manage the protocol servers), and another that manages all other agents. By default, the log file produced by each of these two Server Manager instances are IfsProtocols.log and IfsAgents.log, respectively.

### How To Control Logging Verbosity and Other General Characteristics

The following table describes the options which can be specified in the Server Manager configuration file to control the amount of logging and other general logging characteristics.

Option Name | Datatype | Description | Example
--- | --- | --- | ---
outputfile | String | The absolute file name for the log file. | `outputfile = /private/oracle/ ifs<version/logs/ IfsAgents.log`
VerboseLogging | Boolean | Set to true if logging should be verbose. The default is false. | `VerboseLogging = true`
AppendLog | Boolean | Set to true if the specified log file should be appended to rather than overwritten. The default is false, meaning the log will be overwritten. |

## The WCP Server Log File

The WCP server has a single log file in the same location as other protocols. It logs the WCP commands received from the Windows interface, the intermediate output when commands are processed, and the WCP response sent back to the Windows interface.

### General Notes About the WCP Server Log

The following list describes some general information about the WCP server log.

- After a WCP connection request, each line will be preceded by "WcpSession #", where "#" is a number identifying the WCP session thread created to serve one Windows machine. This is important to identify the relevant events corresponding to a particular client machine as the WCP server is a multi-threaded server.

- The green lines will be logged only if the flay `LogGC=true` is set in the WcpServer.def files. You can use this information to estimate the total memory allocation necessary to support your typical user load, and allocate more or les depending on your requirements.

- Lines with `"XMLCMD>"` are intermediate output when commands are processed.

## The Windows Interface Log Files

The Windows interface also has its own log files. There are two types of log files, all located in the "log" subdirectory under the directory where the Windows interface is installed. The following list describes the two types of log files:

- `IfsSockMgr.log`--Logs events such as Oracle iFS SocketManager starts and exceptions encountered by SocketManager.

- `IfsWcpSessions?.log`--The '?' represents the drive letter to which the Oracle iFS (SMB) server is mapped. This file logs any exceptions during the interaction with the WCP server associated to the mapped drive and is normally blank.

## Resolution for Upgrading to the Oracle Database

The following information will help when upgrading to the Oracle database. You do not need to have Oracle iFS installed nor do you need to de-install Oracle iFS before upgrading.

### Problem Description

In the process of upgrading your database, the interMedia Text views, packages, indexes need to be re-compiled. If you do not recompile these objects, you will be unable to add or update any documents to Oracle iFS. The following error will display:

    IFS-30002 Unable to create new LibraryObject

### Solution Description

To compile the interMedia Text objects, follow these steps using SQL*Plus:

1. Log on to SQL*Plus using SQL*Plus.

2. Run the `$ORACLE_HOME/ctx/admin/upgrade/s0801070.sql` file as the `SYS` user.

3. Run the `$ORACLE_HOME/ctx/admin/upgrade/u0801070.sql` file as CTXSYS.

4. Run the `$ORACLE_HOME/ctx/admin/dr0typec.pkh` file as CTXSYS.

5. Run the `$ORACLE_HOME/ctx/admin/dr0pkh.sql` file as CTXSYS.

6. Run the `$ORACLE_HOME/ctx/admin/dr0plb.sql` file as CTXSYS.

7. Run the `$ORACLE_HOME/ctx/admin/dr0type.plb` file as CTXSYS.

8. Run the `$ORACLE_HOME/ctx/admin/dr0typec.plb` file as CTXSYS.

9. Run the `$ORACLE_HOME/ctx/admin/dr0itypc.sql` file as CTXSYS.

10. Create a SQL script named `recompile.sql` that will recompile all invalid interMedia Text objects. To do this, log on to SQL*Plus as SYS, and type the following:

        spool recompile.sql;
        set heading off;

        select 'alter '||object_type||' '||owner||'.'||object_name||' compile;'
        from dba_objects
        where status='INVALID'
        and object_type != 'JAVA CLASS';

        spool off;

        exit;

11. Run recompile.sql as the `SYS` user.

See Also

- For more information on installing Oracle iFS, see the Oracle Internet File System Installation Guide.

- For more information on troubleshooting, see the Oracle Internet File System Installation Guide.

## National Language Support (NLS) Troubleshooting

The following information describes troubleshooting information to assist with general problems with the National Language Support (NLS).

### Possible Problem: FTP Client

Unable to `ls` and `put` filenames and folders with non-ASCII characters from the MS-DOS FTP client.

### Possible Solution

The character encoding of the command prompt window needs to match the character encoding of the FTP session. The character encoding of the FTP session will indicate to the FTP server the character set to use to encode the filename strings. This will ensure proper storage of the filenames in the repository as well as ensure proper display of filenames in the command prompt window.

#### Possible Solution for Microsoft Windows 95, 98, 2000, NT

Windows uses Unicode as its main character set. But for compatibility with MS-DOS, traditional code pages are supported. The MS-DOS command `chcp` allows viewing and setting the active code-page for the command prompt window.

To display the number of the active console code page, use a command line to enter the following:

    C:\>chcp
    Active code page: 437

437 is the United States code page. For example, if you are using 437, you will not be able to handle German characters, ö and ß, in your FTP session. To handle German characters, the code page 1252 should be used. 1252 is for Western European languages.

To change the active code page to 1252, use a command line to enter the following:

    C:\>chcp 1252
    Active code page: 1252

Only the Oracle Enterprise Manager (OEM) code page installed with Windows NT will display correctly in a command prompt window using Raster fonts. Other code pages will display correctly in windows using TrueType fonts or Lucida Console.

To change the fonts for the window:

1. Access the Properties/Font tab.

2. Start up your FTP session in this same command prompt window.

The character encoding for the session should be set using the quote command, `setcharencoding`, to the same encoding for the command prompt window. If you change the code page with the `chcp` command, it is recommended that you use the Lucida Console font as the console font to avoid incorrect glyphs on the screen.

Use the following code to set the character encoding for the session:

    ftp> quote setcharencoding <IANA character set name>

For example:

    ftp> quote setcharencoding Windows-1252

#### Caveats

The German Windows NT 4.0 Operating System has a default active code page of 850 for the command prompt windows. 850 is the multilingual Latin1 code page. The command prompt MS-DOS FTP client does not recognize German characters using 850, so the code page should be changed to 1252, which will work properly.

#### MS-DOS Code Pages

The following tables lists some MS-DOS code pages and their corresponding language.

MS-DOS Code Page | Language
--- | ---
437 | United States
850 | Multilingual (Latin I)
852 | Slavic (Latin II)
855 | Cyrillic (Russian)
857 | Turkish
860 | Portuguese
861 | Icelandic
863 | Canadian-French
865 | Nordic
866 | Russian
869 | Modern Greek

#### Windows ANSI Code Pages

The following table lists Windows ANSI code pages and their language/font.

Windows ANSI Code Page | Language/Font
--- | ---
1250 | Central European
1251 | Eastern European using Cyrillic letters
1252 | Western European using Roman letters
1253 | Greek
1254 | Turkish
1255 | Hebrew
1256 | Arabic
1257 | Baltic
1258 | Vietnamese

### Possible Problem: Filenames Truncated or Corrupted

Filenames truncated or corrupted when using the drag and drop feature of the Web interface to upload files named with Western European characters using the Netscape browser.

### Possible Solution

Netscape uses the Windows code page for its FTP client. If the Oracle database character set is `UTF8`, the FTP server needs to have the `DefaultCharacterSet` property in the properties file must be set to `ISO-8859-1` for Western European languages.

### Possible Problem: Unable to Drag and Drop Files Through the Web Interface

Unable to drag and drop files through the Web interface using multibyte operating system.

### Possible Solution

The drag and drop feature only supports the character set (or subsets) of the Oracle iFS FTP server default character set. Check the value in the properties file.

### Possible Problem: Unable to Insert Files Through FTP

Unable to insert files correctly through FTP even if the default character set of the FTP server is the same as the client OS.

### Possible Solution

Be sure to have the `NLS_LANG` environment variable set to the same character set as the database character set. The OCI driver reads this environment variable and uses for string conversion before inserting into the database. For example, if the database character set is `UTF8`, then set `NLS_LANG=.UTF8` This is only a problem with the OCI drivers, and not thin JDBC drivers.

### Possible Problem: Unable to Perform Context Searches on Multilingual Content

Unable to context search multilingual content in a document after inserting a document into the repository through FTP.

### Possible Solution

Be sure to set the language for the current FTP session. Documents inserted via the 'put' command will have its LANGUAGE attribute set to this value.

To view the current language for the FTP session, use the following quote command:

    ftp> quote showlanguage
    226 Language English

To set the language for the FTP session, use the following quote command:

    ftp> quote setlanguage <Oracle language name>

See Also

For more information on NLS, see the Oracle8i National Language Support Guide, Release 2 (8.1.6).

## Common Administrative Errors

The following table describes some common administration problems, what may have caused them, and what you should do to correct the problem.

Problem | Probable Cause | Corrective Action
--- | --- | ---
An out-of-memory exception is raised when running a protocol | The maximum Java heap size is too low. | Increase the heap size by modifying the `-mx` setting for that particular protocol in the `IfsProtocols.def` file in the `<ORACLE_HOME>\ifs<version>\settings` directory.
Server is generally slow for read and write activity | Server memory is overcommitted. The server is excessively swapping memory blocks to disk. | Run `vmstat` and look for excessive page swapping to verify the problem. Adjust the following parameters in your database's `init.ora` file: Number of `processes` Number of o`pen_cursors` Reduce `db_block_buffers` Stop unneeded protocols. You may also need to add RAM to your server or, if you are running a single-tier configuration, reconfigure your Oracle iFS server into a two-tier configuration. For more information on adjusting the parameters in the init.ora file, see the Oracle Internet File System Installation Guide.
Server is slow only on read or search activity | Large amounts of documents have been loaded or updated and the Oracle8i Cost-Based Optimizer is using old statistics. | Run the `analyze.sql` script located in the `<ORACLE_HOME>\ifs<version>\admin\sql` directory. For more information, see the Oracle Internet File System Release Notes.
Server is slow only on content-based search activity | interMedia Text tablespaces are on the same disk as other database files. | Move the interMedia Text tablespaces to other disks. See the Oracle Internet File System Installation Guide. See the Oracle8i Administrator's Guide for more information on moving tablespaces.
interMedia Text indexes have become fragmented. | Regularly optimize the interMedia Text Oracle index `INDEXEDLOB_I`. For more information, see the Oracle8i interMedia Text Reference.
Server is slow only on write activity | Large amounts of documents are being loaded and the Redo logs are too small. | Add two or more 100 MB or larger Redo logs. See the Oracle8i Administrator's Guide for more information.
Large amounts of documents are being loaded and the Redo logs are on the same disk as the database files. | Place the Redo logs on a separate disk from the database files. See the Oracle8i Administrator's Guide and the Oracle8i Designing and Tuning for Performance Guide for more information. For optimal performance, dedicate one or more disks (and, if possible, a disk controller) exclusively to the Redo logs, and optimize the disks for sequential write activity. For example, on Sun SPARC Solaris, you may choose raw partitions or UNIX filesystems for the disks. If you choose UNIX filesystems, on Solaris 2.6, use the "forcedirectio" option when mounting the filesystems, and on Solaris 2.7 and above, use the "noatime" option when mounting the filesystems. These options should only be used if the filesystems are dedicated exclusively to the Redo logs.
Content queries through the Web and Windows return no rows. | interMedia Text indexing of the documents has not occurred. | Run `ctxsrv` as described in the Starting ifs section of the Installation Guide. (Replace with correct cross-ref).
On Windows NT, the NTFS server crashes regularly. The error log contains the following: `no ifsproxy in shared library path` `Cache performance for session cache` `CurrentSession Count=0` `HighestSession Count=0` `CurrentSession Cache=0` | ORACLE_HOME is not set correctly. | Make sure the `ifsproxy.dll` file is located in `%ORACLE_HOME%\ifs<version>\bin`.
When transferring old passwords to new schema, users do not have access to WebDAV. | Because old passwords were transferred to a new schema, existing Oracle iFS users are unable to authenticate using WebDAV. This only applies to users created before the schema upgrade. | Users must reset their Oracle iFS password, even if they keep the same password they had before the schema upgrade.
IfsProtocols server process crashes regularly or after all Oracle iFS processes are started, the IfsProtocols server dies. | After examining the IfsProtocols log, it is possible that two IfsProtocols processes were started. This can happen when the first IfsProtocols process was not shut down properly. In Oracle iFS, each IfsProtocols process is unique by identifier which is permitted by Oracle iFS, but confusing to the user. | Either start the IfsProtocols with unique names, or refer to them by their identifier. For more information, see Chapter 8, "Using Server Manager to Start and Stop Servers".
The following error message displays when trying to login to Oracle iFS: `IFS-10620: Unable to construct connection pool.` | This error indicates that Oracle iFS could not connect to the database. The possible cause was that the JDBC driver is missing from the `CLASSPATH`. | Check the JDBC driver is in the `CLASSPATH`. Access `$ORACLE_HOME/jdbc/lib/classes111.zip` to check this. Also make sure the parameter for the `DatabaseUrl` field is as follows: `DatabaseUrl=jdbc:oracle: oci8:@<tnsnames entry>`.
If a new folder is created using the Windows interface, an agent is triggered. | When a folder is created in Windows Explorer, a new file is created (testdir.tmp) and then is deleted. Windows Explorer does this to make sure the right information is available to create information inside the folder. Therefore, the agent is triggered. | No corrective action, this is the way Windows Explorer is designed to work.
Want to change the Oracle iFS system password. | Have forgotten the Oracle iFS system password. | You will need to contact Oracle Support or re-install the database. If you choose to re-install the database, you will need to make sure that you have copied any files stored in the Oracle iFS database out to a local hard drive before starting the re-install process. The re-install will result in the loss of all information currently stored in the database.

| Copyright © 2000 Oracle Corporation. All Rights Reserved. |
Library | Service | Contents | Index