A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/deadtrickster/prometheus.cl below:

deadtrickster/prometheus.cl: Prometheus.io Common Lisp client

Example Grafana dashboard for Hunchentoot on SBCL:

You can get this dashboard here.

Currently example uses Linux and SBCL specific collectors.

(ql:quickload :prometheus.examples)
(prometheus.example:run)

You can override app/exporter host/port in prometheus.example:run arguments. To stop example app call prometheus.example:stop

Linux? only

Performance / Optimization

On SBCL counter can use CAS. On SBCL int counter can use atomic-incf.

Benchmark (30 threads each doing 100000 counter.inc):

Method Avg inc n/s Mutex 7885 CAS (SBCL) 1902 ATOMIC (SBCL) 141

On SBCL gauge can use CAS.

Benchmark (30 threads each doing 100000 gauge.set):

Method Avg set n/s Mutex 9618 CAS (SBCL) 2204

Hunchentoot exposer plus SBCL metrics.

(prom.sbcl:make-memory-collector)
(prom.sbcl:make-threads-collector)
(defclass my-acceptor (prom.tbnl::hunchentoot-exposer tbnl:acceptor)
  ())
(tbnl:start (make-instance 'my-acceptor :address "172.17.0.1" :port 9101))

will produce something like this:

Effect of (sb-ext:gc) can be seen clearly.

MIT


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4