Apache Server 1.3.x on Linux, Sun Solaris, FreeBSD, or Mac OS X
Detailed instructions for installing and configuring Sensor for an Apache Server 1.3.x on RedHat Linux 7.x or later, SUSE Linux 9.x or later, Sun Solaris SPARC 2.6 or later, Sun Solaris x86 9 or later, FreeBSD 4 or later, or Mac OS X PowerPC.
The program files for Sensor are packaged in an installation file that you obtain from the Adobe download site. If you do not already have the Sensor installation file for your particular web server, download it (or obtain it from your Adobe representative) before you begin the following procedures.
To install and configure Sensor, you must perform the following high-level steps:
Install the Program Files
Instructions to extract and install the program files for Sensor to the server machine.
- Log on as the root user or as a user with root authority.
- Decompress and unpack the installation file using the following command:
- On Linux:
tar -zxf installationFilename.tar.gz
- On Solaris:
unzip -d installationFilename.tar.gz tar -xf installationFilename.tar
- Copy the unpacked program files to the directories identified in the following table:
|mod_visual_sciences.so||The collector load module||apachePath/libexec|
|The transmitter program|
|txlogd.conf||The Sensor configuration file||/etc|
|trust_ca_cert.pem||The certificate used to validate the digital certificate that Insight Server presents during the connection process||/usr/local/visual_sciences|
The installation package contains a spreadsheet file called TestExperiment.xls. This spreadsheet is a tool that architects use to configure a controlled experiment. Sensor itself does not use this file, so it is not necessary to install the file on the machine where Sensor is running (although you may choose to do so). You might want to, instead, copy the file to a location where your architects can access it or simply extract the file from the installation package as needed. For more information about controlled experimentation, see the Insight Controlled Experiments Guide.
Permissions on the Program Files
Incorrect permissions on the program files cause the majority of problems encountered when installing Sensor.
Please make sure that you set the permissions exactly as stated in this section.
By default, the program files in the tar file have the following permissions. Depending on how your system is configured, these settings might be altered (unmasked) when you extract the files. To reset the permissions to the recommended default settings, use the chmod commands below. Check that the directories into which you have installed the files permit at least this level of access.
rwx r-x r-x
rwx --x --x
rw- rw- r--
rw- rw- r--
Edit the Sensor configuration file
The txlogd.conf file contains the configuration parameters for Sensor.
You must edit the file to specify, among other things, the size of the disk queue, the address of the Insight Server, and the ID that will be attached to the data produced by this sensor.
The configuration file contains required parameters and optional parameters.
- Required parameters are settings that you must specify when you install Sensor. Without these settings, Sensor does not run successfully.
- Optional parameters are settings that default to pre-defined values (which you can modify) or enable optional features.
To edit the Sensor configuration file
- Open the /etc/txlogd.conf file in a text editor and set the required parameters as well as any desired optional parameters.
- Save and close the file.
Start the Transmitter and Create the Disk Queue
Instructions to create the disk queue after you configure the txlogd.conf file.
- If the directory in which the disk queue resides does not already exist, create it. Make sure that the directory provides both the collector module and the transmitter program with read/write access to the file.
- On the computer where Sensor is installed, execute the following command to start the transmitter:
/usr/local/bin/txlogd -ic -f /etc/txlogd.conf
- The “i” option in this command starts the transmitter in interactive mode. This mode displays transmitter messages on the screen and also enables you to interact with the transmitter using keyboard commands.
- The “c” option directs the transmitter to create the disk queue.
- The “f” option specifies the location of the configuration file.
- Verify that the transmitter has created the disk queue in the location specified in the QueueFile parameter and of the size specified in the QueueSize parameter.
- If the queue has not been created correctly, type Ctrl+C to terminate the transmitter, then do the following:
- Examine the txtlogd.conf file and verify that the QueueFile and QueueSize parameters are set correctly.
- Check that the device to which the disk queue is assigned is operational and has sufficient space available to hold a file of the size specified in the QueueSize parameter.
- Make any necessary corrections and repeat this procedure.
Add the Collector to the Web Server
For Apache servers, the collector is a dynamic shared object that you load into your web server process.
To add the collector to your web server, you must edit the httpd.conf file as described below and restart your web server.
If Sensor is capturing data for multiple web servers on the server computer, you must perform the following procedure for each web server.
- Using a text editor, open the httpd.conf file for the web server whose events Sensor captures.
- Add the following lines to the end of the file:
LoadModule visual_sciences_module libexec/mod_visual_sciences.so VisualSciencesConfig /etc/txlogd.conf AddModule mod_visual_sciences.cThese lines are case sensitive. Type them exactly as they appear above.
- Restart the web server. The collector is loaded with the web server and will begin collecting event data and writing it to the disk queue.
Test the Sensor
Start the transmitter and verify that it can successfully connect to the Insight Server and transmit event data to it.
To verify that the transmitter can successfully send event data to the Insight Server, make sure that the target Insight Server is installed and running before you begin the following test.
- If the transmitter is not already running, restart it using the following command:
/usr/local/bin/txlogd -i -f /etc/txlogd.conf
- Open a browser (on any machine) and request a page from the web server on which Sensor is running (be sure to select a page that Sensor is monitoring).
- After you issue the request, check the transmitter’s console for messages indicating that it is sending event data to the target Insight Server.
- If Sensor is not transmitting data successfully, verify that:
- The target Insight Server is running.
- The ServerAddress and ServerPort parameters are set correctly in txtlogd.conf.
- If you specified ServerAddress using a server name, try using its numeric IP address instead. The value of the CertName parameter matches the common name that appears on the digital certificate of the target Insight Server exactly.
Add the Transmitter to Your System Startup Script
Information to ensure that the transmitter loads automatically when the web server machine is restarted.
Add the following command (which launches the transmitter) to your system startup script.
/usr/local/bin/txlogd -f /etc/txlogd.conf
This command starts the transmitter as a daemon. Operating and error messages that the transmitter generates are written to syslog.
Some Solaris users might encounter an “unable to acquire mutex” error. For Sensor to function properly on these systems, the following line needs to either be added to or edited in the file /etc/system: >
semsys:seminfo_semmnu=1024 ```> The default Solaris setting is 60. Based on tests conducted with Sensor, which uses three semaphores for each instance, Adobe recommends that you use 1024 as your setting. This number is high enough for Sensor to function along with any other applications on the server that may require semaphores, but does not affect performance. To support this recommendation, please note that Adrian Cockcroft stated the following in his book Sun Performance and Tuning (Prentice Hall, October 1994): “Databases tend to use lots of shared memory and semaphore settings. These do not affect performance; as long as they are big enough, the programs will run.”