Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Content: 

  • Exports Overview
  • Background Job to generate the exports 
  • Scheduling the background Job
  • Reading the error Log

 

 

Exports Overview: 

For endTB we need to regularly export all of the data in the system so that analysis can be performed on it. We can model this export as a set of CSVs that would have all of the data. These CSVs would be linkable through identifier columns in them. The data managers at the local sites would be able to generate these exports and send them to the central location for analysis, as and when needed. The patient information would NOT be exported as a part of this. 


Background Job to generate the exports:

 Since the exports would take some time to generate (depending on the amount of data in the system), it makes sense to have a background job to generate these exports so that they are readily available for the end user and can be quickly and easily downloaded. Thus we have provided a background job "bahmni_batch" that would generate the exports. This background job's schedule and it's frequency can be adjusted as per the need of the implementation.

Once the frequency is set, the job would run everyday according to that frequency and generate the exports at a prefixed location. These exports would be accessible for the end user through the bahmni application. The user would be able to see the last 20 instance of the exports on the application. 

The exports would lie in the following directory in the system: 

/home/bahmni/endtb_export

NOTE: The export can be run at any time by following these steps: 

  1. Login to the server system and open terminal. 
  2. Change the user to 'bahmni' by typing in the following command :"sudo su bahmni". This must change your user to bahmni. 

  3. Now execute the command '/usr/bin/bahmni-batch'

  4. The system should show "Running bahmni-batch..."
  5. When the export is generated the system would give a message "Done"
  6. Now the export can be accessed at the file location mentioned above 

Scheduling the background job:

  1. Open the terminal and change the user to "bahmni" by executing the command "sudo su bahmni"

  2. Now type the following command "crontab -l"

  3. You would see a list of all the cron jobs (background jobs) in the system for the user "bahmni"

  4. You would see the line "30 23 * * * /usr/bin/bahmni-batch >/dev/null 2>&1" shown as the output when you run the above command. This is because we have provided a schedule to the background job by default. This schedule would run the job everyday at 11:30PM 
  5. To change this schedule or to add a new schedule you would need the help of a cron generator. This can be accessed at: http://crontab-generator.org/
  6. After selecting the schedule, (for example in the above image the schedule that I would want to generate for my job is every 30 minutes.) you will see a field below labeled "Command to execute". Enter the following in this field and click on "Generate Crontab Line". 
  7. After clicking the button you will see that your crontab expression is generated and shown at the top of the page. 
  8. Now you should copy this expression and go to the terminal again. Execute the command "crontab -e"
  9. You would be seeing the file that lists all the schedules for different cron jobs. If you have not saved any, you would only see one line in the file which would represent the schedule that has been set for the jobs by default. (11:30PM every day) 
  10. Insert the line into this file and save it. (insert and save will work as per your editor). This should set the schedule for the background job. 

 

Accessing the error log:

  1. The error log for the background job can be accessed at "/var/log/bahmni-batch"
  2. In this directory there would be a file that would have the log. 

 


 

 

 

 

  • No labels