// Licensed to the Apache Software Foundation (ASF) under one or more
// contributor license agreements.  See the NOTICE file distributed with
// this work for additional information regarding copyright ownership.
// The ASF licenses this file to You under the Apache License, Version 2.0
// (the "License"); you may not use this file except in compliance with
// the License.  You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
= Available Metrics

This topic lists all metrics available in Ignite 3.

== client.handler

The metrics provided by the client handler and related to active clients.

[width="100%",cols="20%,80%",opts="header"]
|=======================================================================
|Metric name | Description

|ConnectionsInitiated|Total initiated connections.
|SessionsAccepted|Total accepted sessions.
|SessionsActive|The number of currently active sessions.
|SessionsRejected|Total sessions rejected due to handshake errors.
|SessionsRejectedTls|Total sessions rejected due to TLS handshake errors.
|SessionsRejectedTimeout|Total sessions rejected due to timeout.
|BytesSent|Total bytes sent.
|BytesReceived|Total bytes received.
|RequestsActive|Requests in progress.
|RequestsProcessed|Total processed requests.
|RequestsFailed|Total failed requests.
|TransactionsActive|Active transactions.
|CursorsActive|Active cursors.
|=======================================================================

== jvm

The metrics for Ignite Java Virtual Machine resource use.

[width="100%",cols="20%,80%",opts="header"]
|=======================================================================
|Metric name | Description

|gc.CollectionTime|Approximate total time spent on garbage collection in milliseconds, summed across all collectors.
|memory.heap.Committed|Committed amount of heap memory.
|memory.non-heap.Init|Initial amount of non-heap memory.
|memory.heap.Max|Maximum amount of heap memory.
|memory.heap.Used|Currently used amount of heap memory.
|memory.non-heap.Max|Maximum amount of non-heap memory.
|memory.non-heap.Committed|Committed amount of non-heap memory.
|memory.non-heap.Used|Used amount of non-heap memory.
|memory.heap.Init|Initial amount of heap memory.
|=======================================================================

== metastorage

[width="100%",cols="20%,80%",opts="header"]
|=======================================================================
|Metric name | Description

|SafeTimeLag| Number of milliseconds the local MetaStorage SafeTime lags behind the local logical clock.
|=======================================================================

== os

[width="100%",cols="20%,80%",opts="header"]
|=======================================================================
|Metric name | Description

|LoadAverage|System load average for the last minute. System load average is the sum of the number of runnable entities queued to the available processors and the number of runnable entities running on the available processors averaged over a period of time. The way in which the load average is calculated depends on the operating system. If the load average is not available, a negative value is returned.
|=======================================================================

== raft

[width="100%",cols="20%,80%",opts="header"]
|=======================================================================
|Metric name | Description

|raft.readonlyservice.disruptor.Stripes|The histogram of distribution data by stripes readonly operations for partitions
|raft.fsmcaller.disruptor.Stripes|The histogram of distribution data by stripes in the state machine for partitions
|raft.logmanager.disruptor.Batch|The histogram of the batch size to handle in the log for partitions
|raft.logmanager.disruptor.Stripes|The histogram of distribution data by stripes in the log for partitions
|raft.nodeimpl.disruptor.Batch|The histogram of the batch size to handle node operations for partitions
|raft.nodeimpl.disruptor.Stripes|The histogram of distribution data by stripes for node operations for partitions
|raft.readonlyservice.disruptor.Batch|The histogram of the batch size to handle readonly operations for partitions
|raft.fsmcaller.disruptor.Batch|The histogram of the batch size to handle in the state machine for partitions
|=======================================================================


== sql.client

SQL client metrics.

[width="100%",cols="20%,80%",opts="header"]
|=======================================================================
|Metric name | Description

|OpenCursors | Number of currently open cursors.
|=======================================================================

== sql.memory

[width="100%",cols="20%,80%",opts="header"]
|=======================================================================
|Metric name | Description

|Reserved|Current memory usage by SQL (bytes)
|MaxReserved|Maximum memory usage by SQL so far (bytes)
|Limit|SQL memory limit (bytes)
|StatementLimit|Memory limit per SQL statement (bytes)
|=======================================================================
