/* SPDX-License-Identifier: Apache-2.0 * * The OpenSearch Contributors require contributions made to * this file be licensed under the Apache-2.0 license or a * compatible open source license. */ /* * Modifications Copyright OpenSearch Contributors. See * GitHub history for details. * * Licensed to Elasticsearch B.V. under one or more contributor * license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright * ownership. Elasticsearch B.V. 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. */ using System.Runtime.Serialization; using OpenSearch.Net.Utf8Json; namespace OpenSearch.Client.Specification.CatApi { [DataContract] public class CatThreadPoolRecord : ICatRecord { /// /// The number of active threads in the current thread pool /// [DataMember(Name = "active")] [JsonFormatter(typeof(StringIntFormatter))] public int Active { get; set; } /// /// The number of tasks completed by the thread pool executor /// [DataMember(Name = "completed")] [JsonFormatter(typeof(NullableStringLongFormatter))] public long? Completed { get; set; } /// /// The configured core number of active threads allowed in the current thread pool /// [DataMember(Name = "core")] [JsonFormatter(typeof(NullableStringIntFormatter))] public int? Core { get; set; } /// /// The ephemeral node ID /// [DataMember(Name = "ephemeral_node_id")] public string EphemeralNodeId { get; set; } /// /// The hostname for the current node /// [DataMember(Name = "host")] public string Host { get; set; } /// /// The IP address for the current node /// [DataMember(Name = "ip")] public string Ip { get; set; } /// /// The configured keep alive time for threads /// [DataMember(Name = "keep_alive")] public Time KeepAlive { get; set; } /// /// The highest number of active threads in the current thread pool /// [DataMember(Name = "largest")] [JsonFormatter(typeof(NullableStringIntFormatter))] public int? Largest { get; set; } /// /// The configured maximum number of active threads allowed in the current thread pool /// [DataMember(Name = "max")] [JsonFormatter(typeof(NullableStringIntFormatter))] public int? Maximum { get; set; } /// /// The name of the thread pool /// [DataMember(Name = "name")] public string Name { get; set; } /// /// The unique id of the node /// [DataMember(Name = "node_id")] public string NodeId { get; set; } /// /// The name of the node /// [DataMember(Name = "node_name")] public string NodeName { get; set; } /// /// The number of threads in the current thread pool /// [DataMember(Name = "pool_size")] [JsonFormatter(typeof(NullableStringIntFormatter))] public int? PoolSize { get; set; } /// /// The bound transport port for the current node /// [DataMember(Name = "port")] [JsonFormatter(typeof(NullableStringIntFormatter))] public int? Port { get; set; } /// /// The process ID of the running node /// [DataMember(Name = "pid")] [JsonFormatter(typeof(NullableStringIntFormatter))] public int? ProcessId { get; set; } /// /// The number of tasks in the queue for the current thread pool /// [DataMember(Name = "queue")] [JsonFormatter(typeof(StringIntFormatter))] public int Queue { get; set; } /// /// The maximum number of tasks permitted in the queue for the current thread pool /// [DataMember(Name = "queue_size")] [JsonFormatter(typeof(NullableStringIntFormatter))] public int? QueueSize { get; set; } /// /// The number of tasks rejected by the thread pool executor /// [DataMember(Name = "rejected")] [JsonFormatter(typeof(StringLongFormatter))] public long Rejected { get; set; } /// /// The configured fixed number of active threads allowed in the current thread pool /// [DataMember(Name = "size")] [JsonFormatter(typeof(NullableStringIntFormatter))] public int? Size { get; set; } /// /// The current (*) type of thread pool (`fixed` or `scaling`) /// [DataMember(Name = "type")] public string Type { get; set; } } }