All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.ow2.petals.binding.soap.listener.incoming.jetty.IncomingProbes Maven / Gradle / Ivy

The newest version!
/**
 * Copyright (c) 2012-2023 Linagora
 * 
 * This program/library is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as published by
 * the Free Software Foundation, either version 2.1 of the License, or (at your
 * option) any later version.
 * 
 * This program/library is distributed in the hope that it will be useful, but
 * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
 * for more details.
 * 
 * You should have received a copy of the GNU Lesser General Public License
 * along with this program/library; If not, see http://www.gnu.org/licenses/
 * for the GNU Lesser General Public License version 2.1.
 */
package org.ow2.petals.binding.soap.listener.incoming.jetty;

import org.ow2.petals.probes.api.key.ProbeKey;
import org.ow2.petals.probes.api.probes.CounterProbe;
import org.ow2.petals.probes.api.probes.GaugeProbe;
import org.ow2.petals.probes.api.probes.KeyedCounterProbe;
import org.ow2.petals.probes.api.probes.KeyedCounterProbeWithExecutionStatus;
import org.ow2.petals.probes.api.probes.KeyedResponseTimeProbe;

/**
 * Bean class containing the technical monitoring probes about incoming
 * requests.
 * 
 * @author Christophe DENEUX - Linagora
 */
public class IncomingProbes {

    /**
     * The probe counting the number of requests on an unknown servlet.
     */
    public final CounterProbe probeUnknownServlet;

    /**
     * The probe counting the number of requests on information servlet (the
     * welcom servlet and the servlet listing ws-services).
     */
    public final CounterProbe probeInformationServlet;

    /**
     * The probe counting the number of requests on service contract servlet to get WSDL of services, per service name.
     */
    public final KeyedCounterProbe probeServiceContractsServlet;

    /**
     * The probe measuring the active threads of the pool.
     */
    public final GaugeProbe probeHttpServerThreadPoolActiveThreads;

    /**
     * The probe measuring the idle threads of the pool.
     */
    public final GaugeProbe probeHttpServerThreadPoolIdleThreads;

    /**
     * The probe measuring the enqueued requests of the thread pool.
     */
    public final GaugeProbe probeHttpServerThreadPoolQueuedRequests;

    /**
     * The probe counting the number of ws-request invocations.
     */
    public final KeyedCounterProbeWithExecutionStatus probeHttpRequestsInvocationsCount;

    /**
     * The probe measuring the response time of ws-requests executions.
     */
    public final KeyedResponseTimeProbe probeHttpRequestsInvocationsResponseTime;

    /**
     * 
     * @param probeUnknownServlet
     *            The probe counting the number of requests on an unknown servlet.
     * @param probeInformationServlet
     *            The probe counting the number of requests on information servlet.
     * @param probeServiceContractServlet
     *            The probe counting the number of requests on service contract servlet.
     * @param probeHttpServerThreadPoolActiveThreads
     *            The probe measuring the active threads of the pool.
     * @param probeHttpServerThreadPoolIdleThreads
     *            The probe measuring the idle threads of the pool.
     * @param probeHttpServerThreadPoolQueuedRequests
     *            The probe measuring the enqueued requests of the thread pool.
     * @param probeHttpRequestsInvocationsCount
     *            The probe counting the number of ws-request invocations.
     * @param probeHttpRequestsInvocationsResponseTime
     *            The probe measuring the response time of ws-requests executions.
     */
    public IncomingProbes(
            final CounterProbe probeUnknownServlet,
            final CounterProbe probeInformationServlet,
            final KeyedCounterProbe probeServiceContractServlet,
            final GaugeProbe probeHttpServerThreadPoolActiveThreads,
            final GaugeProbe probeHttpServerThreadPoolIdleThreads,
            final GaugeProbe probeHttpServerThreadPoolQueuedRequests,
            final KeyedCounterProbeWithExecutionStatus probeHttpRequestsInvocationsCount,
            final KeyedResponseTimeProbe probeHttpRequestsInvocationsResponseTime) {
        super();
        this.probeUnknownServlet = probeUnknownServlet;
        this.probeInformationServlet = probeInformationServlet;
        this.probeServiceContractsServlet = probeServiceContractServlet;
        this.probeHttpServerThreadPoolActiveThreads = probeHttpServerThreadPoolActiveThreads;
        this.probeHttpServerThreadPoolIdleThreads = probeHttpServerThreadPoolIdleThreads;
        this.probeHttpServerThreadPoolQueuedRequests = probeHttpServerThreadPoolQueuedRequests;
        this.probeHttpRequestsInvocationsCount = probeHttpRequestsInvocationsCount;
        this.probeHttpRequestsInvocationsResponseTime = probeHttpRequestsInvocationsResponseTime;
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy