Home
TABLE OF CONTENTS - Enterprise 24x7 Inc.
Contents
1. 16 II B NIA AC CL SET a ar O ha a 18 OO 18 d eee 18 ae ese ere enema cect tee ud ta can ee ee 21 4 VALIDATION TESTING AND PERFORMANCE ANALYSIS 22 5 CONCLUSIONS AND FUTURE 23 att 24 LIST OF FIGURES Figure 2 1 Svstem Structure e l PON 2 figure 2 1 1 Lab assistant 5 ride ibl 3 Figure 2 12 Reader Interface SIUC G s Mic iii a bcs 4 bipure 2 5 1 DBM acer Meri i 7 Figure 3 6 1 Reader Graphical User Interface uere ether 15 3 06 22 Help IRR 15 Fiore oi Contisuratioti b e 17 Figures 3 72 Browse window 17 figure 3 10 b Report 19 figure 3 0 25 Report Tool Daily REPO id uber fa 19 Figure 5 10 Report Tool bet a a 20 Report Tool Yearly Repor beniren anode ci odo sec 20 a BA 21 Figure 3 11 2 Ghostview look of the printed output ss see
2. 0 35 22 Wed Ape Ore Wed Apr or 2 0 37 38 gv out ps File State Landscape 1 000 Letter out ps Mon Mar 27 1558012000 Open Print All RESULTS Print al LAST QUERY Print Marked LOCAT ION Save FIRSTNAME FROMDATE 3 20 2000 0 0 0 FROMDA 0 Save Marked TODATE OTAL TOT 23 ID FIRSTNAME LASTNAME DATEIN DATEOUT INTERVAL 5894371000488521 RYAN LANE Tue Mar 21 19 07 24 EST 2000 Tue Mar 21 19 07 33 EST 2000 0 0 9 5894371000186042 DAVID HAESKE Tue Mar 21 18 25 57 EST 2000 Tue Mar 21 20 00 32 EST 2000 0 34 34 5894371000772205 ANTHONY GIORDANO Tue Mar 21 20 02 12 EST 2000 Tue Mar 21 20 21 49 EST 2000 0 19 36 5894371000744519 DONCME GAO Wed Mar 22 08 58 36 EST 2000 Wed Mar 22 09 34 54 EST 2000 0 36 17 5894371000893043 KENNETH DECOTEAU Wed Mar 22 10 02 19 EST 2000 Wed Mar 22 10 57 22 EST 2000 0553 5894371000795255 WILLIAM LIEBLICK Wed Mar 22 10 56 56 EST 2000 Wed Mar 22 11 08 43 EST 2000 0 11 46 5894371000731554 FETER GAVIN Wed Mar 22 12 05 42 EST 2000 Wed Mar 22 12 27 03 EST 2000 90 21 20 5894371000875453 CUY DORMELIS Wed Mar 22 12 35 30 EST 2000 Wed Mar 22 13 19 08 EST 2000 0 43 38 5694371000776214 MATTHEW HOHMEISTER Wed Mar 22 13 12 13 EST 2000 Wed Mar 22 13 23 02 EST 2000 0 10 49 5894371001466302 DAVID MCDONALD Wed Mar 22 13 46 56 EST 2000 Wed Mar 22 14 00 55 EST 2000 0 13 58 5894371000791585 IOHN WARDROP Wed Mar 22 13 55 03 EST 2000 Wed Mar 22 15 15 53 EST 2000 1 214
3. FIRSTNAME varchar2 30 LASTNAME varchar2 30 DATEIN date DATEOUT date INTERVAL varchar2 15 LOCATION varchar2 15 Oracle statement executed to create this table with Oracle s sqiplus utility 15 create table lablog ID varchar2 17 FIRSTNAME 2 30 LASTNAME varchar2 30 DATEIN date DATEOUT date INTERVAL varchar2 15 LOCATION varchar2 15 A unique composite index made of ID and datein fields has been created to avoid the presence of duplicated entries Oracle statement executed to create the index with Oracle s sqiplus utility 15 create unique index IdDate on lablog ID datein This way if the index 1s violated Oracle does not accept the record The server listens at the address 128 186 121 41 on port 1521 and an Oracle user is created to access the table Oracle by default accepts maximum number of open cursors equal to 50 for a process or user The Administrator can increase this number in the Ora ini file Currently Oracle server is set up with this value and when SQL statements are executed this value is taken into consideration 2 6 Report Tool Report Tool is designed to provide analvsis of data collected bv Reader Interfaces Reader Interface writes on a text file svstem and the Report Tool reads from these same files exported to the host it resides Report Tool looks for the log files in a subdirectory structure of logst System FILESEPERATOR location Therefore eith
4. make the logs available exporting readerlog to cs fsu edu To do this edit etc exports to add the following readerlog cs fsu edu ro backup no root squash exportfs a Then configure the mounting of the directory 3 4 Reader Interface Installation on Red Hat Linux source files to the installation directorv e if different from the default edit ReaderData java to set the location the program is installed in The default is usr local reader e make e Setup the Reader Interface configuration file The default configuration file 15 portconf txt e make sure the default usr local reader run 15 pointing to the right locations rwxr xr x 1 reader reader 1474 Mar 23 12 03 usr local reader run The following is the default run file included with the reader interface bin sh PATH PATH usr X11R6 bin export PATH xset s off ust X11R6 bin RunWM Fvwm95 amp JAVA HOME usr local java echo JAVA HOME JAVA HOME CLASSPATH S JAVA HOME V lib classes zip usr local reader echo CLASSPATH CLASSPATH echo Starting the reader CMD JAVA HOME V bin java classpath CLASSPATH UIWindow CMD 3 5 DBManager Interface and Report Interface Installation e Install JDK 1 2 2 for Win 95 98 NT Solaris or Linux depending on the host operating system used e Copy the software to a directory 3 6 Reader Graphical User Interface No login procedure 1s required for the lab
5. Graphs Users TOTALS hour TIME 21 33 24 TOTAL Figure 3 10 2 Report Tool Daily Report Feports majors majars 3 31 1999 WED 1 31 199 ey Daily Compare majors Daily 3 31 1999 Graphs Users ID 5894371000 5894371000 5894371000 5894371000 5894371000 5894371000 5894371001 58984371000 5894371000 5894371000 5894371000 5894371000 5894371001 5894371000 5894371000 5894371000 FIRSTNAME AHMAD A ANNA ALAN D DAVID MARC JOHN C DAVID MICHAEL R IPISU PATIR MICHAEL A JAMES LANCE TILAK R DONGMEI MOSHE KRISTOFER LAST NAMIE BABE SUEN WORKMAN EVANS JR DAE IMEDONALD DENOVO WILSON YAMLEWEMN MADAM GROSSMAN TOMES DAT EIS Wed 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Marl Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Mar 31 TIME 21 33 24 TOTAL DQATEQUT Wed 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed 31 Wed Mar 31 Wed Mar 31 Wed Mar 31 Wed 31 Wed Mar 31 Wed 31 INTERVAL 0 0 2 o 14 15 2 10 1 0 0 0 14 39 0 35 42 1
6. Second Edition Sun Microsystems Addison Wesley 1999 Dr Satvaraj Pantham Pure Swing SAMS 1999 Kevin Loney et al Oracle8I DBA Handbook Oracle Press Osbore McGraw Hill 2000 James R Groff et al The Complete Reference SQL Osborne McGraw Hill 1999 Red Hat Official Web site http www redhat com User s Manual Magnetic Stripe Reader Model 150 American Microsystems IconBazaar Computer Icons http www iconbazaar com
7. University offers its students the ability to use several computer labs with majors lab hosting about 50 computers Lab assistants monitor computer labs to assist in user support and to validate access to the labs In the past the validation process consisted of manually recording student name time in and out on paper The collected data was easily lost unorganized and difficult to analyze Scope of this project addresses the issues of automating the card validation process and therefore ensuring efficient retrieval and subsequent analysis of student access to the labs by recording data in a reliable format The nature of the environment in which the system is implemented in brings the following specifications to the project Ease of use Interface should be very simple to allow fast validation by acquiring the information from the student s FSU ID and giving instant visual feedback to the user The interfaces that provide analysis should give quick responses Simplicity reinforces the tendency to use the application Robustness Computer labs are open more than 8 hours a day The application must run consistently with very little maintenance requirements Accuracy Recorded data is adopted for statistical analysis taking into consideration the capacity of the lab to provide guidelines in determining future revisions of the labs Therefore collected data should be reliable Security The components sensitive to data collection or data privacy
8. example entries from the passwd and group files etc passwd monitor xxxxxxxxxxxx 500 501 Lab Monitor home monitor bin bash svstem xxxxxxxxxxxxx 503 100 home svstem bin bash reader 502 500 Card Reader home reader etc group reader 500 monitors x 501 Setting the permissions on the port the card reader hardware is connected to Change the group ownership to monitors and give read write permissions to the group chgrp monitors dev ttySO chmod g rw ttySO crw rw lroot monitors 4 64 Jan 20 16 48 ttySO Setting the clock Make sure xntpd is installed and running Configure the host s clock to synchronize with a trusted server such as xi Install URW fonts if not installed cd usr X11R6 lib X1 1 fonts tar xvzf urw fonts tar gz chkfontpath add usr X 1 IR6 lib X11 fonts URW Creating the directories e readerlog create readerlog directory and set the ownership and permissions on the directory mkdir readerlog drwxrwx x 2root monitors 2048 Apr 30 07 38 readerlog readerlog contents will look as the following rw r r 1 monitor monitors 0 Apr 30 14 48 majors log rw r r 1 monitor monitors 12716 Mar 2 00 04 majors03011999 1og e assuming the application is going to be installed in usr local reader create usr local reader or link usr local reader to the newest version of the software and set the ownership and permissions on usr local reader usr local should look as follows Irwxrwxrwx lroot root 13 Feb 9 1999 ja
9. of values for the hour minute and second fields are 00 23 00 59 00 59 Anything at midnight 00 00 00 or after midnight should be specified with H flag As a special case anything between 24 00 00 and 24 59 59 1s treated as after midnight and does not require the use of flag e The sign is assumed to be introducing comment on that line Below 15 a complete sample configuration file This should be the lab name the card reader 1s collecting information for LOCATION majors LOGDIR readerlog This 1s the port the card reader is physically connected to PORT dev ttyS 1 DBENABLE true SERVERHOST 128 186 121 41 SERVERPORT 5555 SCHEDULE Mon 08 00 00 00 30 00 Tue 08 00 00 00 30 00H Wed 08 00 00 00 30 00 Thu 08 00 00 00 30 01 Fri 08 00 00 18 30 00 Sat 08 00 00 18 30 00 Sun 08 00 00 00 30 00 Settings PORT jdevjtivso LOGDIE possess B Browse DEEnable SERVERHOST SERVERPORT 7 Disable 228 186 121 41 8555 SCHEDULE OPENING TIME CLOSING TIME MON 07 joo MESS cancel Figure 3 7 1 Configuration Tool Open 16 BE psc SOCKET 1 0 c3 aw 1 1 7 av 1 2 conftaol av 1 3canftaol av2 2 File logs Open Files af type Files 1 1 Cancel Figure 3 7 2 Browse window 3 8 DBManagerServer DBManagerServer should be
10. should be protected Support to monitor Security Dedicated personnel to investigate cases of theft or damaged equipment can use the collected data Student s ID is required to enter the lab and must be recorded by the program Ease of Installation The program should be configurable to accommodate usage in different locations Platform independence Computer Science Department maintains different operating systems WindowsNT Server 4 0 Unix Solaris Red Hat Linux The system should support platform independence and provide a basis to easily upgrade the components to work in different platforms Supervision from a remote location A feature to monitor lab usage computer labs 2 SYSTEM DESIGN AND IMPLEMENTATION Implemented as a Java tool suite the system constitutes the following modules Figure 2 1 e Reader Interface e Configuration Tool e imitDB Tool e DBManager Interface e Report Tool e Query Tool CONFIGURATION 9 TOOL ge Majors A xi cs fsu edu Figure 2 1 Svstem Structure The svstem 15 supported several helper components Student provides student object structure The supported fields are cardnum student s card number name student s name lname student s last name datein the date and time the student came in dateout the date and time the student left labname the lab the student was in intervalStr the length of time the student stayed in hour minutes seconds forma
11. the query 15 made and the results returned by Oracle are displayed on a table QueryForm implements a Print function to create the pages containing the input query and the results for printing This function is built as a thread allowing the user to continue with other query requests SwingWorker class provided by Sun is used to execute the actions performed on the interface on a thread therefore allowing better rendering of the graphical interface The form also provides a text area to permit an administrator familiar with the table structure and SQL to construct individual queries ProgressClip a class implementing an animated progress bar by painting itself periodically is used on the form s interface as a visual guide to inform the user that the program is busy performing the request 3 USER AND MAINTENANCE DOCUMENTATION 3 1 Hardware Specifications Reader Interface Hardware e Acard reader hardware configured to return the account number field and the name field and to send a carriage return at the end of each field Currently available card reader hardware is Model 1500 Microscanner decoder and Magnetic Stripe Reader from American Microsystems A 9male 9female RS 232 cable is required to connect the decoder to the PC The 9 pin male end is connected into connector labeled TERMINAL on the decoder and the other end is connected to the serial port either COM1 or COM2 on the PC Magnetic Stripe Reader is connected into the circula
12. 0105 463 COPELAND Thu Apr 20 00 09 5 5894371000205 206 6 SARAH R Thu 20 0D 09 5 5894370000549019 MATTHEW Thu Apr 20 00 09 5 5894371000268956 MICHAEL L JERNIGAN Thu Apr 20 00 09 5 1894370000317163 JULIO CHIONGJR Thu BEDI 5894370010059850 SCOTT G IThu Apr 20 02 44 5 see 5894371000133598 CASIMIRG Thu Apr 20 04 45 20 5894370000396841 TANYA J m Thu Apr 20 02 45 Bees IGREGORY Thu Apr 20 02 45 1 H 89437100028361 17 7 LUCKY 5 IBS Thu Apr 20 02 45 2 5894371000772221 JOSEPH Thu Apr 20 02 45 3 E 5694371000035819 JEFFREY R Thu Apr 20 02 45 4 CardReader Help CARD READER USAGE INFORMATION Card Reader Software is designed to automate the lab access walidation process with FSU ID sign in and sign out components lard Reader Software mard Scanner lagaing in software does not require the lab assistants ta login The application can be restarted by pressing CTRL ALT Bakspace keys all at the same time student sign in and sign aut software allows wou to signin ar sign aut a student in TWO ways l Swipe the FSU Student ID card using the Card Scanner This method is preferred because it autamates the sign in and sign aut process When the FSU ID card is swiped the software reads all the Necessary information about the student from the Card Scanner En
13. 19 26 1 52 48 10 47 10 1 1 51 0 560 0 25 50 1 46 15 10 28 19 3 25 35 19 25 23 illu Figure 3 10 3 Report Tool Users table majors majars 4 19 1999 APR Yearly Yearly Ed Compare majars 1999 Graphs jusers TIME 21 32 20 TOTAL 2584 Figure 3 10 4 Report Tool Yearly Report 3 11 Querv Tool Querv Tool allows the user to retrieve records that match the given criteria Figure 3 11 1 users with the appropriate permissions should use this interface to protect data privacv The user can take advantage of the pre structured dvnamic querv that allows the specification of the location student ID name and time interval in anv combination or build an SQL statement and press the Run button The pre structured dvnamic querv allows the user to enter a partial value of a location ID or name When fields are left blank all the entries with zero or more characters match that field The query is built to include all the records that contain dates that match values greater than or equal to FROM DATE field and less than or equal to TO DATE field If any of the date fields are left blank by clicking the Reset button then all the entries matching the remaining date criteria as mentioned above are displayed Therefore if both date fields are left blank all the records matching any date will be considered When Query or QueryAppend buttons are clicked the records are displayed in a table
14. 9 5894371000385123 MARC KRUZA Wed Mar 22 14 04 40 EST 2000 Wed Mar 22 14 19 23 EST 2000 0 14 43 5894371000573130 JAMES WILSON Wed Mar 22 14 53 11 EST 2000 Wed Mar 22 15 16 51 EST 2000 0 23 39 5894371000561913 CONRAD CHIN Wed Mar 22 15 16 58 EST 2000 Thu Mar 23 00 30 00 EST 2000 9 13 1 5894371001492290 JIAN XIA Wed Mar 22 15 21 55 T 2000 Thu Mar 23 00 30 00 2000 9 8 4 5894371000385123 MARC KRUZA Thu Mar 23 13 24 03 EST 2000 Thu Mar 23 13 26 37 EST 2000 0 2 33 5894371000411523 EDWIN MELENDEZ Thu Mar 23 13 24 06 EST 2000 Thu Mar 23 19 25 45 EST 2000 6 1 39 5894371000744519 GAO Thu Mar 23 18 37 17 EST 2000 Thu Mar 23 18 44 06 EST 2000 0 6 49 5894371000772205 ANTHONY GIORDANO Thu Mar 23 18 43 27 EST 2000 Thu Mar 23 19 25 43 EST 2000 0 42 16 5894371000016991 JASON SWEETERS Thu Mar 23 18 44 33 EST 2000 Thu Mar 23 19 25 36 EST 2000 0 41 3 5894371001434722 STEPHEN ROBERTS JR Thu Mar 23 19 48 44 EST 2000 Thu Mar 23 23 56 38 EST 2000 4 7 54 5894371001441784 WEN ZHANG Thu Mar 23 21 07 19 EST 2000 Thu Mar 23 23 56 43 EST 2000 2 49 24 5894371000772205 ANTHONY GIORDANO Thu Mar 23 22 22 48 EST 2000 Thu Mar 23 23 14 35 EST 2000 0 51 46 Figure 3 11 2 Ghostview look of the printed output 4 VALIDATION TESTING AND PERFORMANCE ANALYSIS Reader interface has been running for a year without interruption Magnetic stripe reader 15 sensitive to physical impact and at times requires replacement More than 9000 records were collected in one year The hard
15. A JAVA TOOL SET FOR MONITORING LAB AT FLORIDA STATE UNIVERSITY By Esra Erimez TABLE OF CONTENTS ll LS MOG ORE emi i IV HON 1 2 SYSTEM DESIGN 255 2 Zu Reader a a taa d 3 22 Contipuradon a 6 2 35 DBM3naser Intel fae 6 Mete a ES 8 a D T PTS 8 DOIN OU ia i g 9 PATERNA 10 3 USER AND 2 10 Jde Hardware Spe i OMS tea 10 3 2 al Specifica ONS de epe 11 3 3 Reader Interface Environment Set Up on Red Hat Linux 11 3 4 Reader Interface Installation on Red Hat 14 3 5 DBManager Interface and Report Interface Installation 14 2 0 Reader Graphical User 14
16. BCron removes the lock file and goes back to sleep OraConnector implements the functions to establish a connection to the Oracle database to add records to the database and to perform queries on the database OraConnector adds records executing an SQL statement constructed as the following INSERT INTO tablename VALUES id firstname lastname DATE datein timein MM DD YY Y Y HH24 MESS DATE dateout timeout MM DD YY Y Y HH24 MI SS Use of DBManagerServer prevents the slow down of the client system performance handling database related transactions away from the client The unavailability of both the Oracle server and DBManagerServer do not influence the Reader Interface 2 4 initDB Tool initDB tool is built to initialize and update Oracle table ablog to contain the logged user data as needed InitDB uses DBinit class Once started DBInit reads all the files contained in the directory pointed to at the command line opens each file one by one and uses OraConnector to connect to the Oracle database to send a series of SQL INSERT statements to populate the database and then to close the connection DBInit does not delete any records from the database To avoid unwilling errors a SOL DELETE statement must be specifically run to remove the records from the table 2 5 Oracle Server 8i An Oracle database is used to host the lablog table lablog 1s made up of the following columns ID varchar2 17
17. ab with a refresh rate of six seconds When 30 minutes is reached the graph refreshed updating the reference time on the x axis Figure 3 10 1 Daily Report plots a diagram based on the information read from the log file available for the requested day Figure 3 10 2 Three diagrams are displayed over a 24 hour range e total number of students coming IN every hour yellow bar e total number of students going OUT every hour red bar e total number of students who were in the lab at the end of the hour interpolating cyan line When the Users tab is selected Real Time Report displays the students currently using the lab Figure 3 10 3 Daily Report shows all the entries for that day Yearly Report plots the average request for the lab service for the selected year Two types of averages are plotted a monthly average white dots and weekday of the month averages for each month colored bar charts Figure 3 10 4 The averages are based on the record count for each day and month Querv Tool can be accessed from the Report Tool clicking the Querv button Reports LOCA TION majors majars lt DATE 4 19 2000 WED APR 159 2000 REFORT Real Time Real Time ml j Compare majors Real Time 4 19 2000 Graphs Users 10 113208 TIME 21 41 05 TOTAL LOCA TION majors majars lt DATE 3 31 1999 WED 1 gt 1999 REFORT TYFE Daily Compare majors Daily 3 31 1999
18. assistants Figure 3 6 1 Lab assistants use the card reader hardware to swipe the FSU ID card of the student The application obtains the ID last name and first name of the student It internally detects if the user 15 leaving or entering the lab derived from the number of times the same card is swiped If the user is validated to come in the date and time of validation is added as a combined field to the entry The entry is displayed in green color in the TScanned text box and the recorded information is added to the table on the user window If the user is validated leaving the entry is displayed in red color in the Scanned text box and removed from the table The interface displays the current number of users the lab If the card reader hardware can not read from the card the lab assistant can manually enter the information in the log entry boxes and press the LOG button to complete the validation The ID text box has to be filled for the entry to be accepted The user can also click on any entry to copy the contents to the id name and last name text boxes This 15 useful in removing entries that were added manually relieving the user from typing in the id again CardReader File Help LOCATION majars B LOGOUT ALL Scanned 58943 7100003555819 JEFFREY LATIMER IN ID required Name Last Name First Name Last Mame Time 5894371000198898 DENNA Thu u Apr 20 00 09 4 589437001
19. drive space used by one year of data collected in majors lab is 1 2 MB 305 files The average size of the daily log files is 4 KB Initialization of the Oracle database with 9000 records takes about 3 hours with a modem connection of 26000bps When query access with modem connection is observed queries that return record counts less than 100 provide much faster responses Host Machine Connection Speed 9382 less than records 100 PentiumIII 500 MHz 128 RAM WindowsNT 24 000 bps 7 min 2 4 sec Server 4 0 Pentiuml 166 MHz 64 RAM Windows 98 26 400 bps Table 4 1 Query response time with modem connection 5 CONCLUSIONS AND FUTURE EN ANCEMENTS Design of a ReaderDriver module that runs on Windows Operating Svstem would enhance the platform independence of the Reader Interface on platforms that are commoniv used in Computer Science Department A validation that verifies the user is a member of Computer Science Department community by connecting to the main database at FSU can support the verification process This however would tie the application to an outside source that is not maintained by Computer Science Department The implementation of this system which serves as a platform for both data collection and analysis simplifies the task of staff to monitor the usage of computer labs and allows better interpretation of the collected information ia A REFERENCES Mary Campione et al The Java Tutorial
20. e setting for that keyword is given on the next line Everything else is disregarded Settings manages the reading and writing of the configuration values in ReaderData CONF FILE SettingsWindow implements the GUI interface to set the parameters When the OK button 1s clicked ReaderData CONFFILE containing the configured settings 1s created 2 3 DBManager Interface DBManager Interface handles the collection and transfer of user data to the Oracle database A clients allow file contains the names and IP addresses of the clients allowed to make requests from the server The entries should be added to this file in the following format Hostname IP address e g lov5bcard 128 100 100 100 The interface consists of the following Figure 2 3 1 DBManagerClient contacts DBManagerServer listening on a known TCP port and sends the user data If DBMnagerServer does not respond the data is written to a temporary file ReaderData LOGDIR FILESEPARATOR ReaderData LABNAME tmp on the client host DBManagerServer a multi client server opens a socket and keeps listening an pre assigned TCP port for requests from DBManagerClients When DBManagerServer receives a request it spawns a DBManagerServerThread and forwards the request to this newly created thread to process the incoming data DBManagerServerThread tries to connect to the Oracle server and send the received data to the database server with OraConnector If a connection is not estab
21. e user UsersJPanel provides the graphical interface that displays the entries validated by the user on a table and gives the total count ReaderCron wakes up periodically at 2 00 A M and sends a special message to UIWindow by putting a student instance with a name field set to CRONSTD to ReaderMonitor This is a signal for UIWindow to log out the remaining entries This way the next day an empty file is ready to be used by the interface and the logs for the day are closed Another duty of ReaderCron is to check labname tmp If this file is not empty and database connectivity is enabled ReaderCron forwards the entries to DBManagerClient HelpWindow implements the help information display The files are located on the local hard drive and the use of the interface is therefore not affected by failures on the network and or of the database server 2 2 Configuration Tool Reader Interface reads its settings from the configuration file ReaderData CONFFILE Configuration Tool implements a GUI to allow configuration of settings known to the Reader Interface The keywords that are assumed by the application and the mapping of the keywords to corresponding configurable values are LOCATION ReaderData LABNAME PORT ReaderData PORT LOGDIR ReaderData LOGDIR DBENABLE ReaderData DBENABLE SERVERHOST ReaderData SERVERHOST SERVERPORT ReaderData SERVERPORT SCHEDULE ReaderData SCHEDULE ReaderWriter after reading the keywords expects th
22. eeeenennnnnnnnnznnnnnzznnnnnznnzzzzzznnanzzznznnzzznnana 22 ABSTRACT Computer Science Department at Florida State Universitv has been validating access to its computer labs maintaining log sheets manually The difficulties experienced in tracking information and monitoring the collected data has lead to the development of a new utility facilitating fast accurate and organized collection of user data This report details the design implementation and maintenance of a Java Tool suite designed to automate card validation of users entering computer labs and to support analysis and query of the collected data The system implements Java threads and takes advantage of log files created during validation and an Oracle Database Server 81 available on one of the department s servers The tool suite consists of Reader Interface Configuration Tool Database Manager Interface and Report Query Tool Reader Interface transfers data from the card reader hardware to log files Configuration Tool allows GUI configuration of settings for the Reader Interface Database Manager a multi client server transfers data to an Oracle database Report Query Tool creates graphs and performs queries to analyze collected data The tools have been built in Java to provide a solid basis to maintain platform independence Currently the Reader Interface 15 being used in majors lab in Computer Science Department 1 INTRODUCTION Computer Science Department at Florida State
23. ends the data read from the card as two fields separated by a termination character of carriage return The first field contains the card id the second field holds the name in lastname firstname format ReaderDriver parses this input to obtain user s card id last name first name and sends the information to ReaderMonitor ReaderMonitor synchronizes the transfer of data from ReaderDriver to UIWindow UlWindow implements the graphical interface with the help of AddJPanel and UsersJPanel and continuously running as a thread takes the new data from the ReaderMonitor and checks if the entry is a special entry sent by ReaderCron to signal log out of all the entries from abname log to labnamedate log If so all the entries are removed as described below If not U Window checks if the entry already exists in an array that mirrors the contents of labname log Then the following operations are performed e Ifthe entry does not exist the datein field is set to the current time stamp and the data is added to labname log The display 16 updated to depict the change e Ifthe entry exists the dateout field 15 set to the current time stamp and the entry is removed from labname log and appended to labnamedate log The display is updated to depict the change UIWindow If database connectivity is enabled ReaderWriter s functions are used to pass the entry to DBManagerClient AddJPanel provides the graphical interface to collect the information input by th
24. er the directory containing the log files on the client should be exported under the directory logs as location or in the logs directory softlink named ocation pointing to the directory where the files are exported must be created Locations holds the location names for the labs When reports for other locations are available they can easily be added to this file Once the program is compiled again the added locations will be available in the combo boxes on the graphical user interface Week a helper class to construct graphs holds statistical totals for the weekdays ReportUIP displays the graphical user interface for the tool and detects the requests made by the user ReportUIP works with ReportPanel to display the graphs and statistics ReportPanel handles data collection calculation and display of three types of reports ReportPanel also supplies statistics e Real Time Report When a timer set to wake up periodically is activated ReportPanel reads labname log to count the number of entries validated as log ins and uses GraphCanvas to plot the count on the screen This is continued as time progresses for 30 minutes After 30 minutes elapses the graph 1s refreshed to 0 minutes ReportPanel keeps track of the minimum number and maximum number of users recorded up until that time and calculates a weighted average to determine the average number of users that were present e Daily Report ReportPanel counts the entries corresponding
25. format Query button refreshes the table each time a query is sent to the database QuaryAppend button appends the new set of records received to the ones obtained on a prior query The user can interrupt a query at any time clicking the Stop button Once the user has collected the requested information on the table the query results can be printed clicking the Print button The contents can be printed to a file or sent to a printer Figure 3 11 2 ens LOCATION ID FIRSTNAME will E E LASTMAME FROM DATE TO DATE LOGTABLE lablog RECORDS 69 ID FIRSTNAME 5894371000 WILLIAM 5894371000 WILLIAM 5894371000 WILLIAM 5894371000 WILLIAM _ LASTNAME WEBB COCHRAN WEBE COCHRAN Thu Mar 25 1 Sun Mar 28 1 Mon Mar 29 Mon Mar 2 29 DATEGOLIT Fri 25 00 28 1 Mar 29 Mon Mar 29 INTERVAL 18 14 38 0 0 8 1 45 18 1 2 54 5894371000 5894371000 5894371000 5894371000 WILLIAM WILLIAM WILLIAM WILLIAM 5894371000 5894371000 Loading WILLIAN MAHER MAHER MAHER MAHER MAHER MAHER Figure 3 11 1 Query Tool Mon 05 Mon Apr 95 Tue Apr 06 1 Wed Apr 07 1 Mon 4 Apr 05 05 Tue Apr 06 Ys Apr 07 1 M 12 44 0 1 24 10 50 18 2 11 58 Wed Apr 07 1 Wed 07 1
26. lished then DBManagerServerThread puts the data to WriterMonitor and exits freeing back resources to the system dbmlock tmp DBManagerServer Threads Figure 2 3 1 DBManager Interface WriterMonitor synchronizes the transfer of data from DBManagerServerThread to WriterThread WriterThread is a continuosly running thread waiting for data from WriterMonitor and handles the writing of temporary dbm tmp file 1n cases when the Oracle server did not respond When the WriterThread gets data it checks if the data is coming from DBCron If the received data 1s not from DBCron it calls ReaderWriter to write the entry to dbm tmp Once the record is written WriterThread is free to accept new data If the received data is from DBCron WriterThread waits until the lock created by DBCron is removed After the lock is released it continues to wait for new data DBCron periodically wakes up at 2 00 A M creates a lock file dbmlock tmp puts a special message CRON to the WriterMonitor to signal it will be accessing dbm tmp and then checks dbm tmp If the file is not empty DBCron creates a string array with all the information included in dbm tmp and then tries to connect to Oracle with OraConnector If DBCron can connect to Oracle it sends the records to the database and removes all the entries that are sent from dbm tmp If DBCron can not establish a connection to the database then it puts the entries back in dbm tmp After updating dbm tmp D
27. r connector labeled MSR on the decoder This decoder is configured with the following switchboard settings 13 4 5 6 17 8 SW3 Table 3 1 Card Reader Encoder Switchboard Setup A Pentium 90 or higher PC with 32MB RAM 1 of hard disk space for Red Hat and 10 of free disk space for the Reader Interface and the log files a serial port for the connection to the card reader hardware and a network card e A monitor capable of a minimum resolution of 640x480 pixels DBManager Interface and Report Query Tool e The application should be installed on a host inside the Computer Science Network to run Oracle queries 3 2 Software Specifications Operating System Reader Interface currently runs on Red Hat 6 1 The tools can be installed on NT Solaris or Linux platform If browser bound report tool is going to be used jdk1 2 2 plug in is required Java interpreter jdk1 2 2 Database Server Oracle8i version 8 1 5 Minimum value of the number of maximum open cursors for a process or user 1s 50 Oracle s JDBC driver classesslll zip is required to support Java Oracle database connectivity and 15 included with the developed system xntpd should be installed on the linux based system that hosts Reader Interface to synchronize the time with a trustworthy server 3 3 Reader Interface Environment Set Up on Red Hat Linux Creating the users and groups e user reader group reader e user monitor group monitors Following are
28. rv from majors03302000 log 5894371001611550 STEEDMAN RONALD J Thu Mar 30 09 26 14 EST 2000 Thu Mar 30 09 59 45 EST 2000 2011 0 33 3 1 The interface 16 a combination of threaded and helper components working together in coordination Figure 2 1 2 ReaderData DBManager Server ReaderDriver DBManagerClient 5 Figure 2 1 2 Reader Interface Structure ReaderData contains the global settings for the reader interface Two tvpes of settings are implemented Settings that need to be determined before compilation and settings that are given default values and can be configured later with Configuration Tool or bv changing the configuration file Pre compilation settings are INSTALLDIR Absolute path to the directorv the application is installed in The default value 15 usr local reader CONFFILE Absolute path to the file that contains the configuration settings The default value 1s INSTALLDIR portconf txt DaySchedule provides the structure for day schedule It consists of the following fields Name name of the day Opentime lab opening time Closetime lab closing time AMCloseFlag At or after midnight closing flag It 1s set to TRUE if the lab closes at and after midnight Schedule provides the structure to contain day schedules for a week ReaderDriver implemented as a thread continuously waits for data from the port the card reader hardware is connected to After the card is swiped the card reader hardware s
29. ssume we have a few minutes of power left Schedule a shutdown for 2 minutes from now This does of course assume you have powerd installed and your UPS connected and working correctly pf powerfail sbin shutdown f h 2 Power Failure System Shutting Down If power was restored before the shutdown kicked in cancel it pr 12345 powerokwait sbin shutdown c Power Restored Shutdown Cancelled Run gettys in standard runlevels 1 12345 respawn sbin mingetty tty 1 2 2345 respawn sbin mingetty tty2 3 2345 respawn sbin mingetty tty3 4 2345 respawn sbin mingetty tty4 5 2345 respawn sbin mingetty tty5 6 2345 respawn sbin mingetty tty6 Run xdm in runlevel 5 x 5 respawn usr bin X 1 1 nodaemon x 5 respawn root startReader Create root startReader rwxr xr x lroot root 155 Feb 23 17 02 startReader Edit root startReader to contain the following bin sh PATH PATH usr X11R6 bin export PATH su monitor c usr X11R6 bin xinit etc mon sh Create etc mon sh Assuming the interface is installed in usr local reader 1 cd etc 2 In s usr local reader run mon sh Irwxrwxrwx lroot root 2 Feb 16 15 48 etc mon sh gt usr local reader run Set the x windows environment to allow only Reader Interface to be displayed on the screen Edit window manager s startup files to disable xwindow menus and taskbars To allow access from a remote host e g for backup purposes and report tools
30. started if the information collected by the Reader Interface is going to be sent to the Oracle server startServer command starts the DBManager server on a unix or linux based platform and if desired the environment should be set up to start the server at boot time 3 9 InitDB Tool initDB allows the addition of new records to the Oracle table to contain the data collected in the log files for the computer labs It is executed with initDB command initDB accepts the following options ffilename file to insert to the table ddirectory directory where the log files are located location the log files are for To insert one file only initDB ffilename To insert logs for majors found in somelogs directory initDB Imajors dsomelogs 3 10 Report Tool Report Tool is platform independent and allows the analysis of lab usage Report Tool can be run as an application or an applet in Java appletviewer or in a Java enabled browser runrep bat NT or runrep Solans Linux starts the Report Tool as an application After choosing the lab to observe the type of report to view and clicking the Show button the report is displayed on the current window Multiple reports can be viewed at the same time with the help of the Compare button In this case the resulting report 1s displayed in a new window Real Time Report shows a continuously updated current view of lab usage displaying the number of students currently in the l
31. t ReaderWriter handles the reading and writing of log files and temporary files DatelO implements useful date manipulation functions 2 1 Reader Interface Reader Interface transfers data from the card reader hardware to the computer s local hard drive to the screen and if database enabled to the DBManagerClient The interface is installed as a stand alone running application Figure 2 1 1 Figure 2 1 1 Lab assistant s machine Reader Interface maintains two types of log files e labname log A text file containing all the entries representing users who have been validated entering the lab labname For example for majors lab this file is majors log e labnamedate log A text file containing all the entries representing users who have been validated leaving the lab The corresponding entry is removed from labname log and a time stamp 1s added to the entry when the user leaves The fields in the log files are separated by a The fields in labname log are IDILASTNAMEJFIRSTNAMEJDATEINILABNAME The fields in labnamedate log are IDILASTNAMEJFIRSTNAMEJDATEINIDATEOUTJINTERVALJLABNAME character for future parsing Below is a partial listing of a log directory majors log majors01102000 log majorsO1112000 log majors01122000 log majors01132000 log The following is a sample entry from majors log 5894371000479397 JOHNSON KURTIS FIThu 30 11 26 39 EST 2000 majors The following is a sample ent
32. ter student s id name and last name by Hand in corresponding text fields and then click the Update button Figure 3 6 2 Help Window The interface includes a LOGOUT ALL button to allow the lab assistant to remove all the entries This feature supports fast log off procedure at closing time when several students leave the lab at the same time An info page describing the validation instructions can be viewed choosing the Help option from the menu Figure 3 6 2 The application is easily restarted with CTRL ALT 3 7 Configuration Tool Configuration Tool is run executing readercfgtool at the prompt Figure 3 7 1 and allows System Administrators to configure Reader Interfaces for each location by setting e the location the interface is installed for e g majors literacy e the port the card reader is physically connected to e the directory where the log files will be kept A browser interface assists in picking a directory Figure 3 7 2 e the operational schedule of the lab e DBEnable DBDisable option list to allow database connectivity Serverhost IP for DBManagerServer host and Port to point to the port DBManager 15 listening to Instead if the configuration file 1s to be edited the following must be fulfilled e The values for the parameters must be set on the line following the keyword e The format of schedule for the days is Day OpenTime CloseTime hour minutes seconds hour minutes secondsit The range
33. to each hour both for log in and log out times by looking at the recorded datein and dateout timestamps in the labnamedate log file for the requested date The total number of users at the end of each hour is also calculated GraphCanvas is used to plot the three totals The total number of analyzed entries are counted and displayed as part of the statistics e Yearly Report This type of report demands a more time consuming process of opening the log files for the requested year and counting the entries in these files The counts are coded based on the day and the month they were generated for After the averages per month per day are calculated GraphCanvas draws bar charts of the calculated information UsersJPanel is used to display the contents of entries for both the Real Time Report and Daily Report on a JTable GraphCanvas is developed to implement and perform painting tasks of graphs supported by ReportPanel The types of graphs drawn are bar charts and line graphs ReportWindow displays ReportPanel on a separate window 2 7 Querv Tool QuervForm implements the interface to execute queries When requested to perform the querv the information input by the user is used to construct the SQL statement depicting the query LIKE operator 15 used in the query to overpass some possible data entry errors OraConnector is called to establish a connection to the Oracle database If a connection is established a call to execute
34. va gt 117 vla drwxr sr x 5 505 505 1024 Feb 9 1999 jdk117 vla lrwxrwxrwx lreader reader 7 Mar 23 12 46 reader 7 reader2 drwxr xr x 3 reader reader 1024 Mar 22 1999 reader drwxr xr x 2 reader reader 1024 May 5 1999 reader2 Setting up a secure environment Comment out all the entries in etc inetd conf that are not needed on the host computer e g finger telnet etc Set up the startup file 1 cd etc 2 Edit etc inittab Below 15 a sample inittab fi inittab This file describes how the INIT process should set up the svstem a certain run level H Author Miquel van Smoorenburg lt miquels drinkel nl mugnet org gt ji Modified for RHS Linux bv Marc Ewing and Donnie Barnes H Default runlevel The runlevels used by RHS are 0 halt Do NOT set initdefault to this 1 Single user mode 2 Multiuser without NFS The same as 3 if you do not have networking 3 Full multiuser mode 4 unused 5 XII 6 reboot Do NOT set initdefault to this GRE GRE 1d 5 initdefault System initialization si sysinit etc re d re sysinit 10 0 wait etc re d re 0 11 1 wait etc re d re 1 12 2 wait etc re d re 2 13 3 wait etc re d re 3 14 4 wait etc re d re 4 15 5 wait etc re d re 5 16 6 wait etc re d re 6 Things to run in every runlevel ud once sbin update Trap CTRL ALT DELETE ca ctrlaltdel sbin shutdown t3 r now When our UPS tells us power has failed a
Download Pdf Manuals
Related Search
Related Contents
渡す 投函 届く Nota de corrección al manual del usuario del UC PJLink 商標等使用許諾契約書 非会員用 (コントローラー/ソフトウエア用 HP Officejet 5110 User's Manual Juniper Networks E320 Network Router User Manual CoCo-80 Basic DSA User`s Manual - C User Manual - SIGLENT Technologies America GM660 Professional Mobile Radio À propos des préparations lactées pour nourrissons enrichies de fer Copyright © All rights reserved.
Failed to retrieve file