Skip to main content

KontikiTUI

Part of the Kontiki suite — a compact open-source stack for startups and small teams that need ops without the heavy stack.

Full suite overview → https://kontiki-org.github.io/

Ops demo → kontiki-monitor Quickstart.

Overview

KontikiTUI is a terminal UI for a Kontiki fleet: one SSH entry point for registry census, open ops alerts, silences, events, exceptions, and logs.

It is built with Textual. A session Group Select slices every monitoring tab the same way (all plus groups discovered in the registry).

  • Services — registered instances (status, heartbeat, host/pid, versions, mute).
  • Incidents — open alerts from kontiki-monitor and host-check-service.
  • Silences — persisted monitor mutes, including names no longer registered.
  • Events / Exceptions — registry trackers.
  • Logs — log files of instances currently in the registry.

The Header subtitle is the installed KontikiTUI version.


Tabs

  • Services: registered services with status, last heartbeat, degraded reason, host/pid, service version, and Kontiki runtime version (kontiki_version on get_services; empty when the instance does not report it; Kontiki ≥1.10.0). Selecting a row shows the public configuration in JSON (top-level public mapping on the instance, Kontiki ≥1.14.0). Empty when the service publishes none. Local filters (Field/Value) match service name, instance id, status, host, service version, or Kontiki version.

    Mute column (🔇) reflects kontiki-monitor silences (service_name). s toggles the selected service; S mutes or unmutes all live names in the current Group (always confirmed). Activating the tab warns if silenced names are no longer in the registry (WarningPrompt).

    Defaults to all via the session Group Select on each monitoring tab. Options are all plus groups discovered in the live registry. Changing it in one tab updates all tabs. Missing/blank Registry group counts as business. Instance column shows the Kontiki short id (12 hex), not the full UUID.

    Services tab

  • Incidents: open ops alerts (list_open_alerts) from kontiki-monitor (fleet / exception fingerprints) and every live host-check-service instance (disk). Session Group Select and local Field/Value filters. Selecting a row shows the full alert JSON. Mute does not cover host-check disk alerts. Requires Kontiki ≥1.14.0 and boomerang-contracts (pickled NormalizedAlert).

    Incidents tab

  • Silences: monitor silences (list_silences), including names missing from the registry. s clears the selected silence. Session Group Select: absent names show as business. Mute is still posed from Services.

    Silences tab

  • Events: events tracked by the registry, with local filters (Field/Value/Limit). Domain publishes and RPC calls are shown (rpc:<remote_method> when there is no event_type). Hides registry bookkeeping and TUI observer traffic. Filtered by the same session Group Select (registry jointure). Deregistered instances fall back to business.

    Events tab

  • Exceptions: exceptions from the registry exception tracker, with the same local filtering approach. Also filtered by the session Group Select. The context payload is shown compactly.

    Exceptions tab

  • Logs: reads log files of instances currently in the registry, from logs.directory. Uses lnav when available; otherwise a Python reader. Files follow Kontiki ≥1.8.1 naming {service_name}-{short_instance_id}.log and the session Group Select. Leftover files from deregistered instances, ServiceRegistry-*.log, and non-Kontiki filenames are not opened.

    Logs tab

  • Settings: edit ~/.config/kontiki_tui.yaml (the app reloads configuration on save).

    Settings tab


Requirements

  • Optional: lnav for richer log filtering; without it, a built-in Python reader is used

Quickstart

Install from PyPI

pip install kontiki-tui
kontiki-tui

(package on PyPI)

Install from source (Poetry)

make install
make run

Test stack (RabbitMQ + registry + example services + kontiki-monitor)

In one terminal:

make stack-up

In another terminal:

make run

Launch examples to view events and exceptions

make run-rpc-example
make run-simple-event-example

To stop:

make stack-down

Contributing

See CONTRIBUTING.md.

License

Licensed under the Apache License, Version 2.0. See LICENSE and NOTICE.

Metadata

Release files for kontiki-tui 1.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for kontiki-tui 1.4.0
File Size Uploaded
kontiki_tui-1.4.0.tar.gz 31.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for kontiki-tui 1.4.0
File Interpreter ABI Platform
kontiki_tui-1.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 76.2 kB

Release files / kontiki_tui-1.4.0.tar.gz

Download URL kontiki_tui-1.4.0.tar.gz
Size 31.1 kB
Tags Source
SHA-256 checksum
How to use checksums
bf607be593c8f1cf4a803528420184f72c1c470cf46e39c7cce35cb52eec4a05
BLAKE2b-256 checksum
How to use checksums
4c574aa469da5064ec80cb415098540ee4ba96c901bb0645308fa23fc4535fe3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.13.7 Linux/6.8.0-139-generic

Release files / kontiki_tui-1.4.0-py3-none-any.whl

Download URL kontiki_tui-1.4.0-py3-none-any.whl
Size 45.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7f2416ac06787c9d6ca23cce1fd181d6787fa48212e56ff97747df6ca224a0e4
BLAKE2b-256 checksum
How to use checksums
379564b5b328cb6bf90befdead2a90b42d4be252de6dd2c390de716ecd71f89e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.4.1 CPython/3.13.7 Linux/6.8.0-139-generic

Release history Release notifications | RSS feed

2.1.1

2 release files

2.1.0

2 release files

2.0.0

2 release files

1.6.0

2 release files

1.5.0

2 release files

This release

1.4.0 This release

2 release files

1.3.0

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.0

2 release files

0.2.0

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page