log_sense 1.7.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 126257c949e11f090cc1928a1458572529f71c44a5c20baae35861241dfa7b7b
4
- data.tar.gz: 33a1ee650598a90ca9adb6a6c2795746dfe8a7735414b22b930d3806b205b318
3
+ metadata.gz: 40a7ce48ddf73fc434bd0df0265e5d16d39e5034b62714f0324ea2a8b56950ca
4
+ data.tar.gz: c6e4ce814d0276f3a2c2aeaa20051772695c8bf8c8f53cbe10440415bb301dec
5
5
  SHA512:
6
- metadata.gz: f135c70480994434dea0b5ff11bac5b1239d071ae38afeda7dd3672a43e127bba06136d550f29844c60dd2d2640a87c57f7fda683240512d1fe37794d124a433
7
- data.tar.gz: 65abbe86864aba7d9e6499e6f3ec4a0ef2facf00505ea8611eec3b44279772641bf3a4374045acac0892c8bde19ce37c74a88501fa7905342b1e30032f2b50b4
6
+ metadata.gz: 3b31c02a784d0e3059500f774b090fd40e099d1facd2382195096194ccdecebb5ce601b26b6c04874cc7446e6e625e91be15966d425fc050f3b0be50c67a6985
7
+ data.tar.gz: 9b79e356ebcaa21b207c24c9ba4c78e39c6865deb4925413aca51b0ce1b705918ca30b61aa205be447547ac428e038239807f82046a9842f7a9d7753037c5fa5
data/CHANGELOG.org CHANGED
@@ -2,6 +2,11 @@
2
2
  #+AUTHOR: Adolfo Villafiorita
3
3
  #+STARTUP: showall
4
4
 
5
+ * 1.8.0
6
+
7
+ - Various improvements to the Rails reports
8
+ - Support for BrowserInfo data
9
+
5
10
  * 1.7.0
6
11
 
7
12
  - [User] Fixes a bug with the geolocator
data/README.org CHANGED
@@ -1,11 +1,15 @@
1
- #+TITLE: README
1
+ #+TITLE: LogSense Readme - Monitor your Rails app easy and fast
2
2
  #+AUTHOR: Adolfo Villafiorita
3
3
  #+STARTUP: showall
4
4
 
5
5
  * Introduction
6
6
 
7
- LogSense generates reports and statistics from Apache and Ruby on
8
- Rails logs. Written in Ruby, it runs from the command line, it is
7
+ LogSense generates reports and statistics from Apache and Ruby on Rails log
8
+ files. All the statistics you need to monitor your application, its
9
+ performances, and how users access your app. Since it collects data from logs,
10
+ there is no need for cookies or other tracking technologies.
11
+
12
+ LogSense is Written in Ruby, it runs from the command line, it is
9
13
  fast, and it can be installed on any system with a relatively recent
10
14
  version of Ruby. We tested on Ruby 2.6.9, Ruby 3.0.x and later.
11
15
 
@@ -22,6 +26,11 @@ When generating reports, LogSense reports the following data:
22
26
  - IP Country location, thanks to the DP-IP lite country DB
23
27
  - Streaks: resources accessed by a given IP over time
24
28
  - Performance of Rails requests
29
+ - Rails Fatal Errors (with reference to the logs)
30
+
31
+ LogSense parses also the data generated by BrowserInfo, providing additional
32
+ information for Rails apps, including devices and platforms and number of
33
+ accesses to methods by device type.
25
34
 
26
35
  A special output format =ufw= generates rules for the [[https://launchpad.net/ufw][Uncomplicated
27
36
  Firewall]] to blacklist IPs requesting URLs matching a specific pattern.
@@ -31,16 +40,16 @@ distinguish traffic generated by self polls and crawlers.
31
40
 
32
41
  LogSense generates HTML, txt, ufw, and SQLite outputs.
33
42
 
34
- ** Apache Report Structure
43
+ ** Rails Report Structure
35
44
 
36
45
  #+ATTR_HTML: :width 80%
37
- [[file:./screenshots/apache-screenshot.png]]
46
+ [[file:./screenshots/rails-screenshot.png]]
38
47
 
39
48
 
40
- ** Rails Report Structure
49
+ ** Apache Report Structure
41
50
 
42
51
  #+ATTR_HTML: :width 80%
43
- [[file:./screenshots/rails-screenshot.png]]
52
+ [[file:./screenshots/apache-screenshot.png]]
44
53
 
45
54
 
46
55
  ** UFW Report
@@ -78,19 +87,16 @@ opened or code executed.
78
87
 
79
88
  * Motivation
80
89
 
81
- LogSense moves along the lines of tools such as [[https://goaccess.io/][GoAccess]] (which
82
- strongly inspired the development of Log Sense) and [[https://umami.is/][Umami]], both
83
- focusing on *privacy* and *data-ownership*: the data generated by
84
- LogSense is stored on your computer and owned by you (like it should
85
- be)[fn:1].
86
-
87
- LogSense is also inspired by *static websites generators*: statistics
88
- are generated from the command line and accessed as static HTML files.
89
- LogSense thus significantly reduces the attack surface of your
90
- web server and installation headaches. We have, for instance, a cron
91
- job running on our servers, generating statistics at night. The
92
- generated files are then made available on a private area on the web.
90
+ LogSense moves along the lines of tools such as [[https://goaccess.io/][GoAccess]] and [[https://umami.is/][Umami]], focusing on
91
+ *privacy*, *data-ownership*, and *simplicity*: no need to install JavaScript
92
+ snippets, no tracking cookies, just plain and simple log analysis.
93
93
 
94
+ LogSense is also inspired by *static websites generators*: statistics are
95
+ generated from the command line and accessed as static HTML files. This
96
+ significantly reduces the attack surface of your web server and installation
97
+ headaches. We have, for instance, a cron job running on our servers, generating
98
+ statistics at night. The generated files are then made available on a private
99
+ area on the web.
94
100
 
95
101
  * Installation
96
102
 
@@ -98,7 +104,6 @@ generated files are then made available on a private area on the web.
98
104
  gem install log_sense
99
105
  #+end_src
100
106
 
101
-
102
107
  * Usage
103
108
 
104
109
  #+begin_src bash :results raw output :wrap example
@@ -108,25 +113,25 @@ generated files are then made available on a private area on the web.
108
113
  #+RESULTS:
109
114
  #+begin_example
110
115
  Usage: log_sense [options] [logfile ...]
111
- --title=TITLE Title to use in the report
112
- -f, --input-format=FORMAT Input format (either rails or apache)
113
- -i, --input-files=file,file, Input files (can also be passed directly)
114
- -t, --output-format=FORMAT Output format: html, org, txt, sqlite.
115
- -o, --output-file=OUTPUT_FILE Output file
116
- -b, --begin=DATE Consider entries after or on DATE
117
- -e, --end=DATE Consider entries before or on DATE
118
- -l, --limit=N Limit to the N most requested resources (defaults to 100)
119
- -w, --width=WIDTH Maximum width of long columns in textual reports
120
- -r, --rows=ROWS Maximum number of rows for columns with multiple entries in textual reports
121
- -p, --pattern=PATTERN Pattern to use with ufw report to decide IP to blacklist
122
- -c, --crawlers=POLICY Decide what to do with crawlers (applies to Apache Logs)
123
- --no-selfpolls Ignore self poll entries (requests from ::1; applies to Apache Logs)
124
- -n, --no-geog Do not geolocate entries
125
- --verbose Inform about progress (output to STDERR)
126
- -v, --version Prints version information
127
- -h, --help Prints this help
128
-
129
- This is version 1.6.0
116
+ --title=TITLE Title to use in the report
117
+ -f, --input-format=FORMAT Log format (stored in log or sqlite3): rails or apache (DEFAULT: apache)
118
+ -i, --input-files=file,file, Input file(s), log file or sqlite3 (can also be passed as arguments)
119
+ -t, --output-format=FORMAT Output format: html, txt, sqlite, ufw (DEFAULT: html)
120
+ -o, --output-file=OUTPUT_FILE Output file. (DEFAULT: STDOUT)
121
+ -b, --begin=DATE Consider only entries after or on DATE
122
+ -e, --end=DATE Consider only entries before or on DATE
123
+ -l, --limit=N Limit to the N most requested resources (DEFAULT: 100)
124
+ -w, --width=WIDTH Maximum width of long columns in textual reports
125
+ -r, --rows=ROWS Maximum number of rows for columns with multiple entries in textual reports
126
+ -p, --pattern=PATTERN Pattern to use with ufw report to select IP to blacklist (DEFAULT: php)
127
+ -c, --crawlers=POLICY Decide what to do with crawlers (applies to Apache Logs)
128
+ --no-selfpoll Ignore self poll entries (requests from ::1; applies to Apache Logs) (DEFAULT: false)
129
+ --no-geo Do not geolocate entries (DEFAULT: true)
130
+ --verbose Inform about progress (output to STDERR) (DEFAULT: false)
131
+ -v, --version Prints version information
132
+ -h, --help Prints this help
133
+
134
+ This is version 1.8.0
130
135
 
131
136
  Output formats:
132
137
 
@@ -210,8 +215,8 @@ Concerning the outputs:
210
215
 
211
216
  * Known Bugs
212
217
 
213
- No known bugs; an unknown number of unknown bugs. (See the open issues for
214
- the known bugs.)
218
+ We have been running LogSense for quite a few years with no particular issues.
219
+ There are no known bugs; there is an unknown number of unknown bugs.
215
220
 
216
221
  * License
217
222
 
@@ -220,8 +225,3 @@ Source code distributed under the terms of the [[http://opensource.org/licenses/
220
225
  Geolocation is made possible by the DB-IP.com IP to City database,
221
226
  released under a CC license.
222
227
 
223
- [fn:1] There is a small catch: CSS and JavaScript for layout and plots
224
- are downloaded from a CDN. Technically, thus, if you generate HTML
225
- reports and open them, a request is performed and the CDN might keep a
226
- track (see [[https://en.wikipedia.org/wiki/Content_delivery_network#Security_and_privacy][CDN Security and Privacy on Wikipedia]] for more details).
227
- Textual reports don't have this issue.