SlideShare a Scribd company logo
1 of 25
Download to read offline
Application of EZProxy logs, Voyager’s 
   Patron Database, MySQL, and 
 ColdFusion for Comparative Usage 
    Analysis of Library Resources 

                 Ray Schwartz, 
        William Paterson University of NJ, 
             schwartzr2@wpunj.edu
   ENUG Conference, University of Bridgeport, CT  
           Thursday, October 27, 2011
Our University
•   9000 undergraduates
•   1000 graduates (mostly education majors)
•   400 faculty
•   800 adjuncts
•   1000 staff




                                               2
Our Library
•   19 librarians and 26 library staff
•   350,000 volumes
•   18,000 audiovisual items
•   47,000 print and electronic periodicals 
•   124 general and subject specific databases
•   $1,100,000 Non‐Salary Allocations  




                                                 3
EZProxy via LDAP authenticates 
            access to:
• Databases
• Electronic journals
• ILL/Doc Delivery forms
Example of EZProxy log entry
•   Ip address          nj.dhcp.embarqhsd.net 
•   (Not used)          ‐
•   user id             theuser 
•   date/time           1/1/2008 4:25:15 AM 
•   Method              GET 
•   page                http://ezproxy.wpunj.edu:2048/connect?session=sGHMbeSss121YxZa&url=
    retrieved               http://www.wpunj.edu/scripts/webscript.exe?fs.scr 
•   Version             HTTP/1.1 
•   response            302 
    code             
•   no. of bytes        537
•   Referring           http://ezproxy.wpunj.edu:2048/login?url=http://www.wpunj.edu/scripts/w
    URL                     ebscript.exe?fs.scr 
•   User agent          Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.1.4322)


                                                                                                5
MySQL operations
• EZProxy transactions would be stored in one 
  table with patron statistical categories, but 
  without the user ID.
• User ID s would be stored in another table 
  with counts for each service divided by 
  academic year.
• Logs are collected monthly and loaded and 
  deleted monthly.

                                               6
Perl Script for loading ezproxy log 
use strict;
                into MySQL
my 
%month=(Jan=>'01',Feb=>'02',Mar=>'03',Apr=>'04',May=>'05',Jun=>'06',Jul=>'07',Aug=>'08'
,Sep=>'09',Oct=>'10',Nov=>'11',Dec=>'12');
while (<>){
    my $pattern =
          '^(S*) (S*) (S*) (S*) '.
          '[(..)/(...)/(....):(..):(..):(..) .....]'.
          ' "(S*) (S*) (S*)" '.
          '(d*) (‐|d*) "([^"]*)" "([^"]*)"';
    if (m/$pattern/){
          my ($tgt,$ref,$agt) = (esc($12),esc($16),esc($17));
          my $byt = $15 eq '_'?'NULL':$15;
          print "INSERT INTO ezproxylogs VALUES ('$1','$2','$3',".
                " TIMESTAMP '$7/$month{$6}/$5 $8:$9:$10','$11','$tgt',".
                "'$13',$14,$byt,'$ref','$agt');r.";
    }else{
          print "‐‐Skipped line $.n";
    }
}
sub esc{
    my ($p) = @_;
    $p =~ s/'/''/g;
    return $p;                                                                            7
}
Patron Statistical Categories
• Voyager Patron Database allows a maximum of 10 
  statistical categories per patron record. 

• Weekly extract from SIS and HRS to load into 
  Voyager




                                                  8
From Students
•College and Mercer Identifier
•Class Level (Freshman, Sophomore, Junior, Senior, Graduate)
•Total Hours Registered for Current Semester
•Major
•2nd Major
•Degree
•CA‐Collection Agency
•SOILS
•Student Entrance Level (New Non‐Traditional Freshman, New 
First Time Transfer, etc.)
•Department
From Faculty / Staff / Adjuncts

•College
•Full or Part‐Time
•Status (Faculty, Adjunct, Staff, Professional Staff, Tenured, 
Tenure‐Track)
•Division
•Departments
Extracting patron statistical categories back out 
of Voyager and building them into MySQL 
database.

Once completed, user ids are deleted.
Internal WPUNet IPv4 addressing scheme IP Network 149.151.

Block Description IP Block Start Range      IP Block End Range
Admin (Services)   2.1                      129.254
Labs (Users)       130.1                    162.254
Admin (Users)      163.1                    233.254
Resnet (Users)     234.1                    250.254
Video              251.1                    251.253
IP Address Location = 149.151.VlanID.*
Admin VLANs                       Labs VLANs
  Vlan ID         Vlan Name        Vlan ID      Vlan Name
     2             Servers            3         Lab Servers
     4             Admin              9          Imaging
     5             Science           160          Lib Labs
     6           Test Servers        174         STU VPN
     7               NAS             175       Ben Shahn Lab
    101       Energy Management      178        Hobart Lab
    102            Diebold           179          SCI Lab
    104             Xerox            187          CS Lab
    150         Media Services       192          Atrium
    161         Dorms Offices        209           Labs
    162              RBI             212        Resnet Labs
    163             Police           214         Raub Labs
    164          Maintenance         228          VR Labs
                                                               14
References

•Coombs, Karen A. (2005). Lessons learned from analyzing 
library database usage data. Library Hi Tech, 23:4, 598.
• Diana, Birkin James. dashboard_beta. 
http://library.brown.edu/dashboard/info/
• Metridoc. http://code.google.com/p/metridoc/
• Morton‐Owens, Emily (2011) Trends at a glance. LITA 2011. 
http://connect.ala.org/files/79651/trends_at_a_glance_dashb
oards_pdf_12068.pdf
Questions?


               Ray Schwartz, 
       Systems Specialist Librarian
Cheng Library, William Paterson University, 
         Wayne, New Jersey, USA
        schwartzr2 @ wpunj.edu



                                               25

More Related Content

Similar to Schwartz ez proxy-logs

Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nl
bartzon
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Kristofferson A
 

Similar to Schwartz ez proxy-logs (20)

Dev nexus 2017
Dev nexus 2017Dev nexus 2017
Dev nexus 2017
 
Butler - Security Lessons Learned from an Ezproxy Admin
Butler - Security Lessons Learned from an Ezproxy AdminButler - Security Lessons Learned from an Ezproxy Admin
Butler - Security Lessons Learned from an Ezproxy Admin
 
Microservices, Continuous Delivery, and Elasticsearch at Capital One
Microservices, Continuous Delivery, and Elasticsearch at Capital OneMicroservices, Continuous Delivery, and Elasticsearch at Capital One
Microservices, Continuous Delivery, and Elasticsearch at Capital One
 
Introduction to SolrCloud
Introduction to SolrCloudIntroduction to SolrCloud
Introduction to SolrCloud
 
Webscripts Server
Webscripts ServerWebscripts Server
Webscripts Server
 
Benchmarking Solr Performance at Scale
Benchmarking Solr Performance at ScaleBenchmarking Solr Performance at Scale
Benchmarking Solr Performance at Scale
 
"Data Provenance: Principles and Why it matters for BioMedical Applications"
"Data Provenance: Principles and Why it matters for BioMedical Applications""Data Provenance: Principles and Why it matters for BioMedical Applications"
"Data Provenance: Principles and Why it matters for BioMedical Applications"
 
Meetup on Apache Zookeeper
Meetup on Apache ZookeeperMeetup on Apache Zookeeper
Meetup on Apache Zookeeper
 
Presto: Fast SQL on Everything
Presto: Fast SQL on EverythingPresto: Fast SQL on Everything
Presto: Fast SQL on Everything
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nl
 
"What database can tell about application issues? What application can tell a...
"What database can tell about application issues? What application can tell a..."What database can tell about application issues? What application can tell a...
"What database can tell about application issues? What application can tell a...
 
Ansible benelux meetup - Amsterdam 27-5-2015
Ansible benelux meetup - Amsterdam 27-5-2015Ansible benelux meetup - Amsterdam 27-5-2015
Ansible benelux meetup - Amsterdam 27-5-2015
 
Devnexus 2018
Devnexus 2018Devnexus 2018
Devnexus 2018
 
DAS. Technical introduction to the Distributed Annotation System.
DAS. Technical introduction to the Distributed Annotation System.DAS. Technical introduction to the Distributed Annotation System.
DAS. Technical introduction to the Distributed Annotation System.
 
JakartaOne Livestream CN4J: Eclipse MicroProfile - Your Cloud-Native Companion
JakartaOne Livestream CN4J: Eclipse MicroProfile - Your Cloud-Native CompanionJakartaOne Livestream CN4J: Eclipse MicroProfile - Your Cloud-Native Companion
JakartaOne Livestream CN4J: Eclipse MicroProfile - Your Cloud-Native Companion
 
Lessons learned while building Omroep.nl
Lessons learned while building Omroep.nlLessons learned while building Omroep.nl
Lessons learned while building Omroep.nl
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
 
Real time monitoring-alerting: storing 2Tb of logs a day in Elasticsearch
Real time monitoring-alerting: storing 2Tb of logs a day in ElasticsearchReal time monitoring-alerting: storing 2Tb of logs a day in Elasticsearch
Real time monitoring-alerting: storing 2Tb of logs a day in Elasticsearch
 
33rd degree
33rd degree33rd degree
33rd degree
 
The Spring Update
The Spring UpdateThe Spring Update
The Spring Update
 

More from ENUG

Jaffe o'brien-rosetta
Jaffe o'brien-rosettaJaffe o'brien-rosetta
Jaffe o'brien-rosetta
ENUG
 
Jones aleph acqorders
Jones aleph acqordersJones aleph acqorders
Jones aleph acqorders
ENUG
 
Yang enhance-voyager-user-innovations
Yang enhance-voyager-user-innovationsYang enhance-voyager-user-innovations
Yang enhance-voyager-user-innovations
ENUG
 
Yang hofmann-next generationcatalogforenug
Yang hofmann-next generationcatalogforenugYang hofmann-next generationcatalogforenug
Yang hofmann-next generationcatalogforenug
ENUG
 
Bischof custom-circ-ov
Bischof custom-circ-ovBischof custom-circ-ov
Bischof custom-circ-ov
ENUG
 
Wenger sf xin-barton
Wenger sf xin-bartonWenger sf xin-barton
Wenger sf xin-barton
ENUG
 
Collins whats buggingyou-aleph
Collins whats buggingyou-alephCollins whats buggingyou-aleph
Collins whats buggingyou-aleph
ENUG
 
Wagner whats buggingyou-voyager
Wagner whats buggingyou-voyagerWagner whats buggingyou-voyager
Wagner whats buggingyou-voyager
ENUG
 
Oneal perl-code-to-extract-from-voyager
Oneal perl-code-to-extract-from-voyagerOneal perl-code-to-extract-from-voyager
Oneal perl-code-to-extract-from-voyager
ENUG
 
Moulen digital bookplates
Moulen digital bookplatesMoulen digital bookplates
Moulen digital bookplates
ENUG
 
Moulen aleph update
Moulen aleph updateMoulen aleph update
Moulen aleph update
ENUG
 
Enug2011 innovative use-of_sfx_with_new_interface-final
Enug2011 innovative use-of_sfx_with_new_interface-finalEnug2011 innovative use-of_sfx_with_new_interface-final
Enug2011 innovative use-of_sfx_with_new_interface-final
ENUG
 
Callahan princetonenug2011
Callahan princetonenug2011Callahan princetonenug2011
Callahan princetonenug2011
ENUG
 
Baksik3 enug baksik_xmlinvoice
Baksik3 enug baksik_xmlinvoiceBaksik3 enug baksik_xmlinvoice
Baksik3 enug baksik_xmlinvoice
ENUG
 
Baksik2 enug baksik_ebookplates
Baksik2 enug baksik_ebookplatesBaksik2 enug baksik_ebookplates
Baksik2 enug baksik_ebookplates
ENUG
 
Baksik1 enug baksik_rest
Baksik1 enug baksik_restBaksik1 enug baksik_rest
Baksik1 enug baksik_rest
ENUG
 
O neal columbia
O neal columbiaO neal columbia
O neal columbia
ENUG
 
Moulen batch loadingebookspdf
Moulen batch loadingebookspdfMoulen batch loadingebookspdf
Moulen batch loadingebookspdf
ENUG
 

More from ENUG (19)

Jaffe o'brien-rosetta
Jaffe o'brien-rosettaJaffe o'brien-rosetta
Jaffe o'brien-rosetta
 
Jones aleph acqorders
Jones aleph acqordersJones aleph acqorders
Jones aleph acqorders
 
Yang enhance-voyager-user-innovations
Yang enhance-voyager-user-innovationsYang enhance-voyager-user-innovations
Yang enhance-voyager-user-innovations
 
Yang hofmann-next generationcatalogforenug
Yang hofmann-next generationcatalogforenugYang hofmann-next generationcatalogforenug
Yang hofmann-next generationcatalogforenug
 
Bischof custom-circ-ov
Bischof custom-circ-ovBischof custom-circ-ov
Bischof custom-circ-ov
 
Wenger sf xin-barton
Wenger sf xin-bartonWenger sf xin-barton
Wenger sf xin-barton
 
Guy avoiding-dat apocalypse
Guy avoiding-dat apocalypseGuy avoiding-dat apocalypse
Guy avoiding-dat apocalypse
 
Collins whats buggingyou-aleph
Collins whats buggingyou-alephCollins whats buggingyou-aleph
Collins whats buggingyou-aleph
 
Wagner whats buggingyou-voyager
Wagner whats buggingyou-voyagerWagner whats buggingyou-voyager
Wagner whats buggingyou-voyager
 
Oneal perl-code-to-extract-from-voyager
Oneal perl-code-to-extract-from-voyagerOneal perl-code-to-extract-from-voyager
Oneal perl-code-to-extract-from-voyager
 
Moulen digital bookplates
Moulen digital bookplatesMoulen digital bookplates
Moulen digital bookplates
 
Moulen aleph update
Moulen aleph updateMoulen aleph update
Moulen aleph update
 
Enug2011 innovative use-of_sfx_with_new_interface-final
Enug2011 innovative use-of_sfx_with_new_interface-finalEnug2011 innovative use-of_sfx_with_new_interface-final
Enug2011 innovative use-of_sfx_with_new_interface-final
 
Callahan princetonenug2011
Callahan princetonenug2011Callahan princetonenug2011
Callahan princetonenug2011
 
Baksik3 enug baksik_xmlinvoice
Baksik3 enug baksik_xmlinvoiceBaksik3 enug baksik_xmlinvoice
Baksik3 enug baksik_xmlinvoice
 
Baksik2 enug baksik_ebookplates
Baksik2 enug baksik_ebookplatesBaksik2 enug baksik_ebookplates
Baksik2 enug baksik_ebookplates
 
Baksik1 enug baksik_rest
Baksik1 enug baksik_restBaksik1 enug baksik_rest
Baksik1 enug baksik_rest
 
O neal columbia
O neal columbiaO neal columbia
O neal columbia
 
Moulen batch loadingebookspdf
Moulen batch loadingebookspdfMoulen batch loadingebookspdf
Moulen batch loadingebookspdf
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 

Recently uploaded (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

Schwartz ez proxy-logs