When entering the main page with reports, we can select the period for which it was created (defined in the report creation parameters), the date of its creation, the number of unique users, the total traffic for the period, the average amount of traffic per user.

When choosing one of the periods we will be able to get a report of topusers for this period. Below are descriptions and examples of all types of reports that SARG can do.
1) topusers - total traffic by users. A user is understood as either the name of the host that has access to the Internet, or a user login. Report example:

IP addresses are displayed here. When configured to enable the corresponding option, IP addresses are converted to domain names.
Do you use authentication? Accounts are converted to real names:

Appearance can be configured in the css-file. Output columns are also configured, unnecessary can be removed. Column sorting is supported (sorttable.js).
When you click on the icon with the graph on the left we will see a similar graph:

When you click on the icon on the right, we get a report 5.
2) topsites - a report on the most popular sites. By default, a list of the 100 most popular sites is displayed (the value is adjusted). Using regular expressions or setting aliases, you can combine traffic of domains of the 3rd and higher levels up to the domain of the 2nd level (as in the screenshot) or specify any other rule. For each domain, you can set the rule separately, for example, for yandex.ru and mail.ru to combine up to the 3rd level. The meaning of the fields is quite obvious.

3) sites_users - a report about who visited a specific site. Everything is simple: the domain name and who addressed it. Traffic is not displayed here.

4) users_sites - a report on the visited sites by each user.

Here, too, everything is clear. If you click on the icon in the first column, we get a report 8).
5) date_time - distribution of user traffic by day and hour.

6) denied - blocked squid requests. This shows who, when and where access was denied. The number of entries is configured (10 by default).

7) auth_failures - authentication failures. HTTP / 407.
The number of entries is configured (10 by default).

8) site_user_time_date - shows what time on which site and from which machine the user visited.

9) downloads - download list.

10) useragent - report on the programs used
The first part of the report displays the IP address and the useragents used.

In the second - a general list of useragents with a percentage distribution based on versions.

11) redirector - the report shows to whom access was blocked by means of the blocker. Squidguard, dansguardian, rejik are supported, the format of logs is configured.

SARG has more than 120 settings, language support (100% of messages are translated into Russian), regular expression support, work with LDAP, the ability to provide users with access only to their reports on the web server (via .htaccess), the ability to convert logs into their format to save space, upload reports to a text file to populate the database, work with squid log files (splitting one or several log files by day).
It is possible to create reports on a specific set of specified groups, for example, if you need to make a separate report on a department. In the future, access to the web page with the reports of the unit can be provided, for example, to managers using the means of a web server.
You can send reports by e-mail, however, while only the topusers report is supported, and the letter itself will be plain text without HTML support.
You can exclude certain users or certain hosts from processing. You can set aliases for users by combining the traffic of several accounts into one, for example, all the out-owners. You can also set aliases for sites, for example, combine several social networks into a certain alias, in this case all the parameters for the specified domains (number of connections, traffic volume, processing time) will be added up. Or, using a regular expression, you can “drop” domains above the 3rd level.
It is possible to upload to separate files a list of users who have exceeded certain volumes for the period. The output will be several files, for example: userlimit_1G.txt - exceeding 1 Gb, userlimit_5G.txt - exceeding 5 Gb, and so on - only 16 limits.
SARG also has a couple of PHP pages in its arsenal: view current connections to squid and add domain names to squidguard block lists.
In general, it is a very flexible and powerful tool, easy to learn. All parameters are described in the default configuration file, in the
projectformat's wiki section on sourceforge there is a more detailed description of all parameters in the wiki section, broken down into groups, and examples of their use.