PageRenderTime 50ms CodeModel.GetById 11ms RepoModel.GetById 0ms app.codeStats 0ms

/trunk/docs/wikidocs/LogCleanerJob.html

https://bitbucket.org/opensymphony/quartz
HTML | 85 lines | 64 code | 21 blank | 0 comment | 0 complexity | 4c78fb0ff8734841d9cadb5bb29c5bcf MD5 | raw file
Possible License(s): Apache-2.0
  1. <html>
  2. <head>
  3. <title>Quartz 1 -
  4. LogCleanerJob
  5. </title>
  6. <link rel="stylesheet" href="styles/site.css" type="text/css" />
  7. <META http-equiv="Content-Type" content="text/html; charset=UTF-8">
  8. </head>
  9. <body>
  10. <table class="pagecontent" border="0" cellpadding="0" cellspacing="0" width="100%" bgcolor="#ffffff">
  11. <tr>
  12. <td valign="top" class="pagebody">
  13. <h1><a name="LogCleanerJob-LogCleanerJob"></a>LogCleanerJob</h1>
  14. <p>This job implementation infers a logfile's age by its filename and deletes files older than a given age. Ample details are in the javadocs of the class.</p>
  15. <table class='confluenceTable'><tbody>
  16. <tr>
  17. <td class='confluenceTd'> Author <br clear="all" /> </td>
  18. <td class='confluenceTd'> <a href="mailto:mirko.caserta@nexse.com" title="Send mail to Mirko Caserta">Mirko Caserta</a> </td>
  19. </tr>
  20. <tr>
  21. <td class='confluenceTd'> Quartz Interface <br clear="all" /> </td>
  22. <td class='confluenceTd'> org.quartz.Job </td>
  23. </tr>
  24. <tr>
  25. <td class='confluenceTd'> Quartz Tested Version(s) <br clear="all" /> </td>
  26. <td class='confluenceTd'> 1.6 <br clear="all" /> </td>
  27. </tr>
  28. <tr>
  29. <td class='confluenceTd'> Source Code <br clear="all" /> </td>
  30. <td class='confluenceTd'> <a href="http://wiki.opensymphony.com/download/attachments/7464/LogCleanerJob.java?version=1" title="LogCleanerJob.java attached to LogCleanerJob">LogCleanerJob.java</a> </td>
  31. </tr>
  32. </tbody></table>
  33. <h2><a name="LogCleanerJob-UsageExample"></a>Usage Example</h2>
  34. <p>Suppose you have a log directory with an absolute path of: /home/bea/user_projects/domains/mydomain/logs</p>
  35. <p>The log files are named so that they end with the date the last time the log file was accessed. An example file name could be: myserver.log.2005-12-02</p>
  36. <p>This example runs every morning at 9:30 and deletes files older than 60 days:</p>
  37. <div class="code"><div class="codeContent">
  38. <pre class="code-java">JobDetail jobDetail = <span class="code-keyword">new</span> JobDetail(<span class="code-quote">"GrimReaper"</span>, <span class="code-keyword">null</span>, LogCleanerJob.class);
  39. JobDataMap jobDataMap = jobDetail.getJobDataMap();
  40. jobDataMap.put(LogCleanerJob.DATAMAP_KEY_LOG_DIR, <span class="code-quote">"/home/bea/user_projects/domains/mydomain/logs"</span>);
  41. jobDataMap.put(LogCleanerJob.DATAMAP_KEY_DELETE_IF_AGE_GREATER_THAN_DAYS, <span class="code-keyword">new</span> <span class="code-object">Integer</span>(60));
  42. jobDataMap.put(LogCleanerJob.DATAMAP_KEY_DATE_IN_FILENAME_REGEX, <span class="code-quote">"^.+\\.log\\.(\\d{4}-\\d{2}-\\d{2})$"</span>);
  43. jobDataMap.put(LogCleanerJob.DATAMAP_KEY_FILENAME_SIMPLE_DATE_FORMAT_PATTERN, <span class="code-quote">"yyyy-MM-dd"</span>);
  44. jobDataMap.put(LogCleanerJob.DATAMAP_KEY_DELETE_EMPTY_DIRS, <span class="code-object">Boolean</span>.FALSE);
  45. scheduler.scheduleJob(jobDetail, TriggerUtils.makeDailyTrigger(<span class="code-quote">"DailyGrimReaper"</span>, 9, 30));</pre>
  46. </div></div>
  47. <p>&nbsp;</p>
  48. <p>&nbsp;</p>
  49. <p>&nbsp;</p>
  50. <p>&nbsp;</p>
  51. <p>&nbsp;</p>
  52. <p>&nbsp;</p>
  53. <p>&nbsp;</p>
  54. <p>&nbsp;</p>
  55. <p>&nbsp;</p>
  56. <p>&nbsp;</p>
  57. <p>&nbsp;</p>
  58. <p>&nbsp;</p>
  59. <p>&nbsp;</p>
  60. </td>
  61. </tr>
  62. </table>
  63. </body>
  64. </html>