Go Yacc Makefile Other
Permalink
Failed to load latest commit information.
docs Update the docs to point to references about GOPATH. Dec 18, 2017
emgen Address golint comments in emgen. Apr 5, 2015
examples Create apache_common.mtail Dec 18, 2017
exporter Replace instances of the separator in the keys and values of labels. Dec 20, 2017
fuzz More renames missed by tests. Mar 5, 2015
metrics Fix #130: test adding metrics of different types to a store. Dec 16, 2017
mtail Adds a test for log delete handling. Dec 14, 2017
tailer Use os.SameFile to compare if two descriptors are the same. Dec 20, 2017
testdata Add an end-to-end test of match expressions. Dec 7, 2017
vm Adds a test for verifying position information in the AST. Jan 8, 2018
watcher Skip log watcher errors test in short mode. Dec 3, 2017
.gitignore Add mem and cpu benchmark profiling for ex_test and ignore their Jun 28, 2017
.gitlab-ci.yml Add GitLab-CI yaml Jul 18, 2017
.travis.yml Time the build script. Nov 13, 2017
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md Sep 20, 2017
CONTRIBUTING.md Links to the new style guide from the CONTRIBUTING doc. Jul 20, 2017
Dockerfile Add Dockerfile Nov 18, 2017
LICENSE Add CONTRIBUTING and LICENSE. Mar 2, 2015
Makefile Detect if running on Travis and increase the test timeout if so. Nov 13, 2017
README.md Adds project logo. Sep 20, 2017
TODO More todos. Dec 16, 2017
bench_test.go Uses an inmemory filesystem for the benchmark test file. Sep 1, 2017
benchmark_results.csv Read up to 4K from each log. Sep 9, 2013
debug.go Adds flag for setting the MutexProfileFraction. Jul 26, 2017
debug_go17.go Adds flag for setting the MutexProfileFraction. Jul 26, 2017
ex_test.go Add an end-to-end test of match expressions. Dec 7, 2017
log_rewriter.awk Fix an output formatting bug in the rewriter script. Apr 5, 2015
logo.png Adds project logo. Sep 20, 2017
main.go Updates comment for Version and Revision. Sep 21, 2017
mtail-mode.el Rename from emtail to mtail, restoring harmony in the universe. May 28, 2014

README.md

mtail

mtail - extract whitebox monitoring data from application logs for collection into a timeseries database

GoDoc Build Status Coverage Status

mtail is a tool for extracting metrics from application logs to be exported into a timeseries database or timeseries calculator for alerting and dashboarding.

It aims to fill a niche between applications that do not export their own internal state, and existing monitoring systems, without patching those applications or rewriting the same framework for custom extraction glue code.

The extraction is controlled by mtail programs which define patterns and actions:

# simple line counter
counter line_count
/$/ {
  line_count++
}

Metrics are exported for scraping by a collector as JSON or Prometheus format over HTTP, or can be periodically sent to a collectd, StatsD, or Graphite collector socket.

Read the programming guide if you want to learn how to write mtail programs.

Mailing list: https://groups.google.com/forum/#!forum/mtail-users

Installation

mtail uses a Makefile. To build mtail, type make at the commandline. See the Build instructions for more details.

Deployment

mtail works best when paired with a timeseries-based calculator and alerting tool, like Prometheus.