wiki:UnifiedLogger

Version 1 (modified by jdalbey, 7 years ago) (diff)

draft

Unified Logging Service

We've created a subsystem of the simulator to provide a real time monitor of student interactions with the system for instructors to view to facilitate assessment of student actions.

We call it a "unified" logging service because it combines logs from several different sources into a single log. Currently it combines input from:

  • CAD comment logs (generated by CAD server)
  • CMS messages (generated by CPTMS)

and in the near future

  • HAR messages (generated by CPTMS)
  • Activity Logs (generated by Activity Logger web app)
  • Instructor Comments & Evaluations (generated by EI Notebook)

The output is a CSV file, unifiedlog.csv, which merges all the previous logs and orders them by simulation time.

A separate web app, unifiedlogmonitor.html, runs in a web browser to display a nicely formatted version of the CSV file.

Configuration

A single configuration file, loggingservice.cfg, resides in the simulation config folder.

[Paths]
UnifiedLogPath = webapps/dynamicdata/

The only option is to specify the path to the folder in which the output CSV file is to be created. This will change between dev and production systems; the production system will expect the file to exist on the apache server.

Packaging

The source code is in the src/python/unifiedlogger folder. The package.sh script found in that folder should be run to package the source files into a zip file and place it in the deploy folder.

Testing

Attached to this page are test data files: CADlogTestdata.txt and CMSlogTestdata.txt.

Save the first one in the trunk folder and rename it to CADcomments.log

Save the second one in webapps/dynamicdata and rename it to cms_messages.json

Open a terminal in the trunk folder and start the application: python deploy/unifiedlogger.zip

The application will echo logs to the console for diagnostic purposes.The expected output file is unifiedlog_expected.csv (attached).

Attachments