This release is a pre-release and may not be stable for production use.
OVOS-utils
ovos-utils is a shared utility library for the OpenVoiceOS ecosystem. It provides
logging, process lifecycle management, a testing-friendly fake message bus, event
scheduling, file utilities, network checks, audio playback, and XDG path helpers.
Most OVOS packages, including ovos-bus-client, ovos-config, and ovos-workshop,
depend on it, so most projects get it as a transitive dependency.
Install
pip install ovos-utils
Usage
The library exposes many small, independent modules. Import only what you need.
For example, use FakeBus to test skill code without a live message bus:
from ovos_utils.fakebus import FakeBus, FakeMessage
bus = FakeBus()
def on_utterance(message):
print(message.data["utterances"])
bus.on("recognizer_loop:utterance", on_utterance)
bus.emit(FakeMessage("recognizer_loop:utterance", {"utterances": ["hello"]}))
See docs/index.md for the full module overview, with links to
detailed pages on logging, process utilities, FakeBus, and event handling.
See docs/prerelease-quirks.md for what changed
since the last stable release.
Command line: ovos-logs
ovos-logs is a helper tool that slices, lists, and reduces OVOS service logs.
-
ovos-logs slice [options]. Slice logs for a time period. The default period runs from the last service start (-s) until now (-u). Pick specific logs with-l(default: all logs). Set the log directory with-pand the output file with-f.ovos-logs slice # Slice all logs from the last service start until now. ovos-logs slice -s 17:05:20 -u 17:05:25 # Slice all logs between 17:05:20 and 17:05:25. ovos-logs slice -s 17:05:20 -u 17:05:25 -l skills # Slice only skills.log between 17:05:20 and 17:05:25. ovos-logs slice -s 17:05:20 -u 17:05:25 -f ~/testslice.log # Slice logs between 17:05:20 and 17:05:25 into ~/testslice.log. # Default output file: ~/slice_<timestamp>.log
-
ovos-logs list [-e|-w|-d|-x] [options]. List log lines by severity (error, warning, debug, exception). Specify at least one level. You can combine several. Set the time range with-sand-u(default: last service start until now). Pick specific logs with-l(default: all logs).ovos-logs list -x # List EXCEPTION-level lines (with tracebacks) from the last service start until now. ovos-logs list -w -e -s 20-12-2023 -l bus -l skills # List WARNING and ERROR lines from bus.log and skills.log since 20 December 2023.
-
ovos-logs reduce [options]. Shrink logs to a target size in bytes, or remove entries before a given date. Pick specific logs with-l(default: all logs). Set the log directory with-p.ovos-logs reduce # Shrink all logs to 0 bytes. ovos-logs reduce -s 1000000 # Shrink all logs to about 1 MB, keeping the latest entries. ovos-logs reduce -d "1-12-2023 17:00" # Shrink all logs to entries after the given date and time. ovos-logs reduce -s 1000000 -l skills -l bus # Shrink skills.log and bus.log to about 1 MB each.
-
ovos-logs show -l <servicelog>. Print the contents of a log file.ovos-logs show -l bus # Print the contents of bus.log.
The logs shown depend on which log files exist in the log folder.
Related projects
- OpenVoiceOS/ovos-bus-client. The real message bus client that
FakeBusandFakeMessagestand in for during testing. - OpenVoiceOS/ovos-config. Reads and writes
mycroft.conf, the configuration file used byLOG,PIDLock, and the network utilities. - OpenVoiceOS/ovos-workshop. The skill framework built on
EventContainer,RuntimeRequirements, and the other utilities in this library.
License
Apache License 2.0. See LICENSE.
Metadata
Release files for ovos-utils 0.15.4a1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ovos_utils-0.15.4a1.tar.gz | 86.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ovos_utils-0.15.4a1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 184.1 kB
Release files / ovos_utils-0.15.4a1.tar.gz
| Download URL | ovos_utils-0.15.4a1.tar.gz |
|---|---|
| Size | 86.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3a8e090ab3eff13ea4bd22fc29b3bf45d7dab9777a556fd3f014c852769bf215
|
|
BLAKE2b-256 checksum How to use checksums |
4cb7f98d980389abf486eca05e4f8a88fbf9aa5375242f6c7470812f87a43eae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / ovos_utils-0.15.4a1-py3-none-any.whl
| Download URL | ovos_utils-0.15.4a1-py3-none-any.whl |
|---|---|
| Size | 97.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bf3073ce7a6b25347fffc5e0f418d35a46e275eff6fe86462e9c8d71f6299cde
|
|
BLAKE2b-256 checksum How to use checksums |
e86c826cee283735916a3e4e157695e733302afe072ad8ec59cd0443b5cf79c1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|