Handle System Banner
Previous: Other Tools and Features       Next: Security           Table of Contents

8. Understanding the Server Directory

The handle server home directory contains a number of files. This chapter explains the function of each.

access.log

If you enabled "log_accesses" on any of your handle server interfaces, all requests sent to those interfaces are logged here. Below is a sample line from this file.

 
10.27.4.211 TCP:HDL "Tue Dec 18 18:48:33 EST 2001" 101 1 111ms 200/8

The first column is the IP address of the host that made the request. The second column shows the interface the request was made on. Next comes the date and time the request was made. The time is followed by the op code of the request. This indicates the handle operation requested. In this case the op code is 101, or delete handle. The op code is followed by the rc code which indicates the response from the handle server. In this case, the rc code is 1, or success. Here is a list of possible op and rc codes:

OP Code RC Code
1 - Query Handle 1 - Success
100 - Create Handle 2 - Error
101 - Delete Handle 3 - Server Too Busy
102 - Add Value 4 - Protocol Error
103 - Remove Value 5 - Operation Not Supported
104 - Modify Value 6 - Recursion Count Too High
105 - List Handles 7 - Authentication Error
200 - Challenge Response 100 - Handle Not Found
201 - Verify Response 101 - Handle Already Exists
400 - Session Setup 102 - Invalid Handle
401 - Session Terminate 200 - Values Not Found
402 - Session Exchange Key 201 - Value Already Exists
1003 - Backup Server 300 - Out of Date Site Info
301 - Server Not Responsible
302 - Service Referral
303 - Server Backup
400 - Invalid Admin
401 - Insufficient Permissions
402 - Authentication Needed
403 - Authentication Failed
404 - Invalid Credential
405 - Authentication Timed Out
406 - Authentication Error
500 - Session Timeout
501 - Session Failed
502 - Invalid Session Key
504 - Invalid Session Setup Request

After the rc code, the log entry shows the number of milliseconds the server took to respond to the request. This is useful for gauging the performance of a handle server. The final column of the log entry indicates the handle the request was for(if applicable).

error.log

As suggested by its name, this file contains a log of server errors.

config.dct

This is the server configuration file. See 5. Advanced Server Configuration, for more information.

$HOME/root_info

The `root_info' file contains the HS_SITE records for the global handle servers, necessary for handle resolution. This file isn't actually stored in the handle server directory, but in the subdirectory `.handle' under the home directory of whatever user runs the handle server.

cache.jdb

This is a database used by the server as a temporary handle cache.

handles.jdb

This is the main database for the handle server. It stores all handles and handle values.

nas.jdb

This is the naming authorities database for the handle server. It stores all naming authorities that are homed to the server.

dbtxns.log

This is a log of database transactions. It is used for disaster recovery. It may grow large in size, and it may be deleted at any point to free up disk space, but there will be no way to recover if the handle database is corrupted.

See Backing Up a Server, for more information.

siteinfo.bin

This contains the HS_SITE record for this server. It is stored in the handle for any naming authority that this server is responsible for.

admpub.bin, admpriv.bin

These are the public and private keys that were created for the administrator during the installation process.

pubkey.bin, privkey.bin

These are the public and private keys for the server. The public key is stored in the servers HS_SITE entry. The private key is used to sign responses to requests.

txns

This directory stores the server transaction queue. This keeps track of handle administration operations in order to replicate to secondary servers.

The transaction queue is separated into separate files so that it will be easy to wipe out old transactions. The old files may be deleted in order to free up disk space.

Individual records within each transaction log look something like this:
 
<CRLF><txnID>|<action>|<date>|<hashOnAll>|<hashOnNA>|<hashOnId>|<handle-hex-encoded>|


Previous: error.log       Next: Security           Table of Contents