OxyLogger
Welcome to our Rails logger gem!
This is a simple logger that is easy to use and can be configured as you want.
Installation
Add this line to your application's Gemfile:
gem 'oxy_logger', '~> 0.3.0'
Then run:
$ bundle install
Usage
To include gem tasks inside your rails app.
Add this code to rails Rakefile
:
spec = Gem::Specification.find_by_name 'oxy_logger'
load "#{spec.gem_dir}/lib/tasks/logger_install.rake"
Then run the rake task.
This command will create a configuration file in your application and run the migration
to update your database.
$ rake oxy:install
Controller or Model logging
In order to log the controller methods, add in app/controllers/application_controller.rb
Do the same code for the Model, if you need to log it app/models/application_record.rb
extend OxyLogger::Sys
include OxyLogger::Helper
And at the end, specify what methods you want to use for logging.
IMPORTANT! The method log_it
must be at the end of the logged methods.
logg_it [ :index, :show, :new, :edit, :create, :update, :destroy ] # Select any of the available methods
Very simple isn't?
Configuration
When you launched the rake task a configuration file was copied into your project, which you can find at /config/initializers/logger_init.rb
OxyLogger.configure do |config|
# Save logs locally to a file or database
config.save_to = "file" # or config.save_to = "db"
If you want to log to a file, you can specify the path to it. If this file does not exist, the OxyLogger will create it.
# config.files_path = Rails.root + "/log/logged_data" # the same things in example
config.files_path = Rails.root.join('log', 'logged_data')
You can choose which parameters you want to record. Unnecessary parameter just comment out or delete.
config.logget_fields = %i[
date_time # called time
class_name # class in which was called
method_name # method in which was called
result # return result
params # parameters
]
Contributing
We will be very happy if our product interests you and you will have an irresistible desire to help us with its development.
https://github.com/[USERNAME]/oxy_logger.
License
The gem is available as open source under the terms of the MIT License.