.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "IO::Async::Metrics 3pm" .TH IO::Async::Metrics 3pm 2024-02-04 "perl v5.38.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH NAME "IO::Async::Metrics" \- report metrics about "IO::Async" to "Metrics::Any" .SH DESCRIPTION .IX Header "DESCRIPTION" This module contains the implementation of metrics-reporting code from \&\f(CW\*(C`IO::Async\*(C'\fR to provide information about its operation into Metrics::Any. .SH METRICS .IX Header "METRICS" The following metrics are reported: .SS io_async_forks .IX Subsection "io_async_forks" A counter giving the number of times that \f(CWfork(2)\fR has been called by the IO::Async::Loop. .SS io_async_notifiers .IX Subsection "io_async_notifiers" A gauge giving the number of IO::Async::Notifiers currently registered with the Loop. .SS io_async_processing .IX Subsection "io_async_processing" A time distribution giving the amount of time spent processing IO events. This time does not include the time spent blocking on the underlying kernel system call to wait for IO events, but only the time spent in userland afterwards to handle them. .SS io_async_resolver_lookups .IX Subsection "io_async_resolver_lookups" A labelled counter giving the number of attempted lookups by the IO::Async::Resolver. .PP This metric has one label, \f(CW\*(C`type\*(C'\fR, containing the type of lookup; e.g. \f(CW\*(C`getaddrinfo\*(C'\fR. .SS io_async_resolver_failures .IX Subsection "io_async_resolver_failures" A labelled counter giving the number of Resolver lookups that failed. This is labelled as for \f(CW\*(C`io_async_resolver_lookups\*(C'\fR. .SS io_async_stream_read .IX Subsection "io_async_stream_read" A counter giving the number of bytes read by IO::Async::Stream instances. Note that for SSL connections, this will only be able to count bytes of plaintext, not ciphertext, and thus will be a slight under-estimate in this case. .SS io_async_stream_written .IX Subsection "io_async_stream_written" A counter giving the number of bytes written by Stream instances. Note again for SSL connections this will only be able to count bytes of plaintext. .SH AUTHOR .IX Header "AUTHOR" Paul Evans