.ps 55,75 .lm 10 .ap Response Logger .literal Robert B. Goldstein, Daniel P.B. Smith, Rivkah Stabiner Eye Research Institute of Retina Foundation 20 Staniford St Boston, MA 02114 (617) 742-3140 .end literal When a user logs out of VMS, the response logger is a program that queries him regarding his opinion of the response of the system during the session. The logger actually consists of 2 programs, 2 command files, and the response log itself. One of the command files is LOGOUT.COM, which replaces the default VMS logout command. The other command file partially installs the logger as a known file with world privledges. UNITS is the program that actually queries the user and writes his response to a file. The other program, RESPREPT, analyzes the response logfile and produces a report. Below are instructions for installing the response logger on your system. .list .le ;Create a directory where the response logger will live. We have been using a subdirectory of sys$manager (sys$sysroot:[sysmgr.response] ) .le ;Copy the contents of this DECUS submisssion into that directory. .le ;Create logical sys$sysresponse to point to directory where the response logger will live. ie .literal $ assign/exec/system sys$sysroot:[sysmgr.response] sys$response .end literal Remember to put this statement into systartup.com .le ;You may be able to use the .exe files that are provided here, but if you have to re-compile and/or re-link remember to link UNITS with /notraceback since it must be installed as a known file with world privledge .le ;Install UNITS as a known image. See the command file install.com that is provided here. You may be able to use install.com directly. Remember to put install.com (or it's equivalent) into your systartup .le ;Redefine the symbol LO*GOUT as follows: .literal $ lo*gout :== @sys$response:logout .end literal This will cause the command file logout.com in sys$response to be executed when a user logs out. Remember to set the protection of sys$response:logout.com (and its upper level directories) such that a non-privleded user can execute this command file. Put this redefinition of logout into sylogin.com .le ;Remember to set protections on response.log (once it is created by UNITS) so that the world can write into it. .le ;Define user categories for everyone. This step is the most tedious of all the steps since it means modifying everyone's login.com file. It is not an absolutely necessary step. UNITS will run without a user having a defined category, however the word UNDEFINED will be written to the category field in the response log file. Make up your own categories, but use them consistantly - If a user belongs to more than 1 category, then use 'general' as a category, or set his category to one that fits him most of the time. .literal ie : word11 programmer secretary rs1 rdb ingress manager faculty student .end literal To define a user category, put a line such as this one into his/her login.com file: .literal $ def sys$user_category SECRETARY .end literal .le ;Cross your fingers and go !! The most common problems are usually protection problems. Give us a call if you need help. .le ;RESPREPT - Reads a response log file and produces a report. This doesnt operate directly on response.log, but on any input filename. The reason for this is that you dont want this file locked by RESPREPT while someone else is trying to logout. Therefore, the default internal filename in RESPREPT is copyof__response.log. Also, you can get the response of individual categories using the following commands: .literal $ sear/output=secretary.log response.log SECRETARY $ run RESPREPT (give the answer secretary.log to filename prompt) .end literal .end list