All Projects → reddec → Monexec

reddec / Monexec

Licence: mit
Light supervisor on Go (with optional Consul autoregistration)

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Monexec

superdiscoverer
A Supervisor backed service discoverer for automatic service-discovery.
Stars: ✭ 15 (-88.64%)
Mutual labels:  consul, supervisor
Php Microservice Demo
Docker+Consul+Hyperf 搭建 PHP 微服务集群
Stars: ✭ 116 (-12.12%)
Mutual labels:  consul
Learning Tools
A collection of tools and files for learning new technologies
Stars: ✭ 1,287 (+875%)
Mutual labels:  consul
Nomad Firehose
Firehose all nomad job, allocation, nodes and evaluations changes to rabbitmq, kinesis or stdout
Stars: ✭ 96 (-27.27%)
Mutual labels:  consul
Nsq Go
Go package providing tools for building NSQ clients, servers and middleware.
Stars: ✭ 90 (-31.82%)
Mutual labels:  consul
Autowire
Automatically configure Wireguard interfaces in distributed system. It supports Consul as backend.
Stars: ✭ 101 (-23.48%)
Mutual labels:  consul
Mechanist
[Docker] - The Mechanist is a collection of Dockerfiles and Composefiles for various tools and purposes.
Stars: ✭ 86 (-34.85%)
Mutual labels:  consul
Graceful
graceful reload golang http server, zero downtime, compatible with systemd, supervisor
Stars: ✭ 129 (-2.27%)
Mutual labels:  supervisor
Hashi Up
bootstrap HashiCorp Consul, Nomad, or Vault over SSH < 1 minute
Stars: ✭ 113 (-14.39%)
Mutual labels:  consul
Vaultron
🤖 Vault clusters Terraformed onto Docker for great fun and learning!
Stars: ✭ 96 (-27.27%)
Mutual labels:  consul
Supervisor Event Listener
Supervisor事件通知, 支持邮件, Slack, WebHook
Stars: ✭ 95 (-28.03%)
Mutual labels:  supervisor
Eureka Consul Adapter
This project contains a Spring Boot Starter that registers HTTP endpoints on a Spring Cloud Eureka server to support Prometheus's service discovery mechanism for Consul (<consul_sd_config>)
Stars: ✭ 93 (-29.55%)
Mutual labels:  consul
Multivisor
Centralized supervisor WebUI and CLI
Stars: ✭ 104 (-21.21%)
Mutual labels:  supervisor
Earl
Service Objects for Crystal (Agents, Artists, Supervisors, Pools, ...)
Stars: ✭ 89 (-32.58%)
Mutual labels:  supervisor
Gobetween
☁️ Modern & minimalistic load balancer for the Сloud era
Stars: ✭ 1,631 (+1135.61%)
Mutual labels:  consul
Gomplate
A flexible commandline tool for template rendering. Supports lots of local and remote datasources.
Stars: ✭ 1,270 (+862.12%)
Mutual labels:  consul
Ppconsul
C++ client for Consul (http://consul.io)
Stars: ✭ 93 (-29.55%)
Mutual labels:  consul
Kitsvc
⚙ 一個基於 Golang、Consul、Prometheus、EventStore、Gin、Gorm、NSQ 的微服務起始結構。
Stars: ✭ 101 (-23.48%)
Mutual labels:  consul
Envconsul
Launch a subprocess with environment variables using data from @hashicorp Consul and Vault.
Stars: ✭ 1,761 (+1234.09%)
Mutual labels:  consul
Library
A microservice project using .NET Core 2.0, DDD, CQRS, Event Sourcing, Redis and RabbitMQ
Stars: ✭ 122 (-7.58%)
Mutual labels:  consul

Monexec

Mx

MONitoring EXEcutables

GitHub release license Snap Status paypal

It’s tool for controlling processes like a supervisord but with some important features:

  • Easy to use - no dependencies. Just a single binary file pre-compilled for most major platforms
  • Easy to hack - monexec can be used as a Golang library with clean and simple architecture
  • Integrated with Consul - optionally, monexec can register all running processes as services and deregister on fail
  • Optional notification to Telegram
  • Supports gracefull and fast shutdown by signals
  • Developed for used inside Docker containers
  • Different strategies for processes
  • Support additional environment files
  • Support template-based email notification
  • Support HTTP notification
  • REST API (see swagger.yaml)
  • Web UI (if REST API enabled)

Buy me a coffe on Patreon

screen1 screen2

Installing

Get it from the Snap Store

go get -v -u github.com/reddec/monexec/...

recommended way is snap

Documentation

Usage: https://reddec.github.io/monexec/

API: Godoc

Examples

See documentation for details https://reddec.github.io/monexec/

Run from cmd

monexec run -l srv1 --consul -- nc -l 9000

Run from config

monexec start ./myservice.yaml

Notifications

Add notification to Telegram

telegram:
  # BOT token
  token: "123456789:AAAAAAAAAAAAAAAAAAAAAA_BBBBBBBBBBBB"
  services:
      # services that will be monitored
      - "listener2"
  recipients:
      # List of telegrams chat id
      - 123456789
  template: |
    *{{.label}}*
    Service {{.label}} {{.action}}
    {{if .error}}⚠️ *Error:*  {{.error}}{{end}}
    _time: {{.time}}_
    _host: {{.hostname}}_

Email

Add email notification

email:
  services:
    - myservice
  smtp: "smtp.gmail.com:587"
  from: "[email protected]"
  password: "xyzzzyyyzyyzyz"
  to:
    - "[email protected]"
  template: |
    Subject: {{.label}}

    Service {{.label}} {{.action}}

HTTP

Add HTTP request as notification

http:
  services:
    - myservice
  url: "http://example.com/{{.label}}/{{.action}}"
  templateFile: "./body.txt"
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].