No description
- Ruby 53.4%
- JavaScript 12.9%
- Nix 11.4%
- Haml 10.3%
- Sass 8.6%
- Other 3.4%
| bin | ||
| config | ||
| lib | ||
| log | ||
| public | ||
| scripts | ||
| tmp | ||
| views | ||
| .gitignore | ||
| Gemfile | ||
| Gemfile.lock | ||
| gemset.nix | ||
| MIT-LICENSE | ||
| README.md | ||
| shell.nix | ||
irclogger
irclogger is a simple irc logger with a fluid web interface, search function, and a live streaming mode where new messages automatically appear in today's log.
Requirements
- A Debian-based system (any other *nix can be used, but init scripts are written for Debian)
- Ruby >= 1.9.3
- MySQL >= 5 or PostgreSQL >= 9.3
- Redis >= 2.7
- Nginx
Installation
- Make sure all dependencies are installed and configured.
- Create a MySQL database and import the schema from
config/sql/mysql-schema.sql, or, create a PostgreSQL database and import the schema fromconfig/sql/postgresql-schema.sql. - Run
bundle install --deployment --without postgresqlif you use MySQL, orbundle install --deployment --without mysqlif you use PostgreSQL. - Copy
config/application.yml.exampletoconfig/application.yml. - Edit
config/application.yml. The fields should be self-documenting. - Copy
config/nginx.conf.exampleto/etc/nginx/sites-enabled/irclogger. Edit theserver_name,rootandupstreamdirectives to match your setup. - Copy
config/init.d/*to/etc/init.d/*. Edit theROOTandSTART_ARGSfields to match your setup. - Run
update-rc.d irclogger-logger defaults && update-rc.d irclogger-viewer defaults. - Reload nginx confguration.
- Start logger and viewer with
service irclogger-logger start && service irclogger-viewer start.
Updating configuration
- Edit
config/application.yml. - Restart logger with
service irclogger-logger restart.
FAQ
Messages appear multiple times in the log
Make sure that whatever method you use for restarting the logger does not leave old instances around.
The channel list does not appear in the sidebar
The channel list only appears on the domain that matches the "domain" field in application.yml. This is done to allow pointing other domains to the main one via CNAME, e.g. see logs.jruby.org.
Upgrading
git pull- Read the git log. I will mention if the updates change the schema, include breaking changes, etc.
- Run
bundle install --deployment. - Restart logger and viewer with
service irclogger-logger restart && service irclogger-viewer restart.
Development
After updating Gemfile.lock, run bundix -l to update gemset.nix. At the moment bundix must be run on Nix or from this branch.