-
Notifications
You must be signed in to change notification settings - Fork 126
Usage # Error and warning messages explained
This page tries to clarify some of the more common or cryptic error and warning messages produced by vnStat. The beginning of each section title indicates from which command the error or warning message can originate from. This documentation currently covers vnstat
and vnstatd
.
Starting from version 2.7, this message is shown when the creation timestamp in the database is the same as the latest update meaning that less than one SaveInterval
minutes (5 minutes by default) has passed since the interface was added to the database and as a result there can't be any traffic data for the interface. Once the last update timestamp is different than the creation timestamp, all available data will be shown even if the interface has so far seen no traffic. If this message persist even after the daemon has been running for several SaveInterval
minutes, check the daemon logs for clues if there's an issue writing to the database or if the interface isn't being monitored due to availability or other reasons.
For older versions, this message is shown as long as the interface has seen no traffic.
This message is shown as info level output but can also be interpreted as a warning depending on the context. The daemon has seen higher traffic rate than the current active maximum bandwidth configuration X
for the interface is set to and has ignored the traffic seen during A
seconds. The active maximum bandwidth configuration can either be as a result of interface specific MaxBW
configuration, detection from the interface if BandwidthDetection
is enabled or fallback value MaxBandwidth
when BandwidthDetection
isn't enabled, nothing isn't detected or nothing interface specific is configured. To avoid invalid traffic reporting, some maximum bandwidth configuration should always exist instead of disabling all these features.
In the message, X
is the currently active maximum configuration, A
is the time period in seconds (which is either directly UpdateInterval
or a calculated value for it) and B
is the maximum transfer possible within the time period based on X
. C
and D
are the seen received and transmitted values for the time period. Either C
or D
or both are greater than B
which results in the message being shown and traffic getting ignored ("syncing"). 64bit:1
shows if the interface counters have been detected as 64 bit or are assumed to be 32 bit.
The daemon tries to write cached data to the database every SaveInterval
minutes (5 minutes by default) and uses SQLite to ensure the change gets written to disk before continuing. If this operation takes more than 4 seconds then this warning is shown. Normally the write operation should complete in a fraction of a second. Longer write durations are usually the result of heavy disk operations caused by something else running in the system during the vnStat database write operation. Systems running on a HDD (especially low rpm) instead of SDD are more likely to see this warning.
This warning requires actions only if it repeats many times, can be seen often or N is often longer than UpdateInterval
(20 seconds by default). In the later case, some updates will end up getting skipped possibly resulting in traffic not being accounted if the database writes takes more time than UpdateInterval
.
Possible actions:
- ignore the warning if it's not too frequent or duration isn't long
- identify the source of the extra i/o load and do something about it
- enable SQLite WAL mode by configuring
DatabaseWriteAheadLogging
to1
- reduce the data integrity resilience configuration of SQLite by configuring
DatabaseSynchronous
to a lesser than default value