Project

rb.rotate

0.0
No commit activity in last 3 years
No release in over 3 years
More modern alternative to classical 'logrotate' tool with more features and less limitations. It implements very similar functionality, features openness and flexibility of the scripting environment and removes some most known 'logrotate' limitations.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.0.0
~> 1.5.2

Runtime

>= 1.1
>= 0.8.5
 Project Readme

rb.rotate

rb.rotate is an more modern alternative to classical logrotate tool with more features and less limitations. It implements very similar functionallity, features openess and flexibility of the scripting environment and removes some most known logrotate limitations.

And of sure, it adds some features and it doesn't implement some features of the original for now.

Removed logrotate Limitations

  • log directory and archive directory can be on different drives,
  • it can follow symbolic links both for directories and files,
  • it can respect the subdirectories structure of the log directory, so archive directory can have the same structure as original log directory.

Additional Features

  • elegant, well documented and easy-to-understand YAML configuration file,
  • flexible and in fact unlimited possibility to define hooks while "put file to archive" action and run them in mix with pre-build actions in whatever required order.

Installation

After installing the rb.rotate gem, simply type following as root and then add the rb.rotate entry to cron.

rb.rotate install

Be warn, it works for Linux and FreeBSD only. On other platforms, please:

  1. copy initial configuration files in <gem-path>/lib/rb.rotate/install to appropriate location on your platform (remove the .initial extension, of sure),
  2. create the <gem-path>/lib/paths.conf file with path to rotate.yaml file,
  3. change paths in rotate.yaml file to directories appropriate for your platfom,
  4. report back to the project output of the rb.rotate sysname command and appropriate configuration locations for including them in next release.

Status

Currently in pre-beta version. All features are implemented, some of them such as hooks are untested.

Documentation

See the configuration file. It's pretty well documented with possible values listed and a lot of explaining.

Contributing

  1. Fork it.
  2. Create a branch (git checkout -b 20101220-my-change).
  3. Commit your changes (git commit -am "Added something").
  4. Push to the branch (git push origin 20101220-my-change).
  5. Create an Issue with a link to your branch.
  6. Enjoy a refreshing Diet Coke and wait.

Copyright

Copyright (c) 2010 Martin Kozák. See LICENSE.txt for further details.