Compare commits
No commits in common. "b2c987941206a4b0948c29e90933cdd8f6d7f484" and "53e7390b770811a1e24d6071a842ec7260b66890" have entirely different histories.
b2c9879412
...
53e7390b77
19
ChangeLog
19
ChangeLog
|
@ -1,22 +1,3 @@
|
||||||
v0.8 (03/02/2025)
|
|
||||||
** User **
|
|
||||||
Add multimedia_re filter to detect multimedia files by regular expression
|
|
||||||
Add domain and number of subscribers for feed parser
|
|
||||||
Add "no_merge_feeds_parsers"_list conf value
|
|
||||||
Add "robot_domains" configuration value
|
|
||||||
Add rule for robot : forbid only "1 page and 1 hit"
|
|
||||||
Add "ignore_url" conf value
|
|
||||||
|
|
||||||
** Dev **
|
|
||||||
Sanitize HTTP requests before analyze
|
|
||||||
Try to detect robots by "compatible" strings
|
|
||||||
Move feeds and reverse_dns plugins from post_analysis to pre_analysis
|
|
||||||
Move reverse DNS core management into iwla.py
|
|
||||||
|
|
||||||
** Bugs **
|
|
||||||
Fix potential division by 0
|
|
||||||
|
|
||||||
|
|
||||||
v0.7 (17/03/2024)
|
v0.7 (17/03/2024)
|
||||||
** User **
|
** User **
|
||||||
Awstats data updated (7.9)
|
Awstats data updated (7.9)
|
||||||
|
|
141
docs/index.md
141
docs/index.md
|
@ -134,19 +134,19 @@ Optional configuration values ends with *.
|
||||||
* plugins/display/visitor_ip.py
|
* plugins/display/visitor_ip.py
|
||||||
* plugins/post_analysis/anonymize_ip.py
|
* plugins/post_analysis/anonymize_ip.py
|
||||||
* plugins/post_analysis/browsers.py
|
* plugins/post_analysis/browsers.py
|
||||||
|
* plugins/post_analysis/feeds.py
|
||||||
* plugins/post_analysis/filter_users.py
|
* plugins/post_analysis/filter_users.py
|
||||||
* plugins/post_analysis/hours_stats.py
|
* plugins/post_analysis/hours_stats.py
|
||||||
* plugins/post_analysis/ip_to_geo.py
|
* plugins/post_analysis/ip_to_geo.py
|
||||||
* plugins/post_analysis/ip_type.py
|
* plugins/post_analysis/ip_type.py
|
||||||
* plugins/post_analysis/operating_systems.py
|
* plugins/post_analysis/operating_systems.py
|
||||||
* plugins/post_analysis/referers.py
|
* plugins/post_analysis/referers.py
|
||||||
|
* plugins/post_analysis/reverse_dns.py
|
||||||
* plugins/post_analysis/subdomains.py
|
* plugins/post_analysis/subdomains.py
|
||||||
* plugins/post_analysis/top_downloads.py
|
* plugins/post_analysis/top_downloads.py
|
||||||
* plugins/post_analysis/top_hits.py
|
* plugins/post_analysis/top_hits.py
|
||||||
* plugins/post_analysis/top_pages.py
|
* plugins/post_analysis/top_pages.py
|
||||||
* plugins/pre_analysis/feeds.py
|
|
||||||
* plugins/pre_analysis/page_to_hit.py
|
* plugins/pre_analysis/page_to_hit.py
|
||||||
* plugins/pre_analysis/reverse_dns.py
|
|
||||||
* plugins/pre_analysis/robots.py
|
* plugins/pre_analysis/robots.py
|
||||||
|
|
||||||
|
|
||||||
|
@ -164,13 +164,9 @@ iwla
|
||||||
analyzed_filename
|
analyzed_filename
|
||||||
domain_name
|
domain_name
|
||||||
locales_path
|
locales_path
|
||||||
locale
|
|
||||||
keep_requests*
|
|
||||||
compress_output_files
|
compress_output_files
|
||||||
excluded_ip
|
excluded_ip
|
||||||
excluded_domain_name
|
excluded_domain_name
|
||||||
reverse_dns_timeout*
|
|
||||||
ignore_url*
|
|
||||||
|
|
||||||
Output files :
|
Output files :
|
||||||
DB_ROOT/meta.db
|
DB_ROOT/meta.db
|
||||||
|
@ -870,6 +866,42 @@ plugins.post_analysis.browsers
|
||||||
None
|
None
|
||||||
|
|
||||||
|
|
||||||
|
plugins.post_analysis.feeds
|
||||||
|
---------------------------
|
||||||
|
|
||||||
|
Post analysis hook
|
||||||
|
|
||||||
|
Find feeds parsers (first hit in feeds conf value and no viewed pages if it's a robot)
|
||||||
|
If merge_feeds_parsers is set to True, merge feeds parsers with the same user agent
|
||||||
|
as it must be the same person with a different IP address.
|
||||||
|
|
||||||
|
Warning : When merge_feeds_parsers is activated, last access display date is the more
|
||||||
|
recent date of all merged parsers found
|
||||||
|
|
||||||
|
Plugin requirements :
|
||||||
|
None
|
||||||
|
|
||||||
|
Conf values needed :
|
||||||
|
feeds
|
||||||
|
feeds_agents*
|
||||||
|
merge_feeds_parsers*
|
||||||
|
|
||||||
|
Output files :
|
||||||
|
None
|
||||||
|
|
||||||
|
Statistics creation :
|
||||||
|
remote_ip =>
|
||||||
|
feed_parser
|
||||||
|
feed_name_analysed
|
||||||
|
feed_parser_last_access (for merged parser)
|
||||||
|
|
||||||
|
Statistics update :
|
||||||
|
None
|
||||||
|
|
||||||
|
Statistics deletion :
|
||||||
|
None
|
||||||
|
|
||||||
|
|
||||||
plugins.post_analysis.filter_users
|
plugins.post_analysis.filter_users
|
||||||
----------------------------------
|
----------------------------------
|
||||||
|
|
||||||
|
@ -1096,6 +1128,35 @@ plugins.post_analysis.referers
|
||||||
None
|
None
|
||||||
|
|
||||||
|
|
||||||
|
plugins.post_analysis.reverse_dns
|
||||||
|
---------------------------------
|
||||||
|
|
||||||
|
Post analysis hook
|
||||||
|
|
||||||
|
Replace IP by reverse DNS names
|
||||||
|
|
||||||
|
Plugin requirements :
|
||||||
|
None
|
||||||
|
|
||||||
|
Conf values needed :
|
||||||
|
reverse_dns_timeout*
|
||||||
|
|
||||||
|
Output files :
|
||||||
|
None
|
||||||
|
|
||||||
|
Statistics creation :
|
||||||
|
None
|
||||||
|
|
||||||
|
Statistics update :
|
||||||
|
valid_visitors:
|
||||||
|
remote_addr
|
||||||
|
dns_name_replaced
|
||||||
|
dns_analyzed
|
||||||
|
|
||||||
|
Statistics deletion :
|
||||||
|
None
|
||||||
|
|
||||||
|
|
||||||
plugins.post_analysis.subdomains
|
plugins.post_analysis.subdomains
|
||||||
--------------------------------
|
--------------------------------
|
||||||
|
|
||||||
|
@ -1208,45 +1269,6 @@ plugins.post_analysis.top_pages
|
||||||
None
|
None
|
||||||
|
|
||||||
|
|
||||||
plugins.pre_analysis.feeds
|
|
||||||
--------------------------
|
|
||||||
|
|
||||||
Pre analysis hook
|
|
||||||
|
|
||||||
Find feeds parsers (first hit in feeds conf value and no viewed pages if it's a robot)
|
|
||||||
If merge_feeds_parsers is set to True, merge feeds parsers with the same user agent
|
|
||||||
as it must be the same person with a different IP address.
|
|
||||||
|
|
||||||
Warning : When merge_feeds_parsers is activated, last access display date is the more
|
|
||||||
recent date of all merged parsers found
|
|
||||||
|
|
||||||
Plugin requirements :
|
|
||||||
None
|
|
||||||
|
|
||||||
Conf values needed :
|
|
||||||
feeds
|
|
||||||
feeds_agents*
|
|
||||||
merge_feeds_parsers*
|
|
||||||
|
|
||||||
Output files :
|
|
||||||
None
|
|
||||||
|
|
||||||
Statistics creation :
|
|
||||||
remote_ip =>
|
|
||||||
feed_parser
|
|
||||||
feed_name_analyzed
|
|
||||||
feed_parser_last_access (for merged parser)
|
|
||||||
feed_domain
|
|
||||||
feed_uri
|
|
||||||
feed_subscribers
|
|
||||||
|
|
||||||
Statistics update :
|
|
||||||
None
|
|
||||||
|
|
||||||
Statistics deletion :
|
|
||||||
None
|
|
||||||
|
|
||||||
|
|
||||||
plugins.pre_analysis.page_to_hit
|
plugins.pre_analysis.page_to_hit
|
||||||
--------------------------------
|
--------------------------------
|
||||||
|
|
||||||
|
@ -1275,35 +1297,6 @@ plugins.pre_analysis.page_to_hit
|
||||||
None
|
None
|
||||||
|
|
||||||
|
|
||||||
plugins.pre_analysis.reverse_dns
|
|
||||||
--------------------------------
|
|
||||||
|
|
||||||
Pre analysis hook
|
|
||||||
|
|
||||||
Replace IP by reverse DNS names
|
|
||||||
|
|
||||||
Plugin requirements :
|
|
||||||
None
|
|
||||||
|
|
||||||
Conf values needed :
|
|
||||||
robot_domains*
|
|
||||||
|
|
||||||
Output files :
|
|
||||||
None
|
|
||||||
|
|
||||||
Statistics creation :
|
|
||||||
None
|
|
||||||
|
|
||||||
Statistics update :
|
|
||||||
valid_visitors:
|
|
||||||
remote_addr
|
|
||||||
dns_name_replaced
|
|
||||||
dns_analyzed
|
|
||||||
|
|
||||||
Statistics deletion :
|
|
||||||
None
|
|
||||||
|
|
||||||
|
|
||||||
plugins.pre_analysis.robots
|
plugins.pre_analysis.robots
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|
||||||
|
|
141
docs/modules.md
141
docs/modules.md
|
@ -22,19 +22,19 @@
|
||||||
* plugins/display/visitor_ip.py
|
* plugins/display/visitor_ip.py
|
||||||
* plugins/post_analysis/anonymize_ip.py
|
* plugins/post_analysis/anonymize_ip.py
|
||||||
* plugins/post_analysis/browsers.py
|
* plugins/post_analysis/browsers.py
|
||||||
|
* plugins/post_analysis/feeds.py
|
||||||
* plugins/post_analysis/filter_users.py
|
* plugins/post_analysis/filter_users.py
|
||||||
* plugins/post_analysis/hours_stats.py
|
* plugins/post_analysis/hours_stats.py
|
||||||
* plugins/post_analysis/ip_to_geo.py
|
* plugins/post_analysis/ip_to_geo.py
|
||||||
* plugins/post_analysis/ip_type.py
|
* plugins/post_analysis/ip_type.py
|
||||||
* plugins/post_analysis/operating_systems.py
|
* plugins/post_analysis/operating_systems.py
|
||||||
* plugins/post_analysis/referers.py
|
* plugins/post_analysis/referers.py
|
||||||
|
* plugins/post_analysis/reverse_dns.py
|
||||||
* plugins/post_analysis/subdomains.py
|
* plugins/post_analysis/subdomains.py
|
||||||
* plugins/post_analysis/top_downloads.py
|
* plugins/post_analysis/top_downloads.py
|
||||||
* plugins/post_analysis/top_hits.py
|
* plugins/post_analysis/top_hits.py
|
||||||
* plugins/post_analysis/top_pages.py
|
* plugins/post_analysis/top_pages.py
|
||||||
* plugins/pre_analysis/feeds.py
|
|
||||||
* plugins/pre_analysis/page_to_hit.py
|
* plugins/pre_analysis/page_to_hit.py
|
||||||
* plugins/pre_analysis/reverse_dns.py
|
|
||||||
* plugins/pre_analysis/robots.py
|
* plugins/pre_analysis/robots.py
|
||||||
|
|
||||||
|
|
||||||
|
@ -52,13 +52,9 @@ iwla
|
||||||
analyzed_filename
|
analyzed_filename
|
||||||
domain_name
|
domain_name
|
||||||
locales_path
|
locales_path
|
||||||
locale
|
|
||||||
keep_requests*
|
|
||||||
compress_output_files
|
compress_output_files
|
||||||
excluded_ip
|
excluded_ip
|
||||||
excluded_domain_name
|
excluded_domain_name
|
||||||
reverse_dns_timeout*
|
|
||||||
ignore_url*
|
|
||||||
|
|
||||||
Output files :
|
Output files :
|
||||||
DB_ROOT/meta.db
|
DB_ROOT/meta.db
|
||||||
|
@ -758,6 +754,42 @@ plugins.post_analysis.browsers
|
||||||
None
|
None
|
||||||
|
|
||||||
|
|
||||||
|
plugins.post_analysis.feeds
|
||||||
|
---------------------------
|
||||||
|
|
||||||
|
Post analysis hook
|
||||||
|
|
||||||
|
Find feeds parsers (first hit in feeds conf value and no viewed pages if it's a robot)
|
||||||
|
If merge_feeds_parsers is set to True, merge feeds parsers with the same user agent
|
||||||
|
as it must be the same person with a different IP address.
|
||||||
|
|
||||||
|
Warning : When merge_feeds_parsers is activated, last access display date is the more
|
||||||
|
recent date of all merged parsers found
|
||||||
|
|
||||||
|
Plugin requirements :
|
||||||
|
None
|
||||||
|
|
||||||
|
Conf values needed :
|
||||||
|
feeds
|
||||||
|
feeds_agents*
|
||||||
|
merge_feeds_parsers*
|
||||||
|
|
||||||
|
Output files :
|
||||||
|
None
|
||||||
|
|
||||||
|
Statistics creation :
|
||||||
|
remote_ip =>
|
||||||
|
feed_parser
|
||||||
|
feed_name_analysed
|
||||||
|
feed_parser_last_access (for merged parser)
|
||||||
|
|
||||||
|
Statistics update :
|
||||||
|
None
|
||||||
|
|
||||||
|
Statistics deletion :
|
||||||
|
None
|
||||||
|
|
||||||
|
|
||||||
plugins.post_analysis.filter_users
|
plugins.post_analysis.filter_users
|
||||||
----------------------------------
|
----------------------------------
|
||||||
|
|
||||||
|
@ -984,6 +1016,35 @@ plugins.post_analysis.referers
|
||||||
None
|
None
|
||||||
|
|
||||||
|
|
||||||
|
plugins.post_analysis.reverse_dns
|
||||||
|
---------------------------------
|
||||||
|
|
||||||
|
Post analysis hook
|
||||||
|
|
||||||
|
Replace IP by reverse DNS names
|
||||||
|
|
||||||
|
Plugin requirements :
|
||||||
|
None
|
||||||
|
|
||||||
|
Conf values needed :
|
||||||
|
reverse_dns_timeout*
|
||||||
|
|
||||||
|
Output files :
|
||||||
|
None
|
||||||
|
|
||||||
|
Statistics creation :
|
||||||
|
None
|
||||||
|
|
||||||
|
Statistics update :
|
||||||
|
valid_visitors:
|
||||||
|
remote_addr
|
||||||
|
dns_name_replaced
|
||||||
|
dns_analyzed
|
||||||
|
|
||||||
|
Statistics deletion :
|
||||||
|
None
|
||||||
|
|
||||||
|
|
||||||
plugins.post_analysis.subdomains
|
plugins.post_analysis.subdomains
|
||||||
--------------------------------
|
--------------------------------
|
||||||
|
|
||||||
|
@ -1096,45 +1157,6 @@ plugins.post_analysis.top_pages
|
||||||
None
|
None
|
||||||
|
|
||||||
|
|
||||||
plugins.pre_analysis.feeds
|
|
||||||
--------------------------
|
|
||||||
|
|
||||||
Pre analysis hook
|
|
||||||
|
|
||||||
Find feeds parsers (first hit in feeds conf value and no viewed pages if it's a robot)
|
|
||||||
If merge_feeds_parsers is set to True, merge feeds parsers with the same user agent
|
|
||||||
as it must be the same person with a different IP address.
|
|
||||||
|
|
||||||
Warning : When merge_feeds_parsers is activated, last access display date is the more
|
|
||||||
recent date of all merged parsers found
|
|
||||||
|
|
||||||
Plugin requirements :
|
|
||||||
None
|
|
||||||
|
|
||||||
Conf values needed :
|
|
||||||
feeds
|
|
||||||
feeds_agents*
|
|
||||||
merge_feeds_parsers*
|
|
||||||
|
|
||||||
Output files :
|
|
||||||
None
|
|
||||||
|
|
||||||
Statistics creation :
|
|
||||||
remote_ip =>
|
|
||||||
feed_parser
|
|
||||||
feed_name_analyzed
|
|
||||||
feed_parser_last_access (for merged parser)
|
|
||||||
feed_domain
|
|
||||||
feed_uri
|
|
||||||
feed_subscribers
|
|
||||||
|
|
||||||
Statistics update :
|
|
||||||
None
|
|
||||||
|
|
||||||
Statistics deletion :
|
|
||||||
None
|
|
||||||
|
|
||||||
|
|
||||||
plugins.pre_analysis.page_to_hit
|
plugins.pre_analysis.page_to_hit
|
||||||
--------------------------------
|
--------------------------------
|
||||||
|
|
||||||
|
@ -1163,35 +1185,6 @@ plugins.pre_analysis.page_to_hit
|
||||||
None
|
None
|
||||||
|
|
||||||
|
|
||||||
plugins.pre_analysis.reverse_dns
|
|
||||||
--------------------------------
|
|
||||||
|
|
||||||
Pre analysis hook
|
|
||||||
|
|
||||||
Replace IP by reverse DNS names
|
|
||||||
|
|
||||||
Plugin requirements :
|
|
||||||
None
|
|
||||||
|
|
||||||
Conf values needed :
|
|
||||||
robot_domains*
|
|
||||||
|
|
||||||
Output files :
|
|
||||||
None
|
|
||||||
|
|
||||||
Statistics creation :
|
|
||||||
None
|
|
||||||
|
|
||||||
Statistics update :
|
|
||||||
valid_visitors:
|
|
||||||
remote_addr
|
|
||||||
dns_name_replaced
|
|
||||||
dns_analyzed
|
|
||||||
|
|
||||||
Statistics deletion :
|
|
||||||
None
|
|
||||||
|
|
||||||
|
|
||||||
plugins.pre_analysis.robots
|
plugins.pre_analysis.robots
|
||||||
---------------------------
|
---------------------------
|
||||||
|
|
||||||
|
|
Binary file not shown.
|
@ -6,7 +6,7 @@ msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: iwla\n"
|
"Project-Id-Version: iwla\n"
|
||||||
"POT-Creation-Date: 2024-03-16 08:52+0100\n"
|
"POT-Creation-Date: 2024-03-16 08:52+0100\n"
|
||||||
"PO-Revision-Date: 2025-02-03 09:57+0100\n"
|
"PO-Revision-Date: 2024-03-16 08:53+0100\n"
|
||||||
"Last-Translator: Soutadé <soutade@gmail.com>\n"
|
"Last-Translator: Soutadé <soutade@gmail.com>\n"
|
||||||
"Language-Team: iwla\n"
|
"Language-Team: iwla\n"
|
||||||
"Language: fr\n"
|
"Language: fr\n"
|
||||||
|
@ -15,7 +15,7 @@ msgstr ""
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||||
"Generated-By: pygettext.py 1.5\n"
|
"Generated-By: pygettext.py 1.5\n"
|
||||||
"X-Generator: Poedit 3.5\n"
|
"X-Generator: Poedit 3.4.2\n"
|
||||||
"X-Poedit-SourceCharset: UTF-8\n"
|
"X-Poedit-SourceCharset: UTF-8\n"
|
||||||
|
|
||||||
#: display.py:32
|
#: display.py:32
|
||||||
|
@ -424,6 +424,7 @@ msgid "All key phrases"
|
||||||
msgstr "Toutes les phrases clé"
|
msgstr "Toutes les phrases clé"
|
||||||
|
|
||||||
#: plugins/display/robot_bandwidth.py:90
|
#: plugins/display/robot_bandwidth.py:90
|
||||||
|
#, fuzzy
|
||||||
msgid "Name"
|
msgid "Name"
|
||||||
msgstr "Nom"
|
msgstr "Nom"
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user