Webmin error log growing excessively

SYSTEM INFORMATION
OS type and version CentOS 7 latest
Webmin version 1.994

The file /var/webmin/miniserv.error is spammed with messages resulting in log files that in some cases exceed 1Gb in size on some of my machines. The main 2 culprits seems to be:

  • The logging for "subroutine xxx redefined at /usr/libexec/webmin/acl/xxx.pl line
  • The logging for "Use of uninitialized xxx at /usr/libexec/webmin/acl/xxx.pl line

The result of these messages being spammed is that the error log is almost unusable since either the system used to open the log complains about the file being too big to open or if you have the resources to open it, several million lines say hi, and over 65% of those are the two message types above, making it impossible to find the one line that has an actual error.

I gathered the logs from 6 of my web/virtualmin servers and ran a few simple cat / greps over them. resulting in the statistics below. I know i have missed a few million lines that did not want to play nice with character escaping and i was too lazy to put in the efforts for catching them, the top 70 makes the point clear enough. If there is a use for exact details at a later point, am willing to put in the effort for it.

What i was thinking, maybe it’s an option to add a topX of lines that are created by “bugs/mistakes”, and remove those from the logs. when web/virtualmin is updated. Just truncating the files would not be nice as you also lose part of the history for the miniserv.error log file. As stated above the log-line stats.

Log entries
Toplines
1 Subroutine delete_session_id redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1328. 228651 1.06%
2 Subroutine delete_session_user redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1348. 228651 1.06%
3 Subroutine open_session_db redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1300. 228651 1.06%
4 Subroutine can_edit_user redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1271. 228651 1.06%
5 Subroutine acl_line redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1260. 228651 1.06%
6 Subroutine create_session_user redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1394. 228651 1.06%
7 Subroutine update_members redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1421. 228651 1.06%
8 Subroutine set_acl_files redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1618. 228651 1.06%
9 Subroutine copy_group_user_acl_files redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1596. 228651 1.06%
10 Subroutine copy_group_acl_files redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1578. 228651 1.06%
11 Subroutine copy_acl_files redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1463. 228651 1.06%
12 Subroutine group_line redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1245. 228651 1.06%
13 Subroutine delete_group redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1143. 228651 1.06%
14 Subroutine list_modules redefined at /usr/libexec/webmin/acl/acl-lib.pl line 337. 228651 1.06%
15 Subroutine list_module_infos redefined at /usr/libexec/webmin/acl/acl-lib.pl line 348. 228651 1.06%
16 Subroutine get_group redefined at /usr/libexec/webmin/acl/acl-lib.pl line 324. 228651 1.06%
17 Subroutine list_groups redefined at /usr/libexec/webmin/acl/acl-lib.pl line 216. 228651 1.06%
18 Subroutine get_user redefined at /usr/libexec/webmin/acl/acl-lib.pl line 192. 228651 1.06%
19 Subroutine create_user redefined at /usr/libexec/webmin/acl/acl-lib.pl line 362. 228651 1.06%
20 Subroutine modify_user redefined at /usr/libexec/webmin/acl/acl-lib.pl line 531. 228651 1.06%
21 Subroutine modify_group redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1037. 228651 1.06%
22 Subroutine create_group redefined at /usr/libexec/webmin/acl/acl-lib.pl line 942. 228651 1.06%
23 Subroutine delete_user redefined at /usr/libexec/webmin/acl/acl-lib.pl line 787. 228651 1.06%
24 Subroutine add_old_password redefined at /usr/libexec/webmin/acl/acl-lib.pl line 756. 228651 1.06%
25 Subroutine get_ssleay redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1656. 228651 1.06%
26 Subroutine encrypt_password redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1678. 228651 1.06%
27 Subroutine encrypt_sha1_hash redefined at /usr/libexec/webmin/acl/md5-lib.pl line 154. 228651 1.06%
28 Subroutine check_blowfish redefined at /usr/libexec/webmin/acl/md5-lib.pl line 162. 228651 1.06%
29 Subroutine encrypt_sha1 redefined at /usr/libexec/webmin/acl/md5-lib.pl line 145. 228651 1.06%
30 Subroutine check_sha1 redefined at /usr/libexec/webmin/acl/md5-lib.pl line 137. 228651 1.06%
31 Subroutine to64 redefined at /usr/libexec/webmin/acl/md5-lib.pl line 126. 228651 1.06%
32 Subroutine encrypt_blowfish redefined at /usr/libexec/webmin/acl/md5-lib.pl line 170. 228651 1.06%
33 Subroutine unix_crypt_supports_sha512 redefined at /usr/libexec/webmin/acl/md5-lib.pl line 194. 228651 1.06%
34 Subroutine is_dictionary_word redefined at /usr/libexec/webmin/acl/md5-lib.pl line 261. 228651 1.06%
35 Subroutine validate_password redefined at /usr/libexec/webmin/acl/md5-lib.pl line 220. 228651 1.06%
36 Subroutine encrypt_sha512 redefined at /usr/libexec/webmin/acl/md5-lib.pl line 210. 228651 1.06%
37 Subroutine check_sha512 redefined at /usr/libexec/webmin/acl/md5-lib.pl line 203. 228651 1.06%
38 Subroutine unix_crypt_supports_md5 redefined at /usr/libexec/webmin/acl/md5-lib.pl line 117. 228651 1.06%
39 Subroutine encrypt_md5 redefined at /usr/libexec/webmin/acl/md5-lib.pl line 29. 228651 1.06%
40 Subroutine get_users_group redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1768. 228651 1.06%
41 Subroutine check_password_restrictions redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1785. 228651 1.06%
42 Subroutine delete_from_groups redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1749. 228651 1.06%
43 Subroutine save_unixauth redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1729. 228651 1.06%
44 Subroutine get_unixauth redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1707. 228651 1.06%
45 Subroutine hash_session_id redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1829. 228651 1.06%
46 Subroutine hash_md5_session redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1851. 228651 1.06%
47 Subroutine check_md5 redefined at /usr/libexec/webmin/acl/md5-lib.pl line 11. 228651 1.06%
48 Subroutine setup_anonymous_access redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1944. 228651 1.06%
49 Subroutine session_db_key redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1930. 228651 1.06%
50 Subroutine md5_perl_module redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1908. 228651 1.06%
51 Subroutine list_users redefined at /usr/libexec/webmin/acl/acl-lib.pl line 42. 228651 1.06%
52 Subroutine rename_session_user redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1375. 228651 1.06%
53 Use of uninitialized value in concatenation (.) or string at /usr/libexec/webmin/acl/system_info.pl line 62. 195366 0.91%
54 Subroutine get_safe_acl redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2257. 119805 0.56%
55 Subroutine generate_random_session_id redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2271. 119805 0.56%
56 Subroutine remove_anonymous_access redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1993. 119805 0.56%
57 Subroutine get_anonymous_access redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2029. 119805 0.56%
58 Subroutine join_userdb_string redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2052. 119805 0.56%
59 Subroutine used_for_anonymous redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2239. 119805 0.56%
60 Subroutine validate_userdb redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2068. 119805 0.56%
61 Subroutine userdb_table_sql redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2166. 119805 0.56%
62 Subroutine userdb_table_sql redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2165. 108846 0.51%
63 Subroutine get_safe_acl redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2256. 108846 0.51%
64 Subroutine used_for_anonymous redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2238. 108846 0.51%
65 Subroutine generate_random_session_id redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2270. 108846 0.51%
66 Subroutine get_anonymous_access redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2028. 108846 0.51%
67 Subroutine remove_anonymous_access redefined at /usr/libexec/webmin/acl/acl-lib.pl line 1992. 108846 0.51%
68 Subroutine join_userdb_string redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2051. 108846 0.51%
69 Subroutine validate_userdb redefined at /usr/libexec/webmin/acl/acl-lib.pl line 2067. 108846 0.51%
70 Use of uninitialized value in split at /usr/libexec/webmin/webmin/webmin-lib.pl line 1224. 108844 0.51%
– Lines making up the top 70 14023270 65.18%
– Total number of lines in the logs 21515210 100.00%

Hello,

Thanks for the heads up! Although, this issue will be already fixed in upcoming Webmin 1.998 release.

1 Like

First of all, great news, i wish i could help out providing code and patches myself, i am just not experienced in perl at all. You (@Ilia ) Jamie, Joe and Eric are doing so much for this project, at a point in time i hope i can pay for a bunch of pro versions to support the ongoing efforts that way.

Second, Fixed as in, the log spamming will be ending, or fixed as in, the spamming ends and the logs will be “cleared” of this topXX spammed lines?

Thanks,

Steven

Thank you for your kind words and support!

Fixed as in pointless log flooding will stop. However, you will have to purge /var/webmin/miniserv.error log file manually.

That is fine, it’s not that hard to truncate most of those manually,

I also noticed you made an edit with a details tag, can we as users do that too? or is it a mod only option? it looks much better and makes it look less noisy too.

Steven

Yes, certainly, these are the standard HTML5 tags, i.e.:

<details>
  <summary>Accordion title</summary>
    Accordion content
</details>
Accordion title Accordion content

Awsome, i am going to use that to edit some of my previous posts, may make things more readable :slight_smile:

Thanks for the explanation.

Steven

This topic was automatically closed 8 days after the last reply. New replies are no longer allowed.