apache_log_report 1.1.6 → 1.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 742584032338664834cd5c1b669289980e083e68d172827f6517ce040543aa4d
4
- data.tar.gz: 1bf08e255feb434ded62589d5c70ea5a6eb83dc1f6a69e60a31cb520eea6b48f
3
+ metadata.gz: 3ad003b9ae4768923ebb253dc937277372ff9adee264d77eb3db103153d8bcb5
4
+ data.tar.gz: f843e794726853611240ca3267cfed35666e3a04c030a78426bb524a8e40c632
5
5
  SHA512:
6
- metadata.gz: 955dbe90321c68f5694aaa892cae97926172ca47b684a0eee1b9f7644dc26a13f853b3b3d20e35cf06872b29db0c06bc16c4c86e69c740ea86fe8768ae92b2a1
7
- data.tar.gz: e6d9ebc88435442bfb77faa3cb2eccb94a355e9ca7af44548a7b443531c9fae923e41f5d97201044f71414f2d9894162b593cd15170e255030ab49bd9992e3f0
6
+ metadata.gz: 9a609336d73e83d15dd97939c1e1282ebe73b82d1b8e6d2cf07d2af769d4ad1e93803e825a38549c198d64f5f7e32637dcb6d3dea39eee14711e23b8adde35a0
7
+ data.tar.gz: 7fecc82af8cbb5debc54542f271855607479d1f142d1a725175afa51acbcc921f8955f4ba444594abc4e2cda4a6baf30421822c5d01e7d07bffcaf68eadbfe1e
data/README.org CHANGED
@@ -4,12 +4,80 @@
4
4
 
5
5
  * Introduction
6
6
 
7
- ApacheLogReport is an Apache log analyzer.
7
+ ApacheLogReport generates reports and statistics from Apache web logs
8
+ in the =combined= format. Written in Ruby, it runs from the command
9
+ line, it is fast, and it can be installed on any system which supports
10
+ Ruby.
11
+
12
+ ApacheLogReport moves along the lines of tools such as [[https://goaccess.io/][GoAccess]]
13
+ and [[https://umami.is/][Umami]], focusing on privacy and data-ownership: the data
14
+ generated by ApacheLogReport is stored on your computer and owned by
15
+ you (like it should be).
16
+
17
+ ApacheLogReport is also inspired by static websites generators:
18
+ statistics are generated from the command line and accessed as static
19
+ HTML files. By generating static resources, ApacheLogReport
20
+ significantly reduces the attack surface of your webserver and
21
+ installation headaches.
22
+
23
+ We have, for instance, a cron job running on our servers, generating
24
+ statistics at night. The generated files are then made available on a
25
+ private area on the web.
26
+
27
+ Statistics are generated from Apache log formats in the =combined=
28
+ format. Reports are tailored, but not limited, to web servers serving
29
+ static websites. No need to install Java Script code on your
30
+ websites, no cookies installed, no user tracking.
31
+
32
+ ApacheLogReport reports the following data:
33
+
34
+ - Visitors, hits, unique visitors, bandwidth used
35
+ - Most accessed HTML pages
36
+ - Most accessed resources
37
+ - Response statuses
38
+ - referers
39
+ - OS, browsers, and devices
40
+ - Streaks: resources accessed by a given IP over time
41
+ - Potential attacks: access to resources which are not meant to be
42
+ served by a web server serving static websites
43
+
44
+ Filters from the command line allow to analyze specific periods and
45
+ distinguish traffic generated by self polls and crawlers.
46
+
47
+ ApacheLogReport generates HTML and SQLite outputs. Moreover, it can
48
+ also generate reports in Org Mode format, which can be then processed
49
+ to various formats (including LaTeX and HTML).
8
50
 
9
51
  * Installation
10
52
 
53
+ #+begin_src bash
54
+ gem install apache_log_report
55
+ #+end_src
56
+
11
57
  * Usage
12
58
 
59
+ #+begin_src bash :results raw output :wrap example
60
+ apache_log_report --help
61
+ #+end_src
62
+
63
+ #+RESULTS:
64
+ #+begin_example
65
+ Usage: apache_log_report [options] [logfile]
66
+ -l, --limit=N Number of entries to show (defaults to 30)
67
+ -b, --begin=DATE Consider entries after or on DATE
68
+ -e, --end=DATE Consider entries before or on DATE
69
+ -i, --ignore-crawlers Ignore crawlers
70
+ -p, --ignore-selfpoll Ignore apaches self poll entries (from ::1)
71
+ --only-crawlers Perform analysis on crawlers only
72
+ -u, --prefix=PREFIX Prefix to add to all plots (used to run multiple analyses in the same dir)
73
+ -w, --suffix=SUFFIX Suffix to add to all plots (used to run multiple analyses in the same dir)
74
+ -c, --code-export=WHAT Control :export directive in Org Mode code blocks (code, results, *both*, none)
75
+ -f, --format=FORMAT Output format: html, org, sqlite. Defaults to org mode
76
+ -v, --version Prints version information
77
+ -h, --help Prints this help
78
+ This is version 1.1.6
79
+ #+end_example
80
+
13
81
  * Change Log
14
82
 
15
83
  See the [[file:CHANGELOG.org][CHANGELOG]] file.
@@ -18,13 +86,20 @@ See the [[file:CHANGELOG.org][CHANGELOG]] file.
18
86
 
19
87
  ** TODO Referers should only include the hostname?
20
88
  ** TODO Graphs in HTML output
21
- ** TODO Countries
89
+ ** TODO Countries/IP Lookup
22
90
  ** TODO Light and Dark Theme
23
91
  ** TODO Embed CSS
24
92
  ** TODO Declare datatypes in table outputs, so that we can format data
25
93
 
26
94
  * Compatibility
27
95
 
96
+ ApacheLogReport should run on any system on which Ruby runs.
97
+
98
+ Concerning the outputs:
99
+
100
+ - The HTML report uses [[https://picturepan2.github.io/spectre/][Spectre.css]] and (will use) [[https://vega.github.io/vega-lite/][Vega Light]], which
101
+ are downloaded from a CDN
102
+ - Org Mode plots data using [[http://gnuplot.info/][Gnuplot]]
28
103
 
29
104
  * Author and Contributors
30
105
 
@@ -1,3 +1,3 @@
1
1
  module ApacheLogReport
2
- VERSION = "1.1.6"
2
+ VERSION = "1.1.7"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: apache_log_report
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.6
4
+ version: 1.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adolfo Villafiorita
@@ -119,7 +119,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
119
119
  - !ruby/object:Gem::Version
120
120
  version: '0'
121
121
  requirements: []
122
- rubygems_version: 3.2.22
122
+ rubygems_version: 3.0.3
123
123
  signing_key:
124
124
  specification_version: 4
125
125
  summary: Generate analytics from an Apache log file.