JetTrac LogArchive


The JobController log file and the TransactionHistory file will keep appending forever. We want a way to keep both of these files to a reasonable size. We came up with server-based archiving with JTLogArchive of all log files used by JetTrac Field Service for proper management of these files.

Technical Support:

If you need assistance in installing and configuring JetTrac LogArchive™, call Pro Technology Automation, Inc. at 805-527-1248 or email us at Please note that the JetTrac LogArchive™ license fee does not cover configuration services and technical support so there may be an additional charge. Please ensure you read these instructions carefully before calling for technical support.

How to run JetTrac LogArchive:

Typically you would setup a scheduled job in the JFServer.ini file (Part of JetTrac JobController) to run the JetTrac LogArchive program.

To run JetTrac LogArchive you will need these files in the same folder:

  • JTLogArchive.exe
  • JobController.log
  • Backup (folder)

Executable files should not be edited for any reason.

Default Functionality:

Keeps system log files organized and backed up on a scheduled basis.

20170316112111 JetTrac LogArchive 1.0 (August 24, 2015) : info Input log cleared. Archive saved to Backup\Output20170316_112111.log

20170316112111 JetTrac LogArchive 1.0 (August 24, 2015) : info Program terminated with normal status.

Job Step Configuration Window in JobConfig for JetTrac LogArchive:

When setting up a job step using JTLogArchive in JobConfig the only lines of the config you need to worry about are the first two and the last two, the Config file, Differences XML, the Input PDF and the Output PDF. If left as an asterisk * the input will be whatever file is in the data folder that triggered the job running. This works well if it’s the first step but if the input is also the output of a previous job step you would need to specify the fully qualified path of the input pdf you want to add highlights to. All other fields should be filled with the fully qualified path to the intended file. Eg: C:\JetTrac\…\input.pdf
In JobConfig, file paths entered should not be in quotes.

As with all modules, there is a dropdown to select whether or not the job should stop completely if this step fails. If you select Yes, any error will terminate the job process and write to the log file what happened, if no, then the job will try to continue anyways. However if any steps further down the line rely on the output of a job set to not stop on error, they may not work properly.

For more specifics go to the JetTrac Field ServiceJobConfig page.

JetTrac LogArchive Command Line:

JTLogArchive.exe [input log file to archive] [output path] [JobController log file]

“C:\JTLogArchive.exe” “C:\JobController.log” “C:\Backup\Output.log” “C:\JTLogArchive.log”

The command line is comprised of four parts starting with the JTLogArchive executable file, followed by the input log file, the output log file destination, and ends with the log file for JTLogArchive. Each part is the fully qualified file path, in quotes, separated by a space (it doesn’t matter how many).

Additional Notes:

The program puts an entry at the beginning of each row with a Date/Time Stamp saying that it was running LogArchive so you could tell exactly when it was archived.

Typically this module will be used in a scheduled job to backup the JobController.log file. This is to minimize the size of the file as it can keep growing indefinitely if we do not backup and delete old log data. The typical set up for a scheduled LogArchive job would be to run JTLogArchive using C:\JetTrac\JobController\Server\Log\JobController.log as the input (set the output to wherever you wish to store the backup) and then a JTFileDelete step immediately after to delete C:\JetTrac\JobController\Server\Log\JobController.log. If editing the JMD directly the following would be the setup for the job:

Here is the task entry to copy a file in JobController:

!x JTFileCopy * JBC.COPY “””@InFile.”” “”@OutFile.””” “Copies specified file to another file with a different name”

Here is the job step entry:

!f JTLogArchiveJob * * * * * JTLogArchive C:\JetTrac\JobController\Server\Log\JobController.log C:\JetTrac\JobController\Server\Log\Backup\JobController.log S ” “

or if you want to maintain all previous log files then in the !f you can specify date and time variables in the file you are copying to, like this:

!f JTLogArchiveJob * * * * * JTLogArchive C:\JetTrac\JobController\Server\Log\JobController.log C:\JetTrac\JobController\Server\Log\Backup\JobController_@JobTimeYear.@JobTimeMonth.@JobTimeDay._@JobTimeHour.@JobTimeMin.@JobTimeSec..log* S ” “

Here is the task entry to delete a file in JobController:

!x JTFileDelete * JBC.DELETE “””@MDFName.””” “Deletes specified file”

Here is the job step entry:

!f JTLogArchiveJob * C:\JetTrac\JobController\Server\Log\JobController.log * * * JTLogArchive * * S ” “