The cl-statsd Reference Manual

This is the cl-statsd Reference Manual, version 0.2.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Feb 26 15:44:32 2024 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 cl-statsd

Statsd client in Common Lisp

Author

Ilya Khaprov <>

License

MIT

Version

0.2.1

Dependencies
  • alexandria (system).
  • cl-interpol (system).
  • local-time (system).
  • safe-queue (system).
  • trivial-utf-8 (system).
  • usocket (system).
  • log4cl (system).
  • bordeaux-threads (system).
Source

cl-statsd.asd.

Child Component

src (module).


3 Modules

Modules are listed depth-first from the system components tree.


3.1 cl-statsd/src

Source

cl-statsd.asd.

Parent Component

cl-statsd (system).

Child Components

3.2 cl-statsd/src/transports

Dependency

statsd.lisp (file).

Source

cl-statsd.asd.

Parent Component

src (module).

Child Components

3.3 cl-statsd/src/clients

Dependency

transports (module).

Source

cl-statsd.asd.

Parent Component

src (module).

Child Components

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


4.1 Lisp


4.1.1 cl-statsd/cl-statsd.asd

Source

cl-statsd.asd.

Parent Component

cl-statsd (system).

ASDF Systems

cl-statsd.


4.1.2 cl-statsd/src/package.lisp

Source

cl-statsd.asd.

Parent Component

src (module).

Packages

cl-statsd.


4.1.3 cl-statsd/src/clients/base.lisp

Dependency

package.lisp (file).

Source

cl-statsd.asd.

Parent Component

src (module).

Public Interface
Internals

4.1.4 cl-statsd/src/statsd.lisp

Dependency

clients/base.lisp (file).

Source

cl-statsd.asd.

Parent Component

src (module).

Public Interface
Internals

with-timing% (function).


4.1.5 cl-statsd/src/transports/base.lisp

Source

cl-statsd.asd.

Parent Component

transports (module).

Public Interface
Internals

4.1.6 cl-statsd/src/transports/usocket.lisp

Dependency

base.lisp (file).

Source

cl-statsd.asd.

Parent Component

transports (module).

Public Interface
Internals

usocket-transport (class).


4.1.7 cl-statsd/src/clients/capture.lisp

Source

cl-statsd.asd.

Parent Component

clients (module).

Public Interface
Internals

4.1.8 cl-statsd/src/clients/null.lisp

Dependency

capture.lisp (file).

Source

cl-statsd.asd.

Parent Component

clients (module).

Public Interface

make-null-client (function).

Internals

4.1.9 cl-statsd/src/clients/sync.lisp

Dependency

null.lisp (file).

Source

cl-statsd.asd.

Parent Component

clients (module).

Public Interface

make-sync-client (function).

Internals

4.1.10 cl-statsd/src/clients/async.lisp

Dependency

sync.lisp (file).

Source

cl-statsd.asd.

Parent Component

clients (module).

Public Interface
Internals

5 Packages

Packages are listed by definition order.


5.1 cl-statsd

Source

package.lisp.

Nickname

statsd

Use List
  • alexandria.
  • common-lisp.
Public Interface
Internals

6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


6.1 Public Interface


6.1.1 Special variables

Special Variable: *client*
Package

cl-statsd.

Source

statsd.lisp.

Special Variable: *random-range*
Package

cl-statsd.

Source

clients/base.lisp.

Special Variable: *throttle-threshold*
Package

cl-statsd.

Source

async.lisp.


6.1.2 Macros

Macro: with-timing ((key &optional client) &body body)
Package

cl-statsd.

Source

statsd.lisp.


6.1.3 Ordinary functions

Function: capture-client.recv (&optional client)
Package

cl-statsd.

Source

capture.lisp.

Function: capture-client.reset (&optional client)
Package

cl-statsd.

Source

capture.lisp.

Function: counter (key value &key rate client)
Package

cl-statsd.

Source

statsd.lisp.

Function: dec (key &key rate client)
Package

cl-statsd.

Source

statsd.lisp.

Function: gauge (key value &key rate client)
Package

cl-statsd.

Source

statsd.lisp.

Function: inc (key &key rate client)
Package

cl-statsd.

Source

statsd.lisp.

Function: make-async-client (&key prefix throttle-threshold error-handler transport host port reconnects tcp-p)
Package

cl-statsd.

Source

async.lisp.

Function: make-capture-client (&key prefix)
Package

cl-statsd.

Source

capture.lisp.

Function: make-null-client ()
Package

cl-statsd.

Source

null.lisp.

Function: make-sync-client (&key prefix error-handler transport host port tcp-p)
Package

cl-statsd.

Source

sync.lisp.

Function: set (key value &key rate client)
Package

cl-statsd.

Source

statsd.lisp.

Function: start-async-client (&optional client)
Package

cl-statsd.

Source

async.lisp.

Function: stop-client (&key client timeout)
Package

cl-statsd.

Source

clients/base.lisp.

Function: timing (key value &key rate client)
Package

cl-statsd.

Source

statsd.lisp.


6.1.4 Generic functions

Generic Function: handler-handle-error (handler e)
Package

cl-statsd.

Source

clients/base.lisp.

Methods
Method: handler-handle-error ((handler (eql :ignore)) e)
Method: handler-handle-error ((handler (eql :throw)) e)
Generic Function: make-transport (transport host port protocol)
Package

cl-statsd.

Source

base.lisp.

Methods
Method: make-transport ((transport (eql :usocket)) host port tcp-p)
Source

usocket.lisp.

Generic Function: transport.close (transport)
Package

cl-statsd.

Source

base.lisp.

Methods
Method: transport.close ((transport capture-client))
Source

capture.lisp.

Method: transport.close ((transport usocket-transport))
Source

usocket.lisp.

Generic Function: transport.connect (transport)
Package

cl-statsd.

Source

base.lisp.

Methods
Method: transport.connect ((transport usocket-transport))
Source

usocket.lisp.

Generic Function: transport.send (transport metrics)
Package

cl-statsd.

Source

base.lisp.

Methods
Method: transport.send ((transport capture-client) metrics)
Source

capture.lisp.

Method: transport.send ((transport usocket-transport) metrics)
Source

usocket.lisp.


6.1.5 Conditions

Condition: throttle-threshold-reached
Package

cl-statsd.

Source

async.lisp.

Direct superclasses

error.

Direct methods

throttle-threshold.

Direct slots
Slot: threshold
Initargs

:threshold

Readers

throttle-threshold.

Writers

This slot is read-only.

Condition: transport-error
Package

cl-statsd.

Source

base.lisp.

Direct superclasses

error.

Direct methods

transport-error-error.

Direct slots
Slot: error
Package

common-lisp.

Initargs

:error

Readers

transport-error-error.

Writers

This slot is read-only.


6.1.6 Classes

Class: socket-transport
Package

cl-statsd.

Source

base.lisp.

Direct superclasses

transport-base.

Direct subclasses

usocket-transport.

Direct methods
Direct slots
Slot: socket
Initargs

:socket

Readers

transport-socket.

Writers

This slot is read-only.

Slot: host
Initargs

:host

Readers

transport-host.

Writers

This slot is read-only.

Slot: port
Initargs

:port

Readers

transport-port.

Writers

This slot is read-only.

Slot: tcp
Initargs

:tcp-p

Readers

transport-tcp-p.

Writers

This slot is read-only.

Class: transport-base
Package

cl-statsd.

Source

base.lisp.

Direct subclasses

6.2 Internals


6.2.1 Constants

Constant: +async-client-reconnects-default+
Package

cl-statsd.

Source

async.lisp.


6.2.2 Macros

Macro: maybe-send (rate &body body)
Package

cl-statsd.

Source

clients/base.lisp.

Macro: with-smart?-error-handling (client &body body)
Package

cl-statsd.

Source

clients/base.lisp.


6.2.3 Ordinary functions

Function: async-client-thread-fun (client)
Package

cl-statsd.

Source

async.lisp.

Function: client-handler-error (client e)
Package

cl-statsd.

Source

clients/base.lisp.

Function: serialize-metric% (metric key value rate)
Package

cl-statsd.

Source

clients/base.lisp.

Function: with-timing% (client key lambda)
Package

cl-statsd.

Source

statsd.lisp.


6.2.4 Generic functions

Generic Reader: async-client-mailbox (object)
Package

cl-statsd.

Methods
Reader Method: async-client-mailbox ((async-client async-client))

automatically generated reader method

Source

async.lisp.

Target Slot

mailbox.

Generic Reader: async-client-reconnects (object)
Package

cl-statsd.

Methods
Reader Method: async-client-reconnects ((async-client async-client))

automatically generated reader method

Source

async.lisp.

Target Slot

reconnects.

Generic Reader: async-client-state (object)
Package

cl-statsd.

Methods
Reader Method: async-client-state ((async-client async-client))

automatically generated reader method

Source

async.lisp.

Target Slot

state.

Generic Reader: async-client-thread (object)
Package

cl-statsd.

Methods
Reader Method: async-client-thread ((async-client async-client))

automatically generated reader method

Source

async.lisp.

Target Slot

thread.

Generic Reader: async-client-throttle-threshold (object)
Package

cl-statsd.

Methods
Reader Method: async-client-throttle-threshold ((async-client async-client))

automatically generated reader method

Source

async.lisp.

Target Slot

throttle-threshold.

Generic Reader: capture-client-queue (object)
Package

cl-statsd.

Methods
Reader Method: capture-client-queue ((capture-client capture-client))

automatically generated reader method

Source

capture.lisp.

Target Slot

queue.

Generic Writer: (setf capture-client-queue) (object)
Package

cl-statsd.

Methods
Writer Method: (setf capture-client-queue) ((capture-client capture-client))

automatically generated writer method

Source

capture.lisp.

Target Slot

queue.

Generic Reader: client-error-handler (object)
Package

cl-statsd.

Methods
Reader Method: client-error-handler ((statsd-client-base statsd-client-base))

automatically generated reader method

Source

clients/base.lisp.

Target Slot

error-handler.

Generic Reader: client-prefix (object)
Package

cl-statsd.

Methods
Reader Method: client-prefix ((statsd-client-with-prefix statsd-client-with-prefix))

automatically generated reader method

Source

clients/base.lisp.

Target Slot

prefix.

Generic Function: client-transport (object)
Package

cl-statsd.

Methods
Method: client-transport ((client capture-client))
Source

capture.lisp.

Reader Method: client-transport ((statsd-client-with-transport statsd-client-with-transport))

automatically generated reader method

Source

clients/base.lisp.

Target Slot

transport.

Generic Function: send (client metric key value rate)
Package

cl-statsd.

Source

clients/base.lisp.

Methods
Method: send ((client async-client) metric key value rate)
Source

async.lisp.

Method: send ((client sync-client) metric key value rate)
Source

sync.lisp.

Method: send ((client null-client) metric key value rate)
Source

null.lisp.

Method: send ((client capture-client) metric key value rate)
Source

capture.lisp.

Method: send :around ((client statsd-client-with-prefix) metric key value rate)
Generic Function: serialize-metric (metric key value rate)
Package

cl-statsd.

Source

clients/base.lisp.

Methods
Method: serialize-metric ((metric (eql :set)) key value rate)
Method: serialize-metric ((metric (eql :gauge)) key value rate)
Method: serialize-metric ((metric (eql :timing)) key value rate)
Method: serialize-metric ((metric (eql :counter)) key value rate)
Generic Function: stop-client% (client timeout)
Package

cl-statsd.

Source

clients/base.lisp.

Methods
Method: stop-client% ((client async-client) timeout)
Source

async.lisp.

Method: stop-client% ((client statsd-client-with-transport) timeout)
Method: stop-client% (client timeout)
Generic Reader: throttle-threshold (condition)
Package

cl-statsd.

Methods
Reader Method: throttle-threshold ((condition throttle-threshold-reached))
Source

async.lisp.

Target Slot

threshold.

Generic Reader: transport-error-error (condition)
Package

cl-statsd.

Methods
Reader Method: transport-error-error ((condition transport-error))
Source

base.lisp.

Target Slot

error.

Generic Reader: transport-host (object)
Package

cl-statsd.

Methods
Reader Method: transport-host ((socket-transport socket-transport))

automatically generated reader method

Source

base.lisp.

Target Slot

host.

Generic Reader: transport-port (object)
Package

cl-statsd.

Methods
Reader Method: transport-port ((socket-transport socket-transport))

automatically generated reader method

Source

base.lisp.

Target Slot

port.

Generic Reader: transport-socket (object)
Package

cl-statsd.

Methods
Reader Method: transport-socket ((socket-transport socket-transport))

automatically generated reader method

Source

base.lisp.

Target Slot

socket.

Generic Reader: transport-tcp-p (object)
Package

cl-statsd.

Methods
Reader Method: transport-tcp-p ((socket-transport socket-transport))

automatically generated reader method

Source

base.lisp.

Target Slot

tcp.


6.2.5 Classes

Class: async-client
Package

cl-statsd.

Source

async.lisp.

Direct superclasses

statsd-client-with-transport.

Direct methods
Direct slots
Slot: reconnects
Initform

cl-statsd::+async-client-reconnects-default+

Initargs

:reconnects

Readers

async-client-reconnects.

Writers

This slot is read-only.

Slot: state
Initform

:created

Readers

async-client-state.

Writers

This slot is read-only.

Slot: throttle-threshold
Initargs

:throttle-threshold

Readers

async-client-throttle-threshold.

Writers

This slot is read-only.

Slot: thread
Readers

async-client-thread.

Writers

This slot is read-only.

Slot: mailbox
Initform

(safe-queue:make-mailbox)

Readers

async-client-mailbox.

Writers

This slot is read-only.

Class: capture-client
Package

cl-statsd.

Source

capture.lisp.

Direct superclasses
Direct methods
Direct slots
Slot: queue
Initform

(safe-queue:make-queue)

Readers

capture-client-queue.

Writers

(setf capture-client-queue).

Class: null-client
Package

cl-statsd.

Source

null.lisp.

Direct superclasses

statsd-client-base.

Direct methods

send.

Class: statsd-client-base
Package

cl-statsd.

Source

clients/base.lisp.

Direct subclasses
Direct methods

client-error-handler.

Direct slots
Slot: error-handler
Initform

:ignore

Initargs

:error-handler

Readers

client-error-handler.

Writers

This slot is read-only.

Class: statsd-client-with-prefix
Package

cl-statsd.

Source

clients/base.lisp.

Direct superclasses

statsd-client-base.

Direct subclasses
Direct methods
Direct slots
Slot: prefix
Initargs

:prefix

Readers

client-prefix.

Writers

This slot is read-only.

Class: statsd-client-with-transport
Package

cl-statsd.

Source

clients/base.lisp.

Direct superclasses

statsd-client-with-prefix.

Direct subclasses
Direct methods
Direct slots
Slot: transport
Initargs

:transport

Readers

client-transport.

Writers

This slot is read-only.

Class: sync-client
Package

cl-statsd.

Source

sync.lisp.

Direct superclasses

statsd-client-with-transport.

Direct methods

send.

Class: usocket-transport
Package

cl-statsd.

Source

usocket.lisp.

Direct superclasses

socket-transport.

Direct methods

Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   (  
A   C   D   F   G   H   I   M   S   T   W  
Index Entry  Section

(
(setf capture-client-queue): Private generic functions
(setf capture-client-queue): Private generic functions

A
async-client-mailbox: Private generic functions
async-client-mailbox: Private generic functions
async-client-reconnects: Private generic functions
async-client-reconnects: Private generic functions
async-client-state: Private generic functions
async-client-state: Private generic functions
async-client-thread: Private generic functions
async-client-thread: Private generic functions
async-client-thread-fun: Private ordinary functions
async-client-throttle-threshold: Private generic functions
async-client-throttle-threshold: Private generic functions

C
capture-client-queue: Private generic functions
capture-client-queue: Private generic functions
capture-client.recv: Public ordinary functions
capture-client.reset: Public ordinary functions
client-error-handler: Private generic functions
client-error-handler: Private generic functions
client-handler-error: Private ordinary functions
client-prefix: Private generic functions
client-prefix: Private generic functions
client-transport: Private generic functions
client-transport: Private generic functions
client-transport: Private generic functions
counter: Public ordinary functions

D
dec: Public ordinary functions

F
Function, async-client-thread-fun: Private ordinary functions
Function, capture-client.recv: Public ordinary functions
Function, capture-client.reset: Public ordinary functions
Function, client-handler-error: Private ordinary functions
Function, counter: Public ordinary functions
Function, dec: Public ordinary functions
Function, gauge: Public ordinary functions
Function, inc: Public ordinary functions
Function, make-async-client: Public ordinary functions
Function, make-capture-client: Public ordinary functions
Function, make-null-client: Public ordinary functions
Function, make-sync-client: Public ordinary functions
Function, serialize-metric%: Private ordinary functions
Function, set: Public ordinary functions
Function, start-async-client: Public ordinary functions
Function, stop-client: Public ordinary functions
Function, timing: Public ordinary functions
Function, with-timing%: Private ordinary functions

G
gauge: Public ordinary functions
Generic Function, (setf capture-client-queue): Private generic functions
Generic Function, async-client-mailbox: Private generic functions
Generic Function, async-client-reconnects: Private generic functions
Generic Function, async-client-state: Private generic functions
Generic Function, async-client-thread: Private generic functions
Generic Function, async-client-throttle-threshold: Private generic functions
Generic Function, capture-client-queue: Private generic functions
Generic Function, client-error-handler: Private generic functions
Generic Function, client-prefix: Private generic functions
Generic Function, client-transport: Private generic functions
Generic Function, handler-handle-error: Public generic functions
Generic Function, make-transport: Public generic functions
Generic Function, send: Private generic functions
Generic Function, serialize-metric: Private generic functions
Generic Function, stop-client%: Private generic functions
Generic Function, throttle-threshold: Private generic functions
Generic Function, transport-error-error: Private generic functions
Generic Function, transport-host: Private generic functions
Generic Function, transport-port: Private generic functions
Generic Function, transport-socket: Private generic functions
Generic Function, transport-tcp-p: Private generic functions
Generic Function, transport.close: Public generic functions
Generic Function, transport.connect: Public generic functions
Generic Function, transport.send: Public generic functions

H
handler-handle-error: Public generic functions
handler-handle-error: Public generic functions
handler-handle-error: Public generic functions

I
inc: Public ordinary functions

M
Macro, maybe-send: Private macros
Macro, with-smart?-error-handling: Private macros
Macro, with-timing: Public macros
make-async-client: Public ordinary functions
make-capture-client: Public ordinary functions
make-null-client: Public ordinary functions
make-sync-client: Public ordinary functions
make-transport: Public generic functions
make-transport: Public generic functions
maybe-send: Private macros
Method, (setf capture-client-queue): Private generic functions
Method, async-client-mailbox: Private generic functions
Method, async-client-reconnects: Private generic functions
Method, async-client-state: Private generic functions
Method, async-client-thread: Private generic functions
Method, async-client-throttle-threshold: Private generic functions
Method, capture-client-queue: Private generic functions
Method, client-error-handler: Private generic functions
Method, client-prefix: Private generic functions
Method, client-transport: Private generic functions
Method, client-transport: Private generic functions
Method, handler-handle-error: Public generic functions
Method, handler-handle-error: Public generic functions
Method, make-transport: Public generic functions
Method, send: Private generic functions
Method, send: Private generic functions
Method, send: Private generic functions
Method, send: Private generic functions
Method, send: Private generic functions
Method, serialize-metric: Private generic functions
Method, serialize-metric: Private generic functions
Method, serialize-metric: Private generic functions
Method, serialize-metric: Private generic functions
Method, stop-client%: Private generic functions
Method, stop-client%: Private generic functions
Method, stop-client%: Private generic functions
Method, throttle-threshold: Private generic functions
Method, transport-error-error: Private generic functions
Method, transport-host: Private generic functions
Method, transport-port: Private generic functions
Method, transport-socket: Private generic functions
Method, transport-tcp-p: Private generic functions
Method, transport.close: Public generic functions
Method, transport.close: Public generic functions
Method, transport.connect: Public generic functions
Method, transport.send: Public generic functions
Method, transport.send: Public generic functions

S
send: Private generic functions
send: Private generic functions
send: Private generic functions
send: Private generic functions
send: Private generic functions
send: Private generic functions
serialize-metric: Private generic functions
serialize-metric: Private generic functions
serialize-metric: Private generic functions
serialize-metric: Private generic functions
serialize-metric: Private generic functions
serialize-metric%: Private ordinary functions
set: Public ordinary functions
start-async-client: Public ordinary functions
stop-client: Public ordinary functions
stop-client%: Private generic functions
stop-client%: Private generic functions
stop-client%: Private generic functions
stop-client%: Private generic functions

T
throttle-threshold: Private generic functions
throttle-threshold: Private generic functions
timing: Public ordinary functions
transport-error-error: Private generic functions
transport-error-error: Private generic functions
transport-host: Private generic functions
transport-host: Private generic functions
transport-port: Private generic functions
transport-port: Private generic functions
transport-socket: Private generic functions
transport-socket: Private generic functions
transport-tcp-p: Private generic functions
transport-tcp-p: Private generic functions
transport.close: Public generic functions
transport.close: Public generic functions
transport.close: Public generic functions
transport.connect: Public generic functions
transport.connect: Public generic functions
transport.send: Public generic functions
transport.send: Public generic functions
transport.send: Public generic functions

W
with-smart?-error-handling: Private macros
with-timing: Public macros
with-timing%: Private ordinary functions


A.3 Variables


A.4 Data types

Jump to:   A   B   C   F   M   N   P   S   T   U  
Index Entry  Section

A
async-client: Private classes
async.lisp: The cl-statsd/src/clients/async․lisp file

B
base.lisp: The cl-statsd/src/transports/base․lisp file

C
capture-client: Private classes
capture.lisp: The cl-statsd/src/clients/capture․lisp file
cl-statsd: The cl-statsd system
cl-statsd: The cl-statsd package
cl-statsd.asd: The cl-statsd/cl-statsd․asd file
Class, async-client: Private classes
Class, capture-client: Private classes
Class, null-client: Private classes
Class, socket-transport: Public classes
Class, statsd-client-base: Private classes
Class, statsd-client-with-prefix: Private classes
Class, statsd-client-with-transport: Private classes
Class, sync-client: Private classes
Class, transport-base: Public classes
Class, usocket-transport: Private classes
clients: The cl-statsd/src/clients module
clients/base.lisp: The cl-statsd/src/clients/base․lisp file
Condition, throttle-threshold-reached: Public conditions
Condition, transport-error: Public conditions

F
File, async.lisp: The cl-statsd/src/clients/async․lisp file
File, base.lisp: The cl-statsd/src/transports/base․lisp file
File, capture.lisp: The cl-statsd/src/clients/capture․lisp file
File, cl-statsd.asd: The cl-statsd/cl-statsd․asd file
File, clients/base.lisp: The cl-statsd/src/clients/base․lisp file
File, null.lisp: The cl-statsd/src/clients/null․lisp file
File, package.lisp: The cl-statsd/src/package․lisp file
File, statsd.lisp: The cl-statsd/src/statsd․lisp file
File, sync.lisp: The cl-statsd/src/clients/sync․lisp file
File, usocket.lisp: The cl-statsd/src/transports/usocket․lisp file

M
Module, clients: The cl-statsd/src/clients module
Module, src: The cl-statsd/src module
Module, transports: The cl-statsd/src/transports module

N
null-client: Private classes
null.lisp: The cl-statsd/src/clients/null․lisp file

P
Package, cl-statsd: The cl-statsd package
package.lisp: The cl-statsd/src/package․lisp file

S
socket-transport: Public classes
src: The cl-statsd/src module
statsd-client-base: Private classes
statsd-client-with-prefix: Private classes
statsd-client-with-transport: Private classes
statsd.lisp: The cl-statsd/src/statsd․lisp file
sync-client: Private classes
sync.lisp: The cl-statsd/src/clients/sync․lisp file
System, cl-statsd: The cl-statsd system

T
throttle-threshold-reached: Public conditions
transport-base: Public classes
transport-error: Public conditions
transports: The cl-statsd/src/transports module

U
usocket-transport: Private classes
usocket.lisp: The cl-statsd/src/transports/usocket․lisp file