From 6bbd01bd053ff28773cfbade0643ef22cd6db33f Mon Sep 17 00:00:00 2001 From: postmannen Date: Fri, 10 Sep 2021 10:28:50 +0200 Subject: [PATCH] Added toc to readme --- README.md | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 64 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 3a52417..375ab32 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,70 @@ # steward -How do you control or know the state of something that are either allways online or occasionally available online ? like Servers or IOT platforms where the link for reaching them can be a not-always-connected satellite, GSM, or even reliable fiber links that might fail ? +Command & Control something that are either allways online or occasionally available online ? like Servers or IOT platforms where the link for reaching them can be a not-always-connected satellite, GSM, or even reliable fiber links that might fail ? -The idea behind Steward is to help out with exactly that. +The idea behind Steward is to help out with exactly that, and let you handle the state of your servers/containers/nodes. + +- [steward](#steward) + - [What is it ?](#what-is-it-) + - [Overview](#overview) + - [Inspiration](#inspiration) + - [Why](#why) + - [Publishing and Subscribing processes](#publishing-and-subscribing-processes) + - [Publisher](#publisher) + - [Subscriber](#subscriber) + - [Logical structure](#logical-structure) + - [Terminology](#terminology) + - [Features](#features) + - [Messages in order](#messages-in-order) + - [Messages not in order](#messages-not-in-order) + - [Error messages from nodes](#error-messages-from-nodes) + - [Message handling and threads](#message-handling-and-threads) + - [Timeouts and retries](#timeouts-and-retries) + - [Flags and configuration file](#flags-and-configuration-file) + - [Request Methods](#request-methods) + - [REQCliCommand](#reqclicommand) + - [REQnCliCommand](#reqnclicommand) + - [REQnCliCommandCont](#reqnclicommandcont) + - [REQTailFile](#reqtailfile) + - [REQHttpGet](#reqhttpget) + - [REQHello](#reqhello) + - [REQErrorLog](#reqerrorlog) + - [Request Methods used for reply messages](#request-methods-used-for-reply-messages) + - [REQToConsole](#reqtoconsole) + - [REQToFileAppend](#reqtofileappend) + - [REQToFile](#reqtofile) + - [Errors reporting](#errors-reporting) + - [Prometheus metrics](#prometheus-metrics) + - [Other](#other) + - [Howto](#howto) + - [Build and Run](#build-and-run) + - [Options for running](#options-for-running) + - [How to Run](#how-to-run) + - [Nkey Authentication](#nkey-authentication) + - [nats-server (the message broker)](#nats-server-the-message-broker) + - [Server config with nkey authentication](#server-config-with-nkey-authentication) + - [Steward](#steward-1) + - [Message fields explanation](#message-fields-explanation) + - [How to send a Message](#how-to-send-a-message) + - [Send to socket with netcat](#send-to-socket-with-netcat) + - [The current `operation`'s that are available are](#the-current-operations-that-are-available-are) + - [Sending a command from one Node to Another Node](#sending-a-command-from-one-node-to-another-node) + - [Example JSON for appending a message of type command into the `socket` file](#example-json-for-appending-a-message-of-type-command-into-the-socket-file) + - [Specify more messages at once do](#specify-more-messages-at-once-do) + - [Send the same message to several hosts by using the toHosts field](#send-the-same-message-to-several-hosts-by-using-the-tohosts-field) + - [Send an Op Command message for process listing with custom timeout and amount of retries](#send-an-op-command-message-for-process-listing-with-custom-timeout-and-amount-of-retries) + - [Send and Op Command to stop a subscriber on a node](#send-and-op-command-to-stop-a-subscriber-on-a-node) + - [Send and Op Command to start a subscriber on a node](#send-and-op-command-to-start-a-subscriber-on-a-node) + - [Concepts/Ideas](#conceptsideas) + - [Naming](#naming) + - [Subject](#subject) + - [Complete subject example](#complete-subject-example) + - [TODO](#todo) + - [Services at startup of Steward. Could be implemented by having a local folder of messages to go through at startup. What is needed](#services-at-startup-of-steward-could-be-implemented-by-having-a-local-folder-of-messages-to-go-through-at-startup-what-is-needed) + - [A carrier type of message, that are able to forward a message on behalf of others, and are not directly ment for itself](#a-carrier-type-of-message-that-are-able-to-forward-a-message-on-behalf-of-others-and-are-not-directly-ment-for-itself) + - [Workflow request type](#workflow-request-type) + - [Add Op option the remove messages from the queue on nodes](#add-op-option-the-remove-messages-from-the-queue-on-nodes) + - [Disclaimer](#disclaimer) ## What is it ?