| /* |
| * Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved. |
| * |
| * This program and the accompanying materials are made available under the |
| * terms of the Eclipse Public License v. 2.0, which is available at |
| * http://www.eclipse.org/legal/epl-2.0. |
| * |
| * This Source Code may also be made available under the following Secondary |
| * Licenses when the conditions for such availability set forth in the |
| * Eclipse Public License v. 2.0 are satisfied: GNU General Public License, |
| * version 2 with the GNU Classpath Exception, which is available at |
| * https://www.gnu.org/software/classpath/license.html. |
| * |
| * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 |
| */ |
| |
| package com.sun.enterprise.resource.pool.monitor; |
| |
| import org.glassfish.external.probe.provider.annotations.ProbeParam; |
| import org.glassfish.external.probe.provider.annotations.Probe; |
| import org.glassfish.external.probe.provider.annotations.ProbeProvider; |
| |
| /** |
| * Probe provider interface for Connector connection pool related events to provide |
| * information related to the various objects on jca pool monitoring. |
| * |
| * @author Shalini M |
| */ |
| @ProbeProvider(moduleProviderName="glassfish", moduleName="jca", probeProviderName="connection-pool") |
| public class ConnectorConnPoolProbeProvider extends ConnectionPoolProbeProvider { |
| |
| /** |
| * Emits probe event/notification that the given jca connection pool |
| * <code>poolName</code>has got a connection validation failed event. |
| * |
| * @param poolName for which connection validation has failed |
| * @param increment number of times the validation failed |
| */ |
| @Probe(name="connectionValidationFailedEvent") |
| @Override |
| public void connectionValidationFailedEvent( |
| @ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName, |
| @ProbeParam("increment") int increment){ } |
| |
| /** |
| * Emits probe event/notification that a jca connection pool with the given |
| * name <code>poolName</code> has got a connection timed out event. |
| * |
| * @param poolName that has got a connection timed-out event |
| */ |
| @Probe(name="connectionTimedOutEvent") |
| @Override |
| public void connectionTimedOutEvent(@ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| /** |
| * Emits probe event/notification that the pool with the given name |
| * <code>poolName</code> is having a potentialConnLeak event. |
| * |
| * @param poolName |
| */ |
| @Probe(name="potentialConnLeakEvent") |
| @Override |
| public void potentialConnLeakEvent(@ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| /** |
| * Emits probe event/notification that the given jca connection pool |
| * <code>poolName</code>has got a decrement free connections size event. |
| * |
| * @param poolName for which decrement numConnFree is got |
| */ |
| @Probe(name="decrementNumConnFreeEvent") |
| @Override |
| public void decrementNumConnFreeEvent( |
| @ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| /** |
| * Emits probe event/notification that the given jca connection pool |
| * <code>poolName</code>has got a decrement free connections size event. |
| * |
| * @param poolName for which decrement numConnFree is got |
| * @param beingDestroyed if the connection is destroyed due to error |
| * @param steadyPoolSize |
| */ |
| @Probe(name="incrementNumConnFreeEvent") |
| @Override |
| public void incrementNumConnFreeEvent( |
| @ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName, |
| @ProbeParam("beingDestroyed") boolean beingDestroyed, |
| @ProbeParam("steadyPoolSize") int steadyPoolSize) { } |
| |
| /** |
| * Emits probe event/notification that the given jca connection pool |
| * <code>poolName</code>has got a decrement connections used event. |
| * |
| * @param poolName for which decrement numConnUsed is got |
| */ |
| @Probe(name="decrementConnectionUsedEvent") |
| @Override |
| public void decrementConnectionUsedEvent( |
| @ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| /** |
| * Emits probe event/notification that the given jca connection pool |
| * <code>poolName</code>has got a increment connections used event. |
| * |
| * @param poolName for which increment numConnUsed is got |
| */ |
| @Probe(name="connectionUsedEvent") |
| @Override |
| public void connectionUsedEvent( |
| @ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| /** |
| * Emits probe event/notification that the given jca connection pool |
| * <code>poolName</code>has got a increment connections free event. |
| * |
| * @param poolName for which increment numConnFree is got |
| * @param count number of connections freed to pool |
| */ |
| @Probe(name="connectionsFreedEvent") |
| @Override |
| public void connectionsFreedEvent( |
| @ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName, |
| @ProbeParam("count") int count) { } |
| |
| /** |
| * Emits probe event/notification that a connection request is served in the |
| * time <code>timeTakenInMillis</code> for the given jca connection pool |
| * <code> poolName</code> |
| * |
| * @param poolName |
| * @param timeTakenInMillis time taken to serve a connection |
| */ |
| @Probe(name="connectionRequestServedEvent") |
| @Override |
| public void connectionRequestServedEvent( |
| @ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName, |
| @ProbeParam("timeTakenInMillis") long timeTakenInMillis) { } |
| |
| /** |
| * Emits probe event/notification that a connection is destroyed for the |
| * given jca connection pool <code>poolName</code> |
| * |
| * @param poolName |
| */ |
| @Probe(name="connectionDestroyedEvent") |
| @Override |
| public void connectionDestroyedEvent( |
| @ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| /** |
| * Emits probe event/notification that a connection is acquired by application |
| * for the given jca connection pool <code>poolName</code> |
| * |
| * @param poolName |
| */ |
| @Probe(name="connectionAcquiredEvent") |
| @Override |
| public void connectionAcquiredEvent( |
| @ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| /** |
| * Emits probe event/notification that a connection is released for the given |
| * jca connection pool <code>poolName</code> |
| * |
| * @param poolName |
| */ |
| @Probe(name="connectionReleasedEvent") |
| @Override |
| public void connectionReleasedEvent(@ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| /** |
| * Emits probe event/notification that a new connection is created for the |
| * given jca connection pool <code>poolName</code> |
| * |
| * @param poolName |
| */ |
| @Probe(name="connectionCreatedEvent") |
| @Override |
| public void connectionCreatedEvent(@ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| @Probe(name="toString", hidden=true) |
| @Override |
| public void toString(@ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName, |
| @ProbeParam("stackTrace") StringBuffer stackTrace) { } |
| |
| /** |
| * Emits probe event/notification that a connection under test matches the |
| * current request for the given connector connection pool <code>poolName</code> |
| * |
| * @param poolName |
| */ |
| @Probe(name="connectionMatchedEvent") |
| @Override |
| public void connectionMatchedEvent(@ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| /** |
| * Emits probe event/notification that a connection under test does not |
| * match the current request for the given connector connection pool |
| * <code>poolName</code> |
| * |
| * @param poolName |
| */ |
| @Probe(name="connectionNotMatchedEvent") |
| @Override |
| public void connectionNotMatchedEvent(@ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| /** |
| * Emits probe event/notification that the wait queue length has increased |
| * for the given connector connection pool <code>poolName</code> |
| * |
| * @param poolName |
| */ |
| @Probe(name="connectionRequestQueuedEvent") |
| @Override |
| public void connectionRequestQueuedEvent(@ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| |
| /** |
| * Emits probe event/notification that the wait queue length has decreased |
| * for the given connector connection pool <code>poolName</code> |
| * |
| * @param poolName |
| */ |
| @Probe(name="connectionRequestDequeuedEvent") |
| @Override |
| public void connectionRequestDequeuedEvent(@ProbeParam("poolName") String poolName, |
| @ProbeParam("appName") String appName, |
| @ProbeParam("moduleName") String moduleName |
| ) { } |
| } |