Files
quartz-manager/README.md
2018-06-22 14:40:26 +02:00

3.1 KiB

QUARTZ MANAGER

GUI Manager for Quartz Scheduler.

Through this webapp you can launch and control your scheduled job. The GUI Console is composed by a managament panel to set trigger, start/stop scheduler and a log panel with a progress bar to display the job output.

SCREENSHOT

HOW IT WORKS

  • Set up the trigger into the left sidebar in terms of: daily frequency and and max occurrences.
  • Press the start button
  • The GUI manager updates the progress bar and reports all logs of your quartz job.

QUICK START

[requirements] Make sure you have installed

#CLONE REPOSITORY
git clone https://github.com/fabioformosa/quartz-manager.git

# START QUARTZ-MANAGER-BACKEND
cd quartz-manager/quartz-manager-backend
mvn spring-boot:run

# START QUARTZ-MANAGER-FRONTEND
cd quartz-manager/quartz-manager-backend
npm install
npm start

  1. Open browser at http://localhost:4200
  2. Log in with default credentials: admin/admin

If you are not confident with maven CLI, you can start it by your IDE. For more details spring boot ref.

HOW TO RUN YOUR SCHEDULED JOB

By default, quartz-manager executes the dummy job that logs "hello world!". Replace the dummy job (class: it.fabioformosa.quartzmanager.jobs.SampleJob) with yours. Follow these steps:

  1. Let extend the super class it.fabioformosa.quartzmanager.jobs.AbstractLoggingJob
  2. Change the scheduler settings, providing the class name of your job. Open class it.fabioformosa.quartzmanager.configuration.SchedulerConfig and for the method jobDetail replace SampleJob.class with YourJob.class

HOW TO CHANGE SETTINGS

  • Num of Threads: /quartz-manager/src/main/resources/quartz.properties
  • Credentials: it.fabioformosa.quartzmanager.configuration.WebSecurityConfig
  • quartz-manager backend context path (default /quartz-manager) and port (default 8080): /quartz-manager/src/main/resources/application.properties

Tech Overview

Backend Stack Java 8, Spring Boot 1.5.9 (Spring MVC 4.3.13, Spring Security 4.2.3, Spring AOP 4.3.13), Quartz Scheduler 2.2.2

Application Server Tomcat (embedded)

Frontend Angular 5.2.0, Web-Socket (stompjs 2.3.3)

Style angular material, FontAwesome 5

From quartz manager ver 2.x.x, the new structure of project is:

(The previous version of quartz manager was a monolithic backend that provided also frontend developed with angularjs 1.6.x. You can find it at the branch 1.x.x)

Credits