Large organizations and long-time ProjectDox customers value their audit trail. Archiving the ProjectDox LogReports table enables the preserving of the information by reducing the number of records, without affecting the working database. The Microsoft SQL limits are reliably maintained by pushing the records to another database or deleting old records based upon configuration.
ProjectDox Core Tab
Shared folder named PDOXLogs has been created in the same local network.
Configure LogArchive settings on Admin>Configuration>Log tab.
The fields below are populated with the following defaults during the initial install and when a site is updated with the Updater.autosql:
LogArchiveDays=365
LogArchiveFileSize=50MB
LogArchiveTableSize500MB
LogArchiveLocation=[empty string]
LogOutput=2
3. Ensure that the Utility service is running. No specific configurations are required.
Debug.EventDate>= 2 days
JPQueueBatch.DateUpdated >= 14 days
JPQueueTickets.DateCreated >= 14 days
· The above days are how long the records will exist in the database before being deleted. These days are not configurable.
If conditions that have been set are met, then PDFs will be generated in the specified shared location.
Archive Selection Process
If LogArchiveLocation is an empty string, then the archive process is ignored
If the LogReports.UsageDate >= LogArchiveDays, then archive the old records. If LogArchiveDays=0/empty, then ignore this check.
If the LogReports table size is >= LogArchiveTableSize, then archive starting with oldest records first. This is the case even if LogReports.UsageDate is not >= LogArchiveDays. If LogArchiveTableSize=0/emptythen ignore.
When archiving records, the service will bring the table under the LogArchiveTableSize value (less 10%). This will prevent data from continually being archived.
Archiving takes place in the background, 10,000 records at a time, to ensure ProjectDox performance is not hindered.
Once the text has been written to the log file successfully then those records are batch deleted from the LogReports table.
Archive Log
Files are archived to LogArchiveLocation which is the storage path for the log files.
Naming convention is LogReports_mm_yyyy_[SEQUENCE #].pdf.
The complete record from the LogReports record is a PDF that will include raw HTML tags and not look like it would in a browser.
If LogArchiveFileSize is 0/empty then it will be written until it reaches the max esignation, the default is 50 MB. An example of these files would be 04_2016_0.pdf (50 MB), 04_2016_1.pdf (50 MB), 04_2016_2.pdf (<50 MB). 04_2016_2.pdf is the current file being written to until it reaches 50MB and then 04_2016_3.pdf would be created.
Determines error log options.
JobProcessorLogURL |
URL to Job Processor Log. Example: http://servername:7070/log/ |
LogArchiveDays |
Number of days that should pass from creation date in order to move record to archive. |
LogArchiveFileSize |
Size in MB of a single archive file. |
LogArchiveLocation |
Physical path to a folder to store archive files in. |
LogArchiveTableSize |
Size of table in MB when archiving process will be started. |
LogOutput |
Determines where to log ProjectDox errors. Critical errors are written to the ProjectDox Event Log in Event Viewer. Default is 2. 0 = Disabled 1 = Trace – this option sends log output to the .NET trace. Trace must also be enable in web.config or enabled from the SystemConfig.aspx page. 2 = DB – This is the default setting. It will add log entries to the Debug table in the database |