regina/default.cfg
2023-05-15 21:59:38 +02:00

233 lines
7.5 KiB
INI

# ************************************* REGINA CONFIGURATION **************************************
# .__
# _______ ____ ____ |__| ____ _____
# \_ __ \_/ __ \ / ___\| |/ \\__ \
# | | \/\ ___// /_/ > | | \/ __ \_
# |__| \___ >___ /|__|___| (____ /
# \/_____/ \/ \/
# *************************************************************************************************
# data_dir: ~/.local/share/regina < $XDG_DATA_HOME/regina < $REGINA_DATA_DIR
# config_dir: ~/.config/regina < $XDG_CONFIG_HOME/regina < $REGINA_CONFIG_DIR
# *************************************************************************************************
[regina]
# name of the server or website
# will be avaiable as variable for the generated html as %server_name
# type: string
# server_name = my_website
server_name =
# database path. if None, 'data_dir/server_name.db' is used
# type: file (read, write permissions) or None
# database = /home/my_user/.local/share/regina/my_website.db
database =
# path to the nginx access log to parse
# type: file (read permissions)
# access_log = /var/log/nginx/access.log
access_log =
# These settings affect the data collection. If changed, they will affect how the database is being filled in the future.
[data-collection]
# whether a unique visitor is only identified by IP address. if False, browser and platform are also taken into account
# type: True/False
unique_visitor_is_ip_address = False
# whether a visitor needs at least one successful request to be a human
# type: True/False
human_needs_successful_request = True
# whether a request with 30x HTTP status counts as successful request
# type: True/False
status_300_is_success = True
# ignore requests from the same visitor to the same route if one was made within the last x seconds
# type: int
ignore_duplicate_requests_within_x_seconds = 0
# delete all ip addresses after the collection is done (not implemented yet!)
# type: True/False
delete_ip_addresses = True
# don't collect requests to locations that match this regex
# type: regexp or None
# request_route_blacklist = /analytics.*
request_route_blacklist =
# only collect requests to locations that match this regex
# type: regexp or None
request_route_whitelist =
# whether to get visitor location information (requires GeoIP database)
# type: True/False
get_visitor_location = False
# countries for which the GeoIP needs to be resolved at city level (example is EU, China, US)
# type: list of capitalized ISO 3166-1 alpha-2 country codes: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2#Officially_assigned_code_elements
# get_cities_for_countries = AT, BE, BG, HR, CY, CZ, DK, EE, FI, FR, DE, GZ, HU, IE, IT, LV, LT, LU, MT, NL, PL, PT, RO, SK, SI, ES, SE, CN, US
get_cities_for_countries =
# These settings affect the data visualization, they can be changed at any time since they do not affect the database itself.
[data-visualization]
# generate all statistics for the whole database
# type: True/False
total = True
# generate all statistics for the last x days. Will be skipped if 0
# type: int
last_x_days = 30
# generate extra entries in visitor-request history for visitors/requests that come from human visitor
# type: True/False
history_track_human_visitors = True
# generate extra entry in visitor-request history for new visitors
# type: True/False
history_track_new_visitors = True
# The template and generated file do actually have to be htmls, you can change it to whatever you want
[html-generation]
# template html input. If None, no html will be generated
# type: file (read permissions) or None
# template_html = /home/my_user/.config/regina/template.html
template_html =
# output for the generated html. If None, no html will be generated
# type: file (write permissions) or None
# html_out_path = /www/analytics/statistics.html
html_out_path =
# nginx location for the generated images (this has to map to img_out_dir)
# type: string
# img_location = /images
img_location =
# Settings that affect the generated plots and images
[plot-generation]
# output directory for the generated plots. If None, no plots will be generated
# type: directory (write permissions) or None
# img_out_dir = /www/analytics/images
img_out_dir =
# file extension for the generated plots
# type: string
filetype = svg
# DPI for plots
# type: int
dpi = 300
# plot size for broad plots: width, height
# type: int, int
size_broad = 14, 5
# plot size for narrow plots: width, height
# type: int, int
size_narrow = 7, 5
# add the height of the bar as label in bar plots
# type: True/False
add_count_label = True
[data-export]
# output directory for the generated data files. If None, no data will be exported
# type: directory (write permissions) or None
# data_out_dir = /www/analytics/images
data_out_dir =
# file extension for the exported data
# type: 'csv' or 'pkl'
filetype = csv
# These options only apply if img_out_dir is not None
[rankings]
# Explanation for blacklists and whitelists:
# If a blacklist is given: values that fully match the blacklist are excluded
# If a whitelist is given: values that do not fully match the whitelist are excluded
# Both are optional: you can provide, none or both
# whether to use only humans for city and country rankings
# type: True/False
geoip_only_humans = True
# type: regexp or None
city_blacklist = City in .*
# type: regexp or None
city_whitelist =
# whether to add the 2 letter country code to the name of the city
# type: True/False
city_add_country_code = True
# type: regexp or None
country_blacklist =
# type: regexp or None
country_whitelist =
# type: regexp or None
# route_blacklist = .*\.((css)|(txt))
route_blacklist =
# type: regexp or None
# route_whitelist = .*\.((php)|(html)|(php)|(png)|(jpeg)|(jpg)|(svg)|(gif))
route_whitelist =
# maximum number of entries in route ranking plot
# type: int
route_plot_max_routes = 20
# whether to ignore non-existing routes in ranking
# type: True/False
route_ignore_404 = True
# type: regexp or None
# referer_blacklist = Example: exclude '-' (nginx sets this when there is no referer)
referer_blacklist = -
# type: regexp or None
referer_whitelist =
# whether to ignore protocol in the referer ranking (if True: https://domain.com == http://domain.com -> domain.com)
# type: True/False
referer_ignore_protocol = True
# whether to ignore subdomains in the referer ranking (if True: sub.domain.com == another.sub2.domain.com -> domain.com)
# type: True/False
referer_ignore_subdomain = False
# whether to ignore the top level domain in the referer ranking (if True: domain.com == domain.net -> domain)
# type: True/False
referer_ignore_tld = False
# whether to ignore the port in the referer ranking (if True: domain.com:80 == domain.com:8080 -> domain.com)
# type: True/False
referer_ignore_port = True
# whether to ignore route in the referer ranking (if True: domain.com/route1 == domain.com/route2 -> domain.com)
# type: True/False
referer_ignore_route = False
# Group certain routes together using by matching them with a regular expression.
# The route's request count will be added to all matching groups and the route will be removed from the ranking.
[route-groups]
# Home = /|(/home.html)|(/index.html)
# Images = .*\.((png)|(jpg)|(jpeg)|(gif)|(webp)|(svg))
# Resources = /resources/.*
[debug]
# Debug level: 0-4
# type: int
debug_level = 0
# *************************************************************************************************
# https://git.quintern.xyz/MatthiasQuintern/regina
# *************************************************************************************************