SlideShare uma empresa Scribd logo
1 de 16
Baixar para ler offline
Koha Cronjobs
   Joe Atzberger, LibLime




  KohaCon 2009: Plano, TX
misc/cronjobs/
•   advance_notices.pl
•   crontab.example
•   fines.pl
•   longoverdue.pl
•   overdue_notices.pl
•   process_message_queue.pl
•   ... and others
rebuild_zebra.pl
          misc/migration_tools/rebuild_zebra.pl

• -a: authorities
• -b: biblios
• -x: XML
• -z: incremental
• -r: CLEAR and REBUILD from scratch
Remember!

• export PERL5LIB=/path/to/kohaclone
• export KOHA_CONF=/path/to/koha-
  conf.xml
Any idiot could give this presentation.
Any idiot could give this presentation.

Allow me to demonstrate!
Any idiot could give this presentation.

Allow me to demonstrate!
Any idiot could give this presentation.

Allow me to demonstrate!

All the info comes from two places:
Any idiot could give this presentation.

Allow me to demonstrate!

All the info comes from two places:
• crontab.example
Any idiot could give this presentation.

Allow me to demonstrate!

All the info comes from two places:
• crontab.example
• run: whatever_job.pl
Any idiot could give this presentation.

Allow me to demonstrate!

All the info comes from two places:
• crontab.example
• run: whatever_job.pl
• or: whatever_job.pl --help
Any idiot could give this presentation.

Allow me to demonstrate!

All the info comes from two places:
• crontab.example
• run: whatever_job.pl
• or: whatever_job.pl --help
  • OK, well, not everything.
fines.pl
• No help
• No command-line options either
• sysprefs: finesMode, CircControl
• staff: fines rules, Calendar!
• TIP: run fines before notices
advance_notices.pl

• Like overdue notices, but before due
• “EnhancedMessagingPreferences” syspref
• Opt-In for individual patrons via OPAC
Building a good cronjob
• Documentation for use case!
• Good perl: use strict; use warnings;
• use Getopt::Long; # handle --options
• use Pod::Usage; # makes --help like perldoc
• internalize, like process_message_queue.pl
• test cases, dry run, operational feedback
The End

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Sizing Your MongoDB Cluster
Sizing Your MongoDB ClusterSizing Your MongoDB Cluster
Sizing Your MongoDB Cluster
 
Scale your Alfresco Solutions
Scale your Alfresco Solutions Scale your Alfresco Solutions
Scale your Alfresco Solutions
 
Redo internals ppt
Redo internals pptRedo internals ppt
Redo internals ppt
 
MongoDB for Coder Training (Coding Serbia 2013)
MongoDB for Coder Training (Coding Serbia 2013)MongoDB for Coder Training (Coding Serbia 2013)
MongoDB for Coder Training (Coding Serbia 2013)
 
Introduction to Apache Kafka
Introduction to Apache KafkaIntroduction to Apache Kafka
Introduction to Apache Kafka
 
Building a Scalable Record Linkage System with Apache Spark, Python 3, and Ma...
Building a Scalable Record Linkage System with Apache Spark, Python 3, and Ma...Building a Scalable Record Linkage System with Apache Spark, Python 3, and Ma...
Building a Scalable Record Linkage System with Apache Spark, Python 3, and Ma...
 
Tez Shuffle Handler: Shuffling at Scale with Apache Hadoop
Tez Shuffle Handler: Shuffling at Scale with Apache HadoopTez Shuffle Handler: Shuffling at Scale with Apache Hadoop
Tez Shuffle Handler: Shuffling at Scale with Apache Hadoop
 
JSON and the Oracle Database
JSON and the Oracle DatabaseJSON and the Oracle Database
JSON and the Oracle Database
 
Productionzing ML Model Using MLflow Model Serving
Productionzing ML Model Using MLflow Model ServingProductionzing ML Model Using MLflow Model Serving
Productionzing ML Model Using MLflow Model Serving
 
Catalogs - Turning a Set of Parquet Files into a Data Set
Catalogs - Turning a Set of Parquet Files into a Data SetCatalogs - Turning a Set of Parquet Files into a Data Set
Catalogs - Turning a Set of Parquet Files into a Data Set
 
Micro-Services RabbitMQ vs Kafka
Micro-Services RabbitMQ vs KafkaMicro-Services RabbitMQ vs Kafka
Micro-Services RabbitMQ vs Kafka
 
Liferay Portal Introduction
Liferay Portal IntroductionLiferay Portal Introduction
Liferay Portal Introduction
 
Apache ZooKeeper
Apache ZooKeeperApache ZooKeeper
Apache ZooKeeper
 
Google Cloud Dataflow
Google Cloud DataflowGoogle Cloud Dataflow
Google Cloud Dataflow
 
Weka em aplicações java
Weka em aplicações javaWeka em aplicações java
Weka em aplicações java
 
MongoDB Schema Design
MongoDB Schema DesignMongoDB Schema Design
MongoDB Schema Design
 
Best practices and lessons learnt from Running Apache NiFi at Renault
Best practices and lessons learnt from Running Apache NiFi at RenaultBest practices and lessons learnt from Running Apache NiFi at Renault
Best practices and lessons learnt from Running Apache NiFi at Renault
 
Kafka for DBAs
Kafka for DBAsKafka for DBAs
Kafka for DBAs
 
Introduction to apache nutch
Introduction to apache nutchIntroduction to apache nutch
Introduction to apache nutch
 
Kafka streams windowing behind the curtain
Kafka streams windowing behind the curtain Kafka streams windowing behind the curtain
Kafka streams windowing behind the curtain
 

Destaque

Koha presentation
Koha presentationKoha presentation
Koha presentation
BibLibre
 
Web 2.0 alkalmazások az egészségügyben, képalkotó diagnosztikában - II. rész ...
Web 2.0 alkalmazások az egészségügyben, képalkotó diagnosztikában - II. rész ...Web 2.0 alkalmazások az egészségügyben, képalkotó diagnosztikában - II. rész ...
Web 2.0 alkalmazások az egészségügyben, képalkotó diagnosztikában - II. rész ...
Péter Bágyi M.D.
 
Ch28
Ch28Ch28
Ch28
jespi
 
Koalas Fave Term 2 Week 1
Koalas Fave Term 2 Week 1Koalas Fave Term 2 Week 1
Koalas Fave Term 2 Week 1
Gihan Lahoud
 

Destaque (20)

Koha Integration: LDAP
Koha Integration: LDAPKoha Integration: LDAP
Koha Integration: LDAP
 
Training on Koha
Training on KohaTraining on Koha
Training on Koha
 
Koha Integration: RFID and SIP2
Koha Integration: RFID and SIP2Koha Integration: RFID and SIP2
Koha Integration: RFID and SIP2
 
Opac customization
Opac customizationOpac customization
Opac customization
 
Koha presentation
Koha presentationKoha presentation
Koha presentation
 
Carver IT Security for Librarians
Carver IT Security for LibrariansCarver IT Security for Librarians
Carver IT Security for Librarians
 
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
 
The State of Library Management Systems 2016
The State of Library Management Systems 2016The State of Library Management Systems 2016
The State of Library Management Systems 2016
 
ISO 9712
ISO 9712ISO 9712
ISO 9712
 
Web 2.0 alkalmazások az egészségügyben, képalkotó diagnosztikában - II. rész ...
Web 2.0 alkalmazások az egészségügyben, képalkotó diagnosztikában - II. rész ...Web 2.0 alkalmazások az egészségügyben, képalkotó diagnosztikában - II. rész ...
Web 2.0 alkalmazások az egészségügyben, képalkotó diagnosztikában - II. rész ...
 
MySQL Cluster Product Overview
MySQL Cluster Product OverviewMySQL Cluster Product Overview
MySQL Cluster Product Overview
 
Ch28
Ch28Ch28
Ch28
 
Adobe connect set up instructions str
Adobe connect set up instructions strAdobe connect set up instructions str
Adobe connect set up instructions str
 
In Memory of Laura Weber
In Memory of Laura WeberIn Memory of Laura Weber
In Memory of Laura Weber
 
Koalas Fave Term 2 Week 1
Koalas Fave Term 2 Week 1Koalas Fave Term 2 Week 1
Koalas Fave Term 2 Week 1
 
Augmented Reality Presentation at Leadership Forum 2012 Randwick
Augmented Reality Presentation at Leadership Forum 2012 RandwickAugmented Reality Presentation at Leadership Forum 2012 Randwick
Augmented Reality Presentation at Leadership Forum 2012 Randwick
 
The Relationships Between Social Media and Search
The Relationships Between Social Media and SearchThe Relationships Between Social Media and Search
The Relationships Between Social Media and Search
 
How It Works
How It WorksHow It Works
How It Works
 
Team One Keynote
Team  One  KeynoteTeam  One  Keynote
Team One Keynote
 
ZeroMQ at Oredev 2013
ZeroMQ at Oredev 2013ZeroMQ at Oredev 2013
ZeroMQ at Oredev 2013
 

Semelhante a Koha Cronjobs

Variables & Expressions
Variables & ExpressionsVariables & Expressions
Variables & Expressions
Rich Price
 
ruote stockholm 2008
ruote stockholm 2008ruote stockholm 2008
ruote stockholm 2008
John Mettraux
 
Web 2.0 Performance and Reliability: How to Run Large Web Apps
Web 2.0 Performance and Reliability: How to Run Large Web AppsWeb 2.0 Performance and Reliability: How to Run Large Web Apps
Web 2.0 Performance and Reliability: How to Run Large Web Apps
adunne
 
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret SauceBeijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
Jesse Vincent
 

Semelhante a Koha Cronjobs (20)

Smoking docker
Smoking dockerSmoking docker
Smoking docker
 
CPAN Training
CPAN TrainingCPAN Training
CPAN Training
 
Perl dancer
Perl dancerPerl dancer
Perl dancer
 
Os Treat
Os TreatOs Treat
Os Treat
 
Ceph Day Melbourne - Troubleshooting Ceph
Ceph Day Melbourne - Troubleshooting Ceph Ceph Day Melbourne - Troubleshooting Ceph
Ceph Day Melbourne - Troubleshooting Ceph
 
Hiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret SauceHiveminder - Everything but the Secret Sauce
Hiveminder - Everything but the Secret Sauce
 
Prepare for PHP Test Fest 2009
Prepare for PHP Test Fest 2009Prepare for PHP Test Fest 2009
Prepare for PHP Test Fest 2009
 
21st Century CPAN Testing: CPANci
21st Century CPAN Testing: CPANci21st Century CPAN Testing: CPANci
21st Century CPAN Testing: CPANci
 
Variables & Expressions
Variables & ExpressionsVariables & Expressions
Variables & Expressions
 
ruote stockholm 2008
ruote stockholm 2008ruote stockholm 2008
ruote stockholm 2008
 
Intro to pl/PHP Oscon2007
Intro to pl/PHP Oscon2007Intro to pl/PHP Oscon2007
Intro to pl/PHP Oscon2007
 
Web 2.0 Performance and Reliability: How to Run Large Web Apps
Web 2.0 Performance and Reliability: How to Run Large Web AppsWeb 2.0 Performance and Reliability: How to Run Large Web Apps
Web 2.0 Performance and Reliability: How to Run Large Web Apps
 
The Popper Experimentation Protocol and CLI tool
The Popper Experimentation Protocol and CLI toolThe Popper Experimentation Protocol and CLI tool
The Popper Experimentation Protocol and CLI tool
 
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret SauceBeijing Perl Workshop 2008 Hiveminder Secret Sauce
Beijing Perl Workshop 2008 Hiveminder Secret Sauce
 
Automate Yo'self -- SeaGL
Automate Yo'self -- SeaGL Automate Yo'self -- SeaGL
Automate Yo'self -- SeaGL
 
What we Learned Implementing Puppet at Backstop
What we Learned Implementing Puppet at BackstopWhat we Learned Implementing Puppet at Backstop
What we Learned Implementing Puppet at Backstop
 
第1回PHP拡張勉強会
第1回PHP拡張勉強会第1回PHP拡張勉強会
第1回PHP拡張勉強会
 
Vim Hacks
Vim HacksVim Hacks
Vim Hacks
 
Vim Hacks
Vim HacksVim Hacks
Vim Hacks
 
Practical project automation
Practical project automationPractical project automation
Practical project automation
 

Último

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+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@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
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
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire 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...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
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
 

Koha Cronjobs

  • 1. Koha Cronjobs Joe Atzberger, LibLime KohaCon 2009: Plano, TX
  • 2. misc/cronjobs/ • advance_notices.pl • crontab.example • fines.pl • longoverdue.pl • overdue_notices.pl • process_message_queue.pl • ... and others
  • 3. rebuild_zebra.pl misc/migration_tools/rebuild_zebra.pl • -a: authorities • -b: biblios • -x: XML • -z: incremental • -r: CLEAR and REBUILD from scratch
  • 4. Remember! • export PERL5LIB=/path/to/kohaclone • export KOHA_CONF=/path/to/koha- conf.xml
  • 5. Any idiot could give this presentation.
  • 6. Any idiot could give this presentation. Allow me to demonstrate!
  • 7. Any idiot could give this presentation. Allow me to demonstrate!
  • 8. Any idiot could give this presentation. Allow me to demonstrate! All the info comes from two places:
  • 9. Any idiot could give this presentation. Allow me to demonstrate! All the info comes from two places: • crontab.example
  • 10. Any idiot could give this presentation. Allow me to demonstrate! All the info comes from two places: • crontab.example • run: whatever_job.pl
  • 11. Any idiot could give this presentation. Allow me to demonstrate! All the info comes from two places: • crontab.example • run: whatever_job.pl • or: whatever_job.pl --help
  • 12. Any idiot could give this presentation. Allow me to demonstrate! All the info comes from two places: • crontab.example • run: whatever_job.pl • or: whatever_job.pl --help • OK, well, not everything.
  • 13. fines.pl • No help • No command-line options either • sysprefs: finesMode, CircControl • staff: fines rules, Calendar! • TIP: run fines before notices
  • 14. advance_notices.pl • Like overdue notices, but before due • “EnhancedMessagingPreferences” syspref • Opt-In for individual patrons via OPAC
  • 15. Building a good cronjob • Documentation for use case! • Good perl: use strict; use warnings; • use Getopt::Long; # handle --options • use Pod::Usage; # makes --help like perldoc • internalize, like process_message_queue.pl • test cases, dry run, operational feedback