From 38fcbd6f5c6dcfc7c92060e7fe4d60c1f34d6d1b Mon Sep 17 00:00:00 2001 From: Lianghui Yu Date: Fri, 27 Mar 2026 13:30:05 +0800 Subject: [PATCH 1/3] Remove o11yphant dependency and all related code from indy Remove the o11yphant metrics and tracing library entirely from the codebase: - Remove all dependency declarations from pom.xml files (root + 8 modules) - Remove @Measure annotations, DefaultMetricsManager, Meter, Timer, MetricRegistry, and related metrics instrumentation code - Remove TraceManager, OtelUtil, and tracing instrumentation code - Gut metrics/trace subsystem classes (IndyMetricsConfig, IndyTraceConfiguration, TraceManagerProducer, IndyTrafficClassifier, IndyGoldenSignalsMetricSet, etc.) - Clean up Infinispan cache handles to remove metrics wrapping - Remove o11yphant interceptors from beans.xml and loggers from logback configs Bump up kojiji and path-mapped-storage to latest SNAPSHOT to avoid transmission dependency of o11yphant --- .../browse/ContentBrowseController.java | 2 - .../indy/koji/content/KojiBuildAuthority.java | 2 - .../content/KojiContentManagerDecorator.java | 4 - .../content/KojiMavenMetadataProvider.java | 3 - .../indy/koji/inject/KojijiProvider.java | 17 +- .../KojiMavenMetadataProviderTest.java | 6 +- ...venContentsFilteringTransferDecorator.java | 23 +-- .../maven/content/MavenMetadataGenerator.java | 18 -- .../maven/content/MetadataMergeListener.java | 2 - ...ContentFilteringTransferDecoratorTest.java | 31 ---- .../content/MavenMetadataGeneratorTest.java | 6 +- .../src/test/resources/logback-test.xml | 1 - .../NPMPackageMaskingTransferDecorator.java | 52 ++---- .../content/PackageMetadataGeneratorTest.java | 4 +- .../npm/jaxrs/NPMContentAccessHandler.java | 2 +- api/pom.xml | 4 - .../indy/util/RequestContextHelper.java | 3 - .../core/bind/jaxrs/ContentAccessHandler.java | 12 +- .../util/TransferCountingInputStream.java | 37 +--- .../jaxrs/util/TransferStreamingOutput.java | 31 +--- .../jaxrs/util/TransferInputStreamTest.java | 8 +- .../core/change/StoreContentListener.java | 4 - .../core/change/StoreEnablementManager.java | 5 - .../event/DefaultStoreEventDispatcher.java | 7 - .../AbstractMergedContentGenerator.java | 2 - .../core/content/ContentGeneratorManager.java | 8 - .../core/content/DefaultContentManager.java | 13 -- .../content/DefaultDirectContentAccess.java | 12 +- .../core/content/DefaultDownloadManager.java | 11 -- .../indy/core/ctl/ContentController.java | 2 - .../core/inject/CassandraNotFoundCache.java | 12 -- .../indy/core/inject/IspnNotFoundCache.java | 12 -- .../indy/core/inject/NFCMetricsDecorator.java | 8 - .../indy/data/DefaultStoreValidator.java | 8 - .../content/DefaultDownloadManagerTest.java | 4 +- .../indy/core/ctl/ContentControllerTest.java | 4 +- .../indy/fixture/MockTestProvider.java | 23 --- .../indy/rest/util/DownloadManagerTest.java | 2 +- .../db/common/AbstractStoreDataManager.java | 15 -- .../db/common/DefaultArtifactStoreQuery.java | 17 -- .../data/InfinispanStoreDataManager.java | 4 - .../service/ServiceStoreDataCacheUpdater.java | 7 - .../src/main/resources/META-INF/beans.xml | 5 - embedder/pom.xml | 5 - embedder/src/it/resources/logback.xml | 1 - .../src/main/resources/META-INF/beans.xml | 5 - embedder/src/test/resources/logback-test.xml | 1 - .../def/DefaultGalleyStorageProvider.java | 54 +----- .../indy/filer/def/IOLatencyDecorator.java | 16 +- .../indy/filer/def/IndyTimingProvider.java | 10 +- .../indy/filer/def/TimingInputStream.java | 27 +-- .../indy/filer/def/TimingOutputStream.java | 29 +-- .../metrics/DefaultStoragePathProvider.java | 6 +- pom.xml | 54 +----- ...CassandraConnectionSpanFieldsInjector.java | 4 - subsys/groovy/pom.xml | 4 - .../fixture/MockStoragePathProvider.java | 5 +- subsys/http/pom.xml | 4 - .../subsys/infinispan/BasicCacheHandle.java | 32 +--- .../indy/subsys/infinispan/CacheHandle.java | 13 +- .../indy/subsys/infinispan/CacheProducer.java | 19 +- .../subsys/infinispan/RemoteCacheHandle.java | 16 +- .../metrics/IspnCheckRegistrySet.java | 167 ------------------ .../metrics/IspnRegistrySetProvider.java | 45 ----- subsys/jaxrs/pom.xml | 4 - .../indy/bind/jaxrs/IndyDeployment.java | 42 ----- .../bind/jaxrs/ResourceManagementFilter.java | 79 +-------- .../IndyHealthCheckDeploymentProvider.java | 7 +- .../IndyPrometheusDeploymentProvider.java | 7 +- .../bind/jaxrs/util/DTOStreamingOutput.java | 62 +------ .../indy/bind/jaxrs/util/ResponseHelper.java | 20 +-- subsys/kafka/pom.xml | 4 - .../indy/subsys/kafka/IndyKafkaProducer.java | 14 -- .../trace/TracingKafkaClientSupplier.java | 19 +- subsys/metrics/pom.xml | 8 - .../metrics/IndyGoldenSignalsMetricSet.java | 4 - .../metrics/IndyMetricsStartupAction.java | 14 +- .../subsys/metrics/IndyTrafficClassifier.java | 7 +- .../IndyTransportMetricConfigProducer.java | 120 ------------- .../metrics/conf/IndyMetricsConfig.java | 55 +----- .../src/main/resources/META-INF/beans.xml | 3 - subsys/trace/pom.xml | 12 -- .../subsys/trace/TraceManagerProducer.java | 67 +------ .../trace/config/IndyTraceConfiguration.java | 20 +-- 84 files changed, 96 insertions(+), 1442 deletions(-) delete mode 100644 subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyTransportMetricConfigProducer.java diff --git a/addons/content-browse/common/src/main/java/org/commonjava/indy/content/browse/ContentBrowseController.java b/addons/content-browse/common/src/main/java/org/commonjava/indy/content/browse/ContentBrowseController.java index 8dc6087782..a9b7d83873 100644 --- a/addons/content-browse/common/src/main/java/org/commonjava/indy/content/browse/ContentBrowseController.java +++ b/addons/content-browse/common/src/main/java/org/commonjava/indy/content/browse/ContentBrowseController.java @@ -23,7 +23,6 @@ import org.commonjava.indy.data.IndyDataException; import org.commonjava.indy.data.StoreDataManager; import org.commonjava.indy.util.RequestContextHelper; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.ArtifactStore; import org.commonjava.indy.model.core.StoreKey; import org.commonjava.indy.model.galley.KeyedLocation; @@ -70,7 +69,6 @@ public ContentBrowseController( final StoreDataManager storeManager, final Conte this.contentManager = contentManager; } - @Measure public ContentBrowseResult browseContent( final StoreKey storeKey, final String path, final String browseBaseUri, final String contentBaseUri, final UriFormatter uriFormatter, EventMetadata eventMetadata ) diff --git a/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiBuildAuthority.java b/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiBuildAuthority.java index 0706a58cac..1a02ad632b 100644 --- a/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiBuildAuthority.java +++ b/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiBuildAuthority.java @@ -28,7 +28,6 @@ import org.commonjava.indy.data.IndyDataException; import org.commonjava.indy.data.StoreDataManager; import org.commonjava.indy.koji.conf.IndyKojiConfig; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.ArtifactStore; import org.commonjava.indy.model.core.StoreKey; import org.commonjava.indy.subsys.infinispan.CacheProducer; @@ -137,7 +136,6 @@ public boolean isAuthorized( String path, EventMetadata eventMetadata, ProjectRe return isAuthorized( path, eventMetadata, ref, build, session, new HashMap<>() ); } - @Measure public boolean isAuthorized( String path, EventMetadata eventMetadata, ProjectRef ref, KojiBuildInfo build, KojiSessionInfo session, Map seenBuildArchives ) throws KojiClientException diff --git a/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiContentManagerDecorator.java b/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiContentManagerDecorator.java index a66807c6ae..28dcb71329 100644 --- a/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiContentManagerDecorator.java +++ b/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiContentManagerDecorator.java @@ -43,7 +43,6 @@ import org.commonjava.maven.galley.model.Transfer; import org.commonjava.maven.galley.model.TransferOperation; import org.commonjava.maven.galley.spi.nfc.NotFoundCache; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -129,7 +128,6 @@ public abstract class KojiContentManagerDecorator private KojiPathPatternFormatter pathFormatter; @Override - @Measure public boolean exists( ArtifactStore store, String path ) throws IndyWorkflowException { @@ -165,7 +163,6 @@ public Transfer retrieve( final ArtifactStore store, final String path ) } @Override - @Measure public Transfer retrieve( final ArtifactStore store, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -251,7 +248,6 @@ public Transfer getTransfer( final ArtifactStore store, final String path, final return result; } - @Measure private T findKojiBuildAnd( ArtifactStore store, String path, EventMetadata eventMetadata, T defValue, KojiBuildAction action ) throws IndyWorkflowException { diff --git a/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiMavenMetadataProvider.java b/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiMavenMetadataProvider.java index 12c67af69a..aaaa63610e 100644 --- a/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiMavenMetadataProvider.java +++ b/addons/koji/common/src/main/java/org/commonjava/indy/koji/content/KojiMavenMetadataProvider.java @@ -59,7 +59,6 @@ import org.commonjava.maven.galley.model.ConcreteResource; import org.commonjava.maven.galley.model.Transfer; import org.commonjava.maven.galley.spi.nfc.NotFoundCache; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.infinispan.Cache; import org.infinispan.client.hotrod.RemoteCache; import org.infinispan.client.hotrod.annotation.ClientCacheEntryExpired; @@ -266,7 +265,6 @@ private void clearPaths( final Set affected, final String path ) } @Override - @Measure public Metadata getMetadata( StoreKey targetKey, String path ) { Logger logger = LoggerFactory.getLogger( getClass() ); @@ -378,7 +376,6 @@ public Metadata getMetadata( StoreKey targetKey, String path ) } - @Measure private Metadata executeKojiMetadataLookup(ProjectRef ga, String path ) throws KojiClientException, IndyWorkflowException { diff --git a/addons/koji/common/src/main/java/org/commonjava/indy/koji/inject/KojijiProvider.java b/addons/koji/common/src/main/java/org/commonjava/indy/koji/inject/KojijiProvider.java index f6ec48b726..5d09b4e75d 100644 --- a/addons/koji/common/src/main/java/org/commonjava/indy/koji/inject/KojijiProvider.java +++ b/addons/koji/common/src/main/java/org/commonjava/indy/koji/inject/KojijiProvider.java @@ -24,9 +24,7 @@ import org.commonjava.indy.action.ShutdownAction; import org.commonjava.indy.action.StartupAction; import org.commonjava.indy.koji.conf.IndyKojiConfig; -import org.commonjava.indy.subsys.metrics.conf.IndyMetricsConfig; import org.commonjava.atlas.maven.ident.ref.ProjectRef; -import org.commonjava.o11yphant.metrics.api.MetricRegistry; import org.commonjava.util.jhttpc.auth.MemoryPasswordManager; import org.commonjava.util.jhttpc.auth.PasswordManager; import org.commonjava.util.jhttpc.auth.PasswordType; @@ -57,12 +55,6 @@ public class KojijiProvider private Locker versionMetadataLocks; - @Inject - private IndyMetricsConfig indyMetricsConfig; - - @Inject - private MetricRegistry metricRegistry; - @Inject @WeftManaged @ExecutorConfig( named = "koji-queries", threads = 4 ) @@ -117,14 +109,7 @@ public void start() throws IndyLifecycleException try { - if ( indyMetricsConfig.isKojiMetricEnabled() ) - { - kojiClient = new KojiClient( config, kojiPasswordManager, kojiExecutor, metricRegistry ); - } - else - { - kojiClient = new KojiClient( config, kojiPasswordManager, kojiExecutor ); - } + kojiClient = new KojiClient( config, kojiPasswordManager, kojiExecutor ); } catch ( KojiClientException e ) { diff --git a/addons/koji/common/src/test/java/org/commonjava/indy/koji/content/KojiMavenMetadataProviderTest.java b/addons/koji/common/src/test/java/org/commonjava/indy/koji/content/KojiMavenMetadataProviderTest.java index 609d0ead51..3bd14c1c20 100644 --- a/addons/koji/common/src/test/java/org/commonjava/indy/koji/content/KojiMavenMetadataProviderTest.java +++ b/addons/koji/common/src/test/java/org/commonjava/indy/koji/content/KojiMavenMetadataProviderTest.java @@ -336,13 +336,13 @@ private void initKojiClient( String exchangeName, boolean verifyArtifacts ) new IndyObjectMapper( true ), new GlobalHttpConfiguration().getGlobalProxyConfig()) ).build(); WeftExecutorService rescanService = - new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false,null, null ); + new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); DownloadManager downloadManager = new DefaultDownloadManager( storeDataManager, galley.getTransferManager(), new IndyLocationExpander( storeDataManager ), rescanService ); WeftExecutorService contentAccessService = - new PoolWeftExecutorService( "test-content-access-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false,null, null ); + new PoolWeftExecutorService( "test-content-access-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); DirectContentAccess directContentAccess = new DefaultDirectContentAccess( downloadManager, contentAccessService ); @@ -357,7 +357,7 @@ private void initKojiClient( String exchangeName, boolean verifyArtifacts ) contentDigester, directContentAccess, cacheManager ); WeftExecutorService kojiMDService = - new PoolWeftExecutorService( "test-koji-metadata-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false,null, null ); + new PoolWeftExecutorService( "test-koji-metadata-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); provider = new KojiMavenMetadataProvider( this.cache, kojiClient, buildAuthority, kojiConfig, kojiMDService, cacheManager ); } diff --git a/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MavenContentsFilteringTransferDecorator.java b/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MavenContentsFilteringTransferDecorator.java index e04f642599..e916e27568 100644 --- a/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MavenContentsFilteringTransferDecorator.java +++ b/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MavenContentsFilteringTransferDecorator.java @@ -38,8 +38,6 @@ import org.apache.commons.lang3.StringUtils; import org.commonjava.atlas.maven.ident.util.SnapshotUtils; import org.commonjava.atlas.maven.ident.version.part.SnapshotPart; -import org.commonjava.o11yphant.metrics.api.Timer; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; import org.commonjava.maven.galley.event.EventMetadata; import org.commonjava.maven.galley.io.AbstractTransferDecorator; import org.commonjava.maven.galley.model.Location; @@ -70,9 +68,6 @@ public class MavenContentsFilteringTransferDecorator { private final Logger logger = LoggerFactory.getLogger( this.getClass() ); - @Inject - private DefaultMetricsManager metricsManager; - @Override public OverriddenBooleanValue decorateExists( final Transfer transfer, final EventMetadata metadata ) { @@ -96,7 +91,7 @@ public OutputStream decorateWrite( final OutputStream stream, final Transfer tra if ( loc instanceof HttpLocation && ( !allowsSnapshots || !allowsReleases ) && transfer.getFullPath() .endsWith( "maven-metadata.xml" ) ) { - return new MetadataFilteringOutputStream( stream, allowsSnapshots, allowsReleases, transfer, metricsManager ); + return new MetadataFilteringOutputStream( stream, allowsSnapshots, allowsReleases, transfer ); } else { @@ -186,8 +181,6 @@ private boolean isArtifact( final String element, final String artifactId, final private static class MetadataFilteringOutputStream extends IdempotentCloseOutputStream { - private static final String TIMER = "io.maven.metadata.out.filter"; - private final Logger logger = LoggerFactory.getLogger( this.getClass() ); private static final String LATEST = "([^<]+)"; @@ -206,17 +199,13 @@ private static class MetadataFilteringOutputStream private Transfer transfer; - private DefaultMetricsManager metricsManager; - private MetadataFilteringOutputStream( final OutputStream stream, final boolean allowsSnapshots, - final boolean allowsReleases, Transfer transfer, - final DefaultMetricsManager metricsManager ) + final boolean allowsReleases, Transfer transfer ) { super( stream ); this.allowsSnapshots = allowsSnapshots; this.allowsReleases = allowsReleases; this.transfer = transfer; - this.metricsManager = metricsManager; } private String filterMetadata() @@ -227,7 +216,6 @@ private String filterMetadata() return ""; } - Timer.Context timer = metricsManager == null ? null : metricsManager.startTimer( TIMER ); try { // filter versions from GA metadata @@ -268,13 +256,6 @@ private String filterMetadata() transfer.getPath() ); return buffer.toString(); } - finally - { - if ( timer != null ) - { - metricsManager.stopTimer( TIMER ); - } - } } private List fetchVersions() diff --git a/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MavenMetadataGenerator.java b/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MavenMetadataGenerator.java index 674d1eba4e..f862c908cb 100644 --- a/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MavenMetadataGenerator.java +++ b/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MavenMetadataGenerator.java @@ -58,7 +58,6 @@ import org.commonjava.maven.galley.model.TransferOperation; import org.commonjava.maven.galley.model.TypeMapping; import org.commonjava.maven.galley.spi.nfc.NotFoundCache; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.w3c.dom.Document; import org.w3c.dom.Element; @@ -100,7 +99,6 @@ import static org.commonjava.maven.galley.io.SpecialPathConstants.HTTP_METADATA_EXT; import static org.commonjava.maven.galley.util.PathUtils.normalize; import static org.commonjava.maven.galley.util.PathUtils.parentPath; -import static org.commonjava.o11yphant.trace.TraceManager.addFieldToActiveSpan; public class MavenMetadataGenerator extends AbstractMergedContentGenerator @@ -209,7 +207,6 @@ public void clearAllMerged( ArtifactStore store, String...paths ) } @Override - @Measure public Transfer generateFileContent( final ArtifactStore store, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -377,7 +374,6 @@ public List generateDirectoryContent( final ArtifactStore store, * @throws IndyWorkflowException */ @Override - @Measure public Transfer generateGroupFileContent( final Group group, final List members, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException @@ -642,10 +638,6 @@ private void putToMetadataCache( StoreKey key, String toMergePath, MetadataInfo private Callable generateMissing( ArtifactStore store, String toMergePath ) { return ()->{ - addFieldToActiveSpan( "storekey", store.getKey().toString() ); - addFieldToActiveSpan( "path", toMergePath ); - addFieldToActiveSpan( "activity", "generateMissing" ); - try { logger.trace( "Starting metadata generation: {}:{}", store.getKey(), toMergePath ); @@ -668,9 +660,6 @@ private Callable generateMissing( ArtifactStore store, String to } catch ( final Exception e ) { - addFieldToActiveSpan( "error", e.getClass().getSimpleName() ); - addFieldToActiveSpan( "error.message", e.getMessage() ); - String msg = String.format( "EXCLUDING Failed generated metadata: %s:%s. Reason: %s", store.getKey(), toMergePath, e.getMessage() ); logger.error( msg, e ); @@ -707,10 +696,6 @@ private void clearObsoleteFiles( Transfer item ) private Callable retrieveCached( final ArtifactStore store, final String toMergePath ) { return ()->{ - addFieldToActiveSpan( "storekey", store.getKey().toString() ); - addFieldToActiveSpan( "path", toMergePath ); - addFieldToActiveSpan( "activity", "retrieveCached" ); - Metadata memberMeta; memberMeta = getMetaFromCache( store.getKey(), toMergePath ); @@ -855,9 +840,6 @@ private Metadata mergeProviderMetadata( final Group group, final Metadata master private Callable downloadMissing( ArtifactStore store, String toMergePath ) { return () -> { - addFieldToActiveSpan( "storekey", store.getKey().toString() ); - addFieldToActiveSpan( "path", toMergePath ); - addFieldToActiveSpan( "activity", "downloadMissing" ); try { logger.trace( "Starting metadata download: {}:{}", store.getKey(), toMergePath ); diff --git a/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MetadataMergeListener.java b/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MetadataMergeListener.java index 247af8c908..0511e839d7 100644 --- a/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MetadataMergeListener.java +++ b/addons/pkg-maven/common/src/main/java/org/commonjava/indy/pkg/maven/content/MetadataMergeListener.java @@ -17,7 +17,6 @@ import org.commonjava.indy.content.DirectContentAccess; import org.commonjava.indy.content.MergedContentAction; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.ArtifactStore; import org.commonjava.indy.model.core.Group; import org.slf4j.Logger; @@ -50,7 +49,6 @@ public class MetadataMergeListener * if that path of file changed in the member of #originatingStore */ @Override - @Measure public void clearMergedPath( ArtifactStore originatingStore, Set affectedGroups, String path ) { logger.debug( "Clear merged path {}, origin: {}, affected: {}", path, originatingStore, affectedGroups ); diff --git a/addons/pkg-maven/common/src/test/java/org/commonjava/indy/pkg/maven/content/MavenContentFilteringTransferDecoratorTest.java b/addons/pkg-maven/common/src/test/java/org/commonjava/indy/pkg/maven/content/MavenContentFilteringTransferDecoratorTest.java index d34bfe1b74..96ec4038db 100644 --- a/addons/pkg-maven/common/src/test/java/org/commonjava/indy/pkg/maven/content/MavenContentFilteringTransferDecoratorTest.java +++ b/addons/pkg-maven/common/src/test/java/org/commonjava/indy/pkg/maven/content/MavenContentFilteringTransferDecoratorTest.java @@ -18,16 +18,13 @@ import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.commons.io.IOUtils; import org.commonjava.indy.test.fixture.core.HttpTestFixture; -import org.commonjava.maven.galley.config.TransportMetricConfig; import org.commonjava.maven.galley.event.EventMetadata; import org.commonjava.maven.galley.model.ConcreteResource; -import org.commonjava.maven.galley.model.Location; import org.commonjava.maven.galley.model.Transfer; import org.commonjava.maven.galley.model.TransferOperation; import org.commonjava.maven.galley.proxy.NoOpProxySitesCache; import org.commonjava.maven.galley.transport.htcli.internal.HttpDownload; import org.commonjava.maven.galley.transport.htcli.model.SimpleHttpLocation; -import org.commonjava.o11yphant.metrics.DefaultMetricRegistry; import org.hamcrest.CoreMatchers; import org.junit.Rule; import org.junit.Test; @@ -39,7 +36,6 @@ import java.util.HashMap; import java.util.List; -import static org.commonjava.o11yphant.metrics.util.MetricUtils.newDefaultMetricRegistry; import static org.hamcrest.CoreMatchers.equalTo; import static org.hamcrest.CoreMatchers.notNullValue; import static org.hamcrest.MatcherAssert.assertThat; @@ -49,33 +45,6 @@ public class MavenContentFilteringTransferDecoratorTest @Rule public HttpTestFixture fixture = new HttpTestFixture( "test", new MavenContentsFilteringTransferDecorator() ); - private static DefaultMetricRegistry metricRegistry = newDefaultMetricRegistry(); - - private static TransportMetricConfig metricConfig = new TransportMetricConfig() - { - @Override - public boolean isEnabled() - { - return true; - } - - @Override - public String getNodePrefix() - { - return null; - } - - @Override - public String getMetricUniqueName( Location location ) - { - if ( location.getName().equals( "test" ) ) - { - return location.getName(); - } - return null; - } - }; - @Test public void metadataFilteringWhenSnapshotsNotAllowed() throws Exception { diff --git a/addons/pkg-maven/common/src/test/java/org/commonjava/indy/pkg/maven/content/MavenMetadataGeneratorTest.java b/addons/pkg-maven/common/src/test/java/org/commonjava/indy/pkg/maven/content/MavenMetadataGeneratorTest.java index 6a50824eed..dc98d50366 100644 --- a/addons/pkg-maven/common/src/test/java/org/commonjava/indy/pkg/maven/content/MavenMetadataGeneratorTest.java +++ b/addons/pkg-maven/common/src/test/java/org/commonjava/indy/pkg/maven/content/MavenMetadataGeneratorTest.java @@ -100,7 +100,7 @@ public void setup() final ExpiringMemoryNotFoundCache nfc = new ExpiringMemoryNotFoundCache( config ); WeftExecutorService rescanService = - new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false,null, null ); + new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); final DownloadManager downloads = new DefaultDownloadManager( stores, fixture.getTransferManager(), locations, null, nfc, rescanService ); @@ -110,11 +110,11 @@ public void setup() final GroupMergeHelper helper = new GroupMergeHelper( downloads ); WeftExecutorService contentAccessService = - new PoolWeftExecutorService( "test-content-access-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false,null, null ); + new PoolWeftExecutorService( "test-content-access-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); DefaultDirectContentAccess contentAccess = new DefaultDirectContentAccess( downloads, contentAccessService ); WeftExecutorService mdService = - new PoolWeftExecutorService( "test-md-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false,null, null ); + new PoolWeftExecutorService( "test-md-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); generator = new MavenMetadataGenerator( contentAccess, stores, xml, types, merger, helper, new MemoryNotFoundCache(), mdService ); diff --git a/addons/pkg-maven/common/src/test/resources/logback-test.xml b/addons/pkg-maven/common/src/test/resources/logback-test.xml index c9fe8e7810..4ccad076bd 100644 --- a/addons/pkg-maven/common/src/test/resources/logback-test.xml +++ b/addons/pkg-maven/common/src/test/resources/logback-test.xml @@ -63,7 +63,6 @@ - diff --git a/addons/pkg-npm/common/src/main/java/org/commonjava/indy/pkg/npm/content/NPMPackageMaskingTransferDecorator.java b/addons/pkg-npm/common/src/main/java/org/commonjava/indy/pkg/npm/content/NPMPackageMaskingTransferDecorator.java index 24d90ea5fb..75e3f98e91 100644 --- a/addons/pkg-npm/common/src/main/java/org/commonjava/indy/pkg/npm/content/NPMPackageMaskingTransferDecorator.java +++ b/addons/pkg-npm/common/src/main/java/org/commonjava/indy/pkg/npm/content/NPMPackageMaskingTransferDecorator.java @@ -15,8 +15,6 @@ */ package org.commonjava.indy.pkg.npm.content; -import org.commonjava.o11yphant.metrics.api.Timer; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; import org.commonjava.indy.model.core.StoreKey; import org.commonjava.indy.model.galley.KeyedLocation; import org.commonjava.maven.galley.event.EventMetadata; @@ -47,9 +45,6 @@ public class NPMPackageMaskingTransferDecorator { private final Logger logger = LoggerFactory.getLogger( this.getClass() ); - @Inject - private DefaultMetricsManager metricsManager; - public NPMPackageMaskingTransferDecorator() { } @@ -87,34 +82,28 @@ public InputStream decorateRead( final InputStream stream, final Transfer transf StoreKey key = keyedLocation.getKey(); String contextURL = UrlUtils.buildUrl( baseURI, key.getType().name(), key.getName() ); logger.debug( "Use contextURL: {}", contextURL ); - return new PackageMaskingInputStream( stream, contextURL, metricsManager ); + return new PackageMaskingInputStream( stream, contextURL ); } private static class PackageMaskingInputStream extends IdempotentCloseInputStream { - private static final String TIMER = "io.npm.metadata.in.filter"; - final Logger logger = LoggerFactory.getLogger( this.getClass() ); int position; private String contextURL; - private DefaultMetricsManager metricsManager; - private byte[] bytes; boolean masked; private static final int SIZE = 1024; - private PackageMaskingInputStream( final InputStream stream, final String contextURL, - final DefaultMetricsManager metricsManager ) + private PackageMaskingInputStream( final InputStream stream, final String contextURL ) { super( stream ); this.contextURL = contextURL; - this.metricsManager = metricsManager; } @Override @@ -160,36 +149,25 @@ public synchronized int read( byte[] b, int off, int len ) throws IOException private void mask( String contextURL ) throws IOException { - Timer.Context timer = metricsManager == null ? null : metricsManager.startTimer( TIMER ); - try + ByteArrayOutputStream bos = new ByteArrayOutputStream(); + int read; { - ByteArrayOutputStream bos = new ByteArrayOutputStream(); - int read; + byte[] buffer = new byte[SIZE]; + while ( ( read = super.read(buffer, 0, buffer.length) ) >= 0 ) { - byte[] buffer = new byte[SIZE]; - while ( ( read = super.read(buffer, 0, buffer.length) ) >= 0 ) - { - bos.write( buffer, 0, read ); - } + bos.write( buffer, 0, read ); } - byte[] rawBytes = bos.toByteArray(); - String raw = new String( rawBytes, UTF_8 ); + } + byte[] rawBytes = bos.toByteArray(); + String raw = new String( rawBytes, UTF_8 ); - logger.trace( "Mask for raw:\n{}", raw ); + logger.trace( "Mask for raw:\n{}", raw ); - String s = updatePackageJson( raw, contextURL ); + String s = updatePackageJson( raw, contextURL ); - logger.trace( "Masked:\n{}", s ); - bytes = s.getBytes(); - masked = true; - } - finally - { - if ( timer != null ) - { - metricsManager.stopTimer( TIMER ); - } - } + logger.trace( "Masked:\n{}", s ); + bytes = s.getBytes(); + masked = true; } } diff --git a/addons/pkg-npm/common/src/test/java/org/commonjava/indy/pkg/npm/content/PackageMetadataGeneratorTest.java b/addons/pkg-npm/common/src/test/java/org/commonjava/indy/pkg/npm/content/PackageMetadataGeneratorTest.java index 5007e4f433..5a9cc6096c 100644 --- a/addons/pkg-npm/common/src/test/java/org/commonjava/indy/pkg/npm/content/PackageMetadataGeneratorTest.java +++ b/addons/pkg-npm/common/src/test/java/org/commonjava/indy/pkg/npm/content/PackageMetadataGeneratorTest.java @@ -93,7 +93,7 @@ public void setup() throws Exception final ExpiringMemoryNotFoundCache nfc = new ExpiringMemoryNotFoundCache( config ); WeftExecutorService rescanService = - new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false,null, null ); + new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); final LocationExpander locations = new IndyLocationExpander( stores ); final PackageMetadataMerger merger = new PackageMetadataMerger( ); @@ -102,7 +102,7 @@ public void setup() throws Exception final DownloadManager downloads = new DefaultDownloadManager( stores, core.getTransferManager(), locations, null, nfc, rescanService ); WeftExecutorService contentAccessService = - new PoolWeftExecutorService( "test-content-access-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false, null, null ); + new PoolWeftExecutorService( "test-content-access-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); DefaultDirectContentAccess contentAccess = new DefaultDirectContentAccess( downloads, contentAccessService ); final GroupMergeHelper helper = new GroupMergeHelper( downloads ); diff --git a/addons/pkg-npm/jaxrs/src/main/java/org/commonjava/indy/pkg/npm/jaxrs/NPMContentAccessHandler.java b/addons/pkg-npm/jaxrs/src/main/java/org/commonjava/indy/pkg/npm/jaxrs/NPMContentAccessHandler.java index 216edb3767..e3ba92c549 100644 --- a/addons/pkg-npm/jaxrs/src/main/java/org/commonjava/indy/pkg/npm/jaxrs/NPMContentAccessHandler.java +++ b/addons/pkg-npm/jaxrs/src/main/java/org/commonjava/indy/pkg/npm/jaxrs/NPMContentAccessHandler.java @@ -363,7 +363,7 @@ else if ( item.isDirectory() && StoreType.remote != st ) InputStream in = openInputStreamSafe( item, eventMetadata ); final Response.ResponseBuilder builder = - Response.ok( new TransferStreamingOutput( in, metricsManager, metricsConfig ) ); + Response.ok( new TransferStreamingOutput( in ) ); responseHelper.setInfoHeaders( builder, item, sk, path, false, getNPMContentType( path ), contentController.getHttpMetadata( item ) ); diff --git a/api/pom.xml b/api/pom.xml index f09bb1d50d..fecd9451ca 100644 --- a/api/pom.xml +++ b/api/pom.xml @@ -60,10 +60,6 @@ javax.activation javax.activation-api - - org.commonjava.util - o11yphant-trace-api - diff --git a/api/src/main/java/org/commonjava/indy/util/RequestContextHelper.java b/api/src/main/java/org/commonjava/indy/util/RequestContextHelper.java index 6d4f622bc9..28e10d4e6f 100644 --- a/api/src/main/java/org/commonjava/indy/util/RequestContextHelper.java +++ b/api/src/main/java/org/commonjava/indy/util/RequestContextHelper.java @@ -16,7 +16,6 @@ package org.commonjava.indy.util; import org.commonjava.cdi.util.weft.ThreadContext; -import org.commonjava.o11yphant.trace.TraceManager; import java.lang.annotation.Retention; import java.lang.annotation.Target; @@ -24,7 +23,6 @@ import static java.lang.annotation.ElementType.FIELD; import static java.lang.annotation.RetentionPolicy.SOURCE; import static org.commonjava.indy.IndyRequestConstants.HEADER_COMPONENT_ID; -import static org.commonjava.o11yphant.trace.TraceManager.addFieldToActiveSpan; /** * The scope annotations (Thread, Header, MDC) tell where the constant is available/used. The static methods are used @@ -36,7 +34,6 @@ public static void setContext( final String key, final Object value ) { org.slf4j.MDC.put( key, String.valueOf( value ) ); ThreadContext.getContext( true ).computeIfAbsent( key, k -> value ); - addFieldToActiveSpan( key, value ); } public static T getContext( final String key ) diff --git a/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/ContentAccessHandler.java b/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/ContentAccessHandler.java index 02404d4484..1e3babfdc7 100644 --- a/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/ContentAccessHandler.java +++ b/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/ContentAccessHandler.java @@ -26,8 +26,6 @@ import org.commonjava.indy.core.bind.jaxrs.util.TransferCountingInputStream; import org.commonjava.indy.core.bind.jaxrs.util.TransferStreamingOutput; import org.commonjava.indy.core.ctl.ContentController; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; -import org.commonjava.indy.subsys.metrics.conf.IndyMetricsConfig; import org.commonjava.indy.model.core.BatchDeleteRequest; import org.commonjava.indy.model.core.PackageTypes; import org.commonjava.indy.model.core.StoreKey; @@ -91,12 +89,6 @@ public class ContentAccessHandler @Inject protected JaxRsRequestHelper jaxRsRequestHelper; - @Inject - protected DefaultMetricsManager metricsManager; - - @Inject - protected IndyMetricsConfig metricsConfig; - @Inject protected SpecialPathManager specialPathManager; @@ -144,7 +136,7 @@ public Response doCreate( final String packageType, final String type, final Str try { TransferCountingInputStream streamingInputStream = - new TransferCountingInputStream( request.getInputStream(), metricsManager, metricsConfig ); + new TransferCountingInputStream( request.getInputStream() ); transfer = contentController.store( sk, path, streamingInputStream, eventMetadata ); @@ -519,7 +511,7 @@ else if ( item.isDirectory() ) // open the stream here to prevent deletion while waiting for the transfer back to the user to start... InputStream in = item.openInputStream( true, eventMetadata ); final ResponseBuilder builder = Response.ok( - new TransferStreamingOutput( in, metricsManager, metricsConfig ) ); + new TransferStreamingOutput( in ) ); responseHelper.setInfoHeaders( builder, item, sk, path, true, contentController.getContentType( path ), contentController.getHttpMetadata( item ) ); diff --git a/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/util/TransferCountingInputStream.java b/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/util/TransferCountingInputStream.java index 7447908a75..6f350c692b 100644 --- a/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/util/TransferCountingInputStream.java +++ b/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/util/TransferCountingInputStream.java @@ -16,9 +16,6 @@ package org.commonjava.indy.core.bind.jaxrs.util; import org.apache.commons.io.input.CountingInputStream; -import org.commonjava.o11yphant.metrics.api.Meter; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; -import org.commonjava.indy.subsys.metrics.conf.IndyMetricsConfig; import org.commonjava.maven.galley.util.IdempotentCloseInputStream; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -26,59 +23,27 @@ import java.io.IOException; import java.io.InputStream; -import static org.commonjava.indy.IndyContentConstants.NANOS_PER_SEC; -import static org.commonjava.o11yphant.metrics.MetricsConstants.METER; -import static org.commonjava.o11yphant.metrics.util.NameUtils.getDefaultName; -import static org.commonjava.o11yphant.metrics.util.NameUtils.getName; - public class TransferCountingInputStream extends IdempotentCloseInputStream { - private static final String TRANSFER_UPLOAD_METRIC_NAME = "indy.transferred.content.upload"; - - private DefaultMetricsManager metricsManager; - - private IndyMetricsConfig metricsConfig; - private long size; - protected TransferCountingInputStream( final InputStream stream ) + public TransferCountingInputStream( final InputStream stream ) { super( new CountingInputStream( stream ) ); } - public TransferCountingInputStream( final InputStream stream, final DefaultMetricsManager metricsManager, - final IndyMetricsConfig metricsConfig ) - { - this( stream ); - this.metricsManager = metricsManager; - this.metricsConfig = metricsConfig; - } - @Override public void close() throws IOException { - long start = System.nanoTime(); try { CountingInputStream stream = (CountingInputStream) this.in; Logger logger = LoggerFactory.getLogger( getClass() ); size = stream.getByteCount(); logger.trace( "Reads: {} bytes", size ); - - if ( metricsConfig != null && metricsManager != null ) - { - String name = getName( metricsConfig.getNodePrefix(), TRANSFER_UPLOAD_METRIC_NAME, - getDefaultName( TransferCountingInputStream.class, "read" ), METER ); - - long end = System.nanoTime(); - double elapsed = (end-start)/NANOS_PER_SEC; - - Meter meter = metricsManager.getMeter( name ); - meter.mark( Math.round( stream.getByteCount() / elapsed ) ); - } } finally { diff --git a/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/util/TransferStreamingOutput.java b/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/util/TransferStreamingOutput.java index ecc28839f0..29517d6f8a 100644 --- a/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/util/TransferStreamingOutput.java +++ b/bindings/jaxrs/src/main/java/org/commonjava/indy/core/bind/jaxrs/util/TransferStreamingOutput.java @@ -17,10 +17,6 @@ import org.apache.commons.io.IOUtils; import org.apache.commons.io.output.CountingOutputStream; -import org.commonjava.o11yphant.metrics.annotation.Measure; -import org.commonjava.o11yphant.metrics.api.Meter; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; -import org.commonjava.indy.subsys.metrics.conf.IndyMetricsConfig; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -30,37 +26,21 @@ import java.io.InputStream; import java.io.OutputStream; -import static org.commonjava.indy.IndyContentConstants.NANOS_PER_SEC; -import static org.commonjava.o11yphant.metrics.MetricsConstants.METER; -import static org.commonjava.o11yphant.metrics.util.NameUtils.getDefaultName; -import static org.commonjava.o11yphant.metrics.util.NameUtils.getName; - public class TransferStreamingOutput implements StreamingOutput { - private static final String TRANSFER_METRIC_NAME = "indy.transferred.content"; - private InputStream stream; - private DefaultMetricsManager metricsManager; - - private IndyMetricsConfig metricsConfig; - - public TransferStreamingOutput( final InputStream stream, final DefaultMetricsManager metricsManager, - final IndyMetricsConfig metricsConfig ) + public TransferStreamingOutput( final InputStream stream ) { this.stream = stream; - this.metricsManager = metricsManager; - this.metricsConfig = metricsConfig; } @Override - @Measure public void write( final OutputStream out ) throws IOException, WebApplicationException { - long start = System.nanoTime(); try { CountingOutputStream cout = new CountingOutputStream( out ); @@ -68,15 +48,6 @@ public void write( final OutputStream out ) Logger logger = LoggerFactory.getLogger( getClass() ); logger.trace( "Wrote: {} bytes", cout.getByteCount() ); - - String name = getName( metricsConfig.getNodePrefix(), TRANSFER_METRIC_NAME, - getDefaultName( TransferStreamingOutput.class, "write" ), METER ); - - long end = System.nanoTime(); - double elapsed = (end-start)/NANOS_PER_SEC; - - Meter meter = metricsManager.getMeter( name ); - meter.mark( Math.round( cout.getByteCount() / elapsed ) ); } finally { diff --git a/bindings/jaxrs/src/test/java/org/commonjava/indy/core/bind/jaxrs/util/TransferInputStreamTest.java b/bindings/jaxrs/src/test/java/org/commonjava/indy/core/bind/jaxrs/util/TransferInputStreamTest.java index 20444531e8..6774e79ae8 100644 --- a/bindings/jaxrs/src/test/java/org/commonjava/indy/core/bind/jaxrs/util/TransferInputStreamTest.java +++ b/bindings/jaxrs/src/test/java/org/commonjava/indy/core/bind/jaxrs/util/TransferInputStreamTest.java @@ -32,7 +32,7 @@ public void testSingleRead() throws IOException { ByteArrayInputStream bStream = new ByteArrayInputStream( testString.getBytes() ); - TransferCountingInputStream tStream = new TransferCountingInputStream( bStream, null, null ); + TransferCountingInputStream tStream = new TransferCountingInputStream( bStream ); tStream.read(); tStream.close(); @@ -44,7 +44,7 @@ public void testFixedRead1() throws IOException { ByteArrayInputStream bStream = new ByteArrayInputStream( testString.getBytes() ); - TransferCountingInputStream tStream = new TransferCountingInputStream( bStream, null, null ); + TransferCountingInputStream tStream = new TransferCountingInputStream( bStream ); byte[] b = new byte[5]; tStream.read( b ); tStream.close(); @@ -58,7 +58,7 @@ public void testFixedRead2() throws IOException { ByteArrayInputStream bStream = new ByteArrayInputStream( testString.getBytes() ); - TransferCountingInputStream tStream = new TransferCountingInputStream( bStream, null, null ); + TransferCountingInputStream tStream = new TransferCountingInputStream( bStream ); byte[] b = new byte[8]; b[0] = b[1] = b[2] = ' '; tStream.read( b, 3, 5 ); @@ -72,7 +72,7 @@ public void testFullRead() throws IOException { ByteArrayInputStream bStream = new ByteArrayInputStream( testString.getBytes() ); - TransferCountingInputStream tStream = new TransferCountingInputStream( bStream, null, null ); + TransferCountingInputStream tStream = new TransferCountingInputStream( bStream ); byte[] b = new byte[testString.length()]; tStream.read( b ); tStream.close(); diff --git a/core/src/main/java/org/commonjava/indy/core/change/StoreContentListener.java b/core/src/main/java/org/commonjava/indy/core/change/StoreContentListener.java index 395c64e3b8..c37df3a47c 100644 --- a/core/src/main/java/org/commonjava/indy/core/change/StoreContentListener.java +++ b/core/src/main/java/org/commonjava/indy/core/change/StoreContentListener.java @@ -27,7 +27,6 @@ import org.commonjava.indy.content.StoreContentAction; import org.commonjava.indy.data.IndyDataException; import org.commonjava.indy.data.StoreDataManager; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.ArtifactStore; import org.commonjava.indy.model.core.Group; import org.commonjava.indy.model.core.StoreKey; @@ -88,7 +87,6 @@ public class StoreContentListener /** * Handles store disable/enablement. */ - @Measure public void onStoreEnablement( @Observes final ArtifactStoreEnablementEvent event ) { logger.trace( "Got store-enablement event: {}", event ); @@ -99,7 +97,6 @@ public void onStoreEnablement( @Observes final ArtifactStoreEnablementEvent even } } - @Measure public void onStoreDeletion( @Observes final ArtifactStoreDeletePreEvent event ) { logger.trace( "Got store-delete event: {}", event ); @@ -107,7 +104,6 @@ public void onStoreDeletion( @Observes final ArtifactStoreDeletePreEvent event ) clearPaths( keys, allPath(), true ); } - @Measure public void onStoreUpdate( @Observes final ArtifactStorePreUpdateEvent event ) { logger.trace( "Got store-update event: {}", event ); diff --git a/core/src/main/java/org/commonjava/indy/core/change/StoreEnablementManager.java b/core/src/main/java/org/commonjava/indy/core/change/StoreEnablementManager.java index dbabbf0cfe..61923e82b1 100644 --- a/core/src/main/java/org/commonjava/indy/core/change/StoreEnablementManager.java +++ b/core/src/main/java/org/commonjava/indy/core/change/StoreEnablementManager.java @@ -28,7 +28,6 @@ import org.commonjava.indy.core.expire.SchedulerTriggerEvent; import org.commonjava.indy.data.IndyDataException; import org.commonjava.indy.data.StoreDataManager; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.ArtifactStore; import org.commonjava.indy.model.core.StoreKey; import org.commonjava.indy.model.core.io.IndyObjectMapper; @@ -67,7 +66,6 @@ public class StoreEnablementManager @Inject private InternalFeatureConfig internalFeatureConfig; - @Measure public void onStoreEnablementChange( @Observes ArtifactStoreEnablementEvent event ) { } @@ -76,7 +74,6 @@ public void onStoreUpdate( @Observes ArtifactStorePostUpdateEvent event ) { } - @Measure public void onStoreError( @Observes IndyStoreErrorEvent evt ) { Logger logger = LoggerFactory.getLogger( getClass() ); @@ -130,7 +127,6 @@ public void onStoreError( @Observes IndyStoreErrorEvent evt ) } } - @Measure public void onDisableTimeout( @Observes SchedulerEvent evt ) { Logger logger = LoggerFactory.getLogger( getClass() ); @@ -143,7 +139,6 @@ public void onDisableTimeout( @Observes SchedulerEvent evt ) } } - @Measure public void onDisableTimeout( @Observes ScheduleTriggerEvent evt ) { Logger logger = LoggerFactory.getLogger( getClass() ); diff --git a/core/src/main/java/org/commonjava/indy/core/change/event/DefaultStoreEventDispatcher.java b/core/src/main/java/org/commonjava/indy/core/change/event/DefaultStoreEventDispatcher.java index 0f6d9a3908..20d17814da 100644 --- a/core/src/main/java/org/commonjava/indy/core/change/event/DefaultStoreEventDispatcher.java +++ b/core/src/main/java/org/commonjava/indy/core/change/event/DefaultStoreEventDispatcher.java @@ -72,13 +72,6 @@ public class DefaultStoreEventDispatcher @Inject private Event enablementEvent; - //TODO: we found a bug of weft with o11yphant TraceManager, which could cause ConcurrentModificationException. - // Before fixing it here will use a JUC ExecutorService instead. - // The exception is something like: - // java.util.ConcurrentModificationException - // at java.base/java.util.HashMap.forEach(HashMap.java:1339) - // at java.base/java.util.Collections$UnmodifiableMap.forEach(Collections.java:1505) - // at org.commonjava.o11yphant.trace.TraceManager.lambda$startThreadRootSpan$1(TraceManager.java:117) private final ExecutorService executor = Executors.newFixedThreadPool( CoreEventManagerConstants.DISPATCH_EXECUTOR_THREADS, new NamedThreadFactory( diff --git a/core/src/main/java/org/commonjava/indy/core/content/AbstractMergedContentGenerator.java b/core/src/main/java/org/commonjava/indy/core/content/AbstractMergedContentGenerator.java index d415a8bad6..213f1da649 100644 --- a/core/src/main/java/org/commonjava/indy/core/content/AbstractMergedContentGenerator.java +++ b/core/src/main/java/org/commonjava/indy/core/content/AbstractMergedContentGenerator.java @@ -33,7 +33,6 @@ import org.commonjava.indy.core.content.group.GroupMergeHelper; import org.commonjava.indy.data.IndyDataException; import org.commonjava.indy.data.StoreDataManager; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.ArtifactStore; import org.commonjava.indy.model.core.Group; import org.commonjava.indy.model.core.StoreType; @@ -111,7 +110,6 @@ public void handleContentStorage( final ArtifactStore store, final String path, protected abstract String getMergedMetadataName(); - @Measure protected void clearAllMerged( final ArtifactStore store, final String... paths ) { final Set groups = new HashSet<>(); diff --git a/core/src/main/java/org/commonjava/indy/core/content/ContentGeneratorManager.java b/core/src/main/java/org/commonjava/indy/core/content/ContentGeneratorManager.java index 85f43395d6..36b11ddb8f 100644 --- a/core/src/main/java/org/commonjava/indy/core/content/ContentGeneratorManager.java +++ b/core/src/main/java/org/commonjava/indy/core/content/ContentGeneratorManager.java @@ -18,7 +18,6 @@ import org.commonjava.indy.IndyWorkflowException; import org.commonjava.indy.content.ContentGenerator; import org.commonjava.indy.content.StoreResource; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.ArtifactStore; import org.commonjava.indy.model.core.Group; import org.commonjava.indy.util.LocationUtils; @@ -68,7 +67,6 @@ public void initialize() } } - @Measure public Transfer generateFileContentAnd( final ArtifactStore store, final String path, final EventMetadata eventMetadata, Consumer consumer ) throws IndyWorkflowException @@ -87,7 +85,6 @@ public Transfer generateFileContentAnd( final ArtifactStore store, final String return item; } - @Measure public Transfer generateGroupFileContent( Group group, List members, String path, EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -111,7 +108,6 @@ public Transfer generateGroupFileContent( Group group, List membe return item; } - @Measure public void generateGroupFileContentAnd( Group group, List members, String path, EventMetadata eventMetadata, Consumer consumer ) throws IndyWorkflowException @@ -126,7 +122,6 @@ public void generateGroupFileContentAnd( Group group, List member } } - @Measure public void handleContentStorage( ArtifactStore transferStore, String path, Transfer txfr, EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -137,7 +132,6 @@ public void handleContentStorage( ArtifactStore transferStore, String path, Tran } } - @Measure public void handleContentDeletion( ArtifactStore member, String path, EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -147,7 +141,6 @@ public void handleContentDeletion( ArtifactStore member, String path, EventMetad } } - @Measure public void generateGroupDirectoryContentAnd( Group group, List members, String path, EventMetadata eventMetadata, Consumer> consumer ) throws IndyWorkflowException @@ -163,7 +156,6 @@ public void generateGroupDirectoryContentAnd( Group group, List m } } - @Measure public void generateDirectoryContentAnd( ArtifactStore store, String path, List listed, EventMetadata metadata, Consumer> consumer ) throws IndyWorkflowException diff --git a/core/src/main/java/org/commonjava/indy/core/content/DefaultContentManager.java b/core/src/main/java/org/commonjava/indy/core/content/DefaultContentManager.java index 529fa2f419..e6334de53e 100644 --- a/core/src/main/java/org/commonjava/indy/core/content/DefaultContentManager.java +++ b/core/src/main/java/org/commonjava/indy/core/content/DefaultContentManager.java @@ -27,7 +27,6 @@ import org.commonjava.indy.data.IndyDataException; import org.commonjava.indy.data.StoreDataManager; import org.commonjava.indy.model.core.StoreType; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.ArtifactStore; import org.commonjava.indy.model.core.Group; import org.commonjava.indy.model.core.StoreKey; @@ -123,7 +122,6 @@ public Transfer retrieveFirst( final List stores, final } @Override - @Measure public Transfer retrieveFirst( final List stores, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException @@ -149,7 +147,6 @@ public List retrieveAll( final List stores, f } @Override - @Measure public List retrieveAll( final List stores, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException @@ -204,7 +201,6 @@ public Transfer retrieve( final ArtifactStore store, final String path ) } @Override - @Measure public Transfer retrieve( final ArtifactStore store, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -338,7 +334,6 @@ public Transfer store( final ArtifactStore store, final String path, final Input } @Override - @Measure public Transfer store( final ArtifactStore store, final String path, final InputStream stream, final TransferOperation op, final EventMetadata eventMetadata ) throws IndyWorkflowException @@ -391,7 +386,6 @@ public Transfer store( final ArtifactStore store, final String path, final Input return txfr; } - @Measure protected void clearNFCEntries( final KeyedLocation kl, final String path, EventMetadata eventMetadata ) { try @@ -411,7 +405,6 @@ protected void clearNFCEntries( final KeyedLocation kl, final String path, Event } @Override - @Measure public Transfer store( final List stores, final StoreKey topKey, final String path, final InputStream stream, final TransferOperation op, final EventMetadata eventMetadata ) throws IndyWorkflowException @@ -453,7 +446,6 @@ public boolean delete( final ArtifactStore store, final String path ) } @Override - @Measure public boolean delete( final ArtifactStore store, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -561,7 +553,6 @@ public List list( final ArtifactStore store, final String path ) } @Override - @Measure public List list( final ArtifactStore store, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -622,7 +613,6 @@ else if ( eventMetadata.get( TransferManager.ALLOW_REMOTE_LISTING_DOWNLOAD ) == } @Override - @Measure public List list( final List stores, final String path ) throws IndyWorkflowException { @@ -704,7 +694,6 @@ public Transfer getTransfer( final List stores, final String path } @Override - @Measure public HttpExchangeMetadata getHttpMetadata( final Transfer txfr ) throws IndyWorkflowException { @@ -713,7 +702,6 @@ public HttpExchangeMetadata getHttpMetadata( final Transfer txfr ) } @Override - @Measure public HttpExchangeMetadata getHttpMetadata( final StoreKey key, final String path ) throws IndyWorkflowException { @@ -731,7 +719,6 @@ public HttpExchangeMetadata getHttpMetadata( final StoreKey key, final String pa } @Override - @Measure // TODO: to add content generation handling here, for things like merged metadata, checksum files, etc. public boolean exists(ArtifactStore store, String path) throws IndyWorkflowException diff --git a/core/src/main/java/org/commonjava/indy/core/content/DefaultDirectContentAccess.java b/core/src/main/java/org/commonjava/indy/core/content/DefaultDirectContentAccess.java index 65ed84627f..e1576ce0a4 100644 --- a/core/src/main/java/org/commonjava/indy/core/content/DefaultDirectContentAccess.java +++ b/core/src/main/java/org/commonjava/indy/core/content/DefaultDirectContentAccess.java @@ -23,7 +23,6 @@ import org.commonjava.indy.content.DirectContentAccess; import org.commonjava.indy.content.DownloadManager; import org.commonjava.indy.content.StoreResource; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.ArtifactStore; import org.commonjava.indy.model.core.StoreKey; import org.commonjava.maven.galley.event.EventMetadata; @@ -43,8 +42,6 @@ import static org.commonjava.indy.model.core.StoreType.remote; import static org.commonjava.indy.pkg.npm.model.NPMPackageTypeDescriptor.NPM_METADATA_NAME; import static org.commonjava.indy.pkg.npm.model.NPMPackageTypeDescriptor.NPM_PKG_KEY; -import static org.commonjava.o11yphant.trace.TraceManager.addFieldToActiveSpan; - /** * Created by jdcasey on 5/2/16. */ @@ -84,9 +81,7 @@ public List retrieveAllRaw( final List stores logger.trace( "Requesting retrieval of {} in {}", path, store ); Future future = contentAccessService.submit( () -> { - addFieldToActiveSpan( "storekey", store.getKey().toString() ); - addFieldToActiveSpan( "path", path ); - addFieldToActiveSpan( "activity", "retrieveAllRaw" ); + logger.trace( "Retrieving {} in {}", path, store ); Transfer txfr = retrieveRaw( store, path, eventMetadata ); @@ -128,7 +123,6 @@ public List retrieveAllRaw( final List stores } @Override - @Measure public Transfer retrieveRaw( final ArtifactStore store, String path, final EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -225,9 +219,7 @@ public Map> listRaw( ArtifactStore store, { logger.trace( "Requesting listing of {} in {}", path, store ); svc.submit( ()->{ - addFieldToActiveSpan( "storekey", store.getKey().toString() ); - addFieldToActiveSpan( "path", path ); - addFieldToActiveSpan( "activity", "listRaw" ); + logger.trace( "Starting listing of {} in {}", path, store ); List listRaw = listRaw( store, path, eventMetadata ); diff --git a/core/src/main/java/org/commonjava/indy/core/content/DefaultDownloadManager.java b/core/src/main/java/org/commonjava/indy/core/content/DefaultDownloadManager.java index 6d759e5c7d..f1c193f785 100644 --- a/core/src/main/java/org/commonjava/indy/core/content/DefaultDownloadManager.java +++ b/core/src/main/java/org/commonjava/indy/core/content/DefaultDownloadManager.java @@ -28,7 +28,6 @@ import org.commonjava.indy.core.change.event.IndyFileEventManager; import org.commonjava.indy.data.IndyDataException; import org.commonjava.indy.data.StoreDataManager; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.ArtifactStore; import org.commonjava.indy.model.core.HostedRepository; import org.commonjava.indy.model.core.RemoteRepository; @@ -167,7 +166,6 @@ public List list( final ArtifactStore store, final String path ) } @Override - @Measure public List list( final ArtifactStore store, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -320,7 +318,6 @@ public List list( final List stores, fin } @Override - @Measure public List list( final List stores, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -376,7 +373,6 @@ public Transfer retrieveFirst( final List stores, final } @Override - @Measure public Transfer retrieveFirst( final List stores, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException @@ -428,7 +424,6 @@ public List retrieveAll( final List stores, f * @see org.commonjava.indy.core.rest.util.FileManager#downloadAll(java.util.List, java.lang.String) */ @Override - @Measure public List retrieveAll( final List stores, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException @@ -467,7 +462,6 @@ public Transfer retrieve( final ArtifactStore store, final String path ) * java.lang.String) */ @Override - @Measure public Transfer retrieve( final ArtifactStore store, final String path, final EventMetadata eventMetadata ) throws IndyWorkflowException { @@ -534,7 +528,6 @@ private Transfer retrieve( final ArtifactStore store, final String path, final b } @Override - @Measure public boolean exists(final ArtifactStore store, String path) throws IndyWorkflowException { @@ -583,7 +576,6 @@ public Transfer store( final ArtifactStore store, final String path, final Input * java.lang.String, java.io.InputStream) */ @Override - @Measure public Transfer store( final ArtifactStore store, final String path, final InputStream stream, final TransferOperation op, final EventMetadata eventMetadata ) throws IndyWorkflowException @@ -926,7 +918,6 @@ public Transfer getStorageReference( final ArtifactStore store, final String pat } @Override - @Measure public Transfer getStorageReference( final ArtifactStore store, final String... path ) { Logger logger = LoggerFactory.getLogger( getClass() ); @@ -937,7 +928,6 @@ public Transfer getStorageReference( final ArtifactStore store, final String... } @Override - @Measure public Transfer getStorageReference( final StoreKey key, final String... path ) throws IndyWorkflowException { @@ -1187,7 +1177,6 @@ private void doRescan( final Transfer item ) } @Override - @Measure public List listRecursively( final StoreKey src, final String startPath ) throws IndyWorkflowException { diff --git a/core/src/main/java/org/commonjava/indy/core/ctl/ContentController.java b/core/src/main/java/org/commonjava/indy/core/ctl/ContentController.java index 1ee22a28a4..f5be70959a 100644 --- a/core/src/main/java/org/commonjava/indy/core/ctl/ContentController.java +++ b/core/src/main/java/org/commonjava/indy/core/ctl/ContentController.java @@ -23,7 +23,6 @@ import org.commonjava.indy.content.StoreResource; import org.commonjava.indy.data.IndyDataException; import org.commonjava.indy.data.StoreDataManager; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.ArtifactStore; import org.commonjava.indy.model.core.StoreKey; import org.commonjava.indy.model.core.StoreType; @@ -185,7 +184,6 @@ public Transfer store( final StoreKey key, final String path, final InputStream return store( key, path, stream, new EventMetadata() ); } - @Measure public Transfer store( final StoreKey key, final String path, final InputStream stream, final EventMetadata eventMetadata ) throws IndyWorkflowException diff --git a/core/src/main/java/org/commonjava/indy/core/inject/CassandraNotFoundCache.java b/core/src/main/java/org/commonjava/indy/core/inject/CassandraNotFoundCache.java index b2558df0f8..8ff42b19a8 100644 --- a/core/src/main/java/org/commonjava/indy/core/inject/CassandraNotFoundCache.java +++ b/core/src/main/java/org/commonjava/indy/core/inject/CassandraNotFoundCache.java @@ -22,7 +22,6 @@ import com.datastax.driver.core.Session; import com.datastax.driver.core.exceptions.NoHostAvailableException; import org.commonjava.indy.conf.IndyConfiguration; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.StoreKey; import org.commonjava.indy.model.galley.KeyedLocation; import org.commonjava.indy.subsys.cassandra.CassandraClient; @@ -154,7 +153,6 @@ protected IndyConfiguration getIndyConfiguration() } @Override - @Measure public void addMissing( final ConcreteResource resource ) { if (isCacheDisabled(resource)) @@ -183,7 +181,6 @@ public void addMissing( final ConcreteResource resource ) } @Override - @Measure public boolean isMissing( final ConcreteResource resource ) { if ( inMemoryCache.get( resource ) != null ) @@ -213,7 +210,6 @@ public boolean isMissing( final ConcreteResource resource ) } @Override - @Measure public void clearMissing( final Location location ) { StoreKey key = ( (KeyedLocation) location ).getKey(); @@ -242,7 +238,6 @@ private void clearInMemoryCache() } @Override - @Measure public void clearMissing( final ConcreteResource resource ) { StoreKey key = getResourceKey( resource ); @@ -252,7 +247,6 @@ public void clearMissing( final ConcreteResource resource ) } @Override - @Measure public void clearAllMissing() { session.execute( "TRUNCATE " + keyspace + ".nfc;" ); @@ -260,14 +254,12 @@ public void clearAllMissing() } @Override - @Measure public Map> getAllMissing() { return Collections.emptyMap(); // not support } @Override - @Measure public Set getMissing( final Location location ) { logger.debug( "[NFC] getMissing for {}", location ); @@ -291,7 +283,6 @@ public Set getMissing( final Location location ) } @Override - @Measure public Map> getAllMissing( int pageIndex, int pageSize ) { return getAllMissing(); @@ -305,14 +296,12 @@ public Map> getAllMissing( int pageIndex, int pageSize ) * @return */ @Override - @Measure public Set getMissing( Location location, int pageIndex, int pageSize ) { return getMissing( location ); } @Override - @Measure public long getSize( StoreKey storeKey ) { BoundStatement bound = preparedCountByStore.bind( storeKey.toString() ); @@ -321,7 +310,6 @@ public long getSize( StoreKey storeKey ) } @Override - @Measure public long getSize() { return 0; // not support diff --git a/core/src/main/java/org/commonjava/indy/core/inject/IspnNotFoundCache.java b/core/src/main/java/org/commonjava/indy/core/inject/IspnNotFoundCache.java index c597ce3433..2adeba8fa6 100644 --- a/core/src/main/java/org/commonjava/indy/core/inject/IspnNotFoundCache.java +++ b/core/src/main/java/org/commonjava/indy/core/inject/IspnNotFoundCache.java @@ -17,7 +17,6 @@ import org.commonjava.indy.conf.IndyConfiguration; import org.commonjava.indy.subsys.infinispan.BasicCacheHandle; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.indy.model.core.StoreKey; import org.commonjava.indy.model.galley.KeyedLocation; import org.commonjava.maven.galley.model.ConcreteResource; @@ -103,7 +102,6 @@ protected IndyConfiguration getIndyConfiguration() } @Override - @Measure public void addMissing( final ConcreteResource resource ) { if (isCacheDisabled(resource)) @@ -145,7 +143,6 @@ private void addMissing( final ConcreteResource resource, final boolean withTime } @Override - @Measure public boolean isMissing( final ConcreteResource resource ) { String key = getResourceKey( resource ); @@ -161,7 +158,6 @@ public boolean isMissing( final ConcreteResource resource ) } @Override - @Measure public void clearMissing( final Location location ) { nfcCache.execute( (cache) -> { @@ -172,7 +168,6 @@ public void clearMissing( final Location location ) } @Override - @Measure public void clearMissing( final ConcreteResource resource ) { String key = getResourceKey( resource ); @@ -180,14 +175,12 @@ public void clearMissing( final ConcreteResource resource ) } @Override - @Measure public void clearAllMissing() { nfcCache.execute( (cache) -> { cache.clear(); return null; } ); } @Override - @Measure public Map> getAllMissing() { logger.debug( "[NFC] getAllMissing start" ); @@ -211,7 +204,6 @@ public Map> getAllMissing() } @Override - @Measure public Set getMissing( final Location location ) { logger.debug( "[NFC] getMissing for {} start", location ); @@ -232,7 +224,6 @@ public Set getMissing( final Location location ) } @Override - @Measure public Map> getAllMissing( int pageIndex, int pageSize ) { logger.debug( "[NFC] getAllMissing start, pageIndex: {}, pageSize: {}", pageIndex, pageSize ); @@ -269,7 +260,6 @@ public Map> getAllMissing( int pageIndex, int pageSize ) * @return */ @Override - @Measure public Set getMissing( Location location, int pageIndex, int pageSize ) { logger.debug( "[NFC] getMissing for {} start, pageIndex: {}, pageSize: {}", location, pageIndex, pageSize ); @@ -295,7 +285,6 @@ public Set getMissing( Location location, int pageIndex, int pageSize ) } @Override - @Measure public long getSize( StoreKey storeKey ) { Query query = queryFactory.from( NfcConcreteResourceWrapper.class ) @@ -311,7 +300,6 @@ public long getSize( StoreKey storeKey ) } @Override - @Measure public long getSize() { return nfcCache.execute( (cache) -> new Long( cache.size() ) ); diff --git a/core/src/main/java/org/commonjava/indy/core/inject/NFCMetricsDecorator.java b/core/src/main/java/org/commonjava/indy/core/inject/NFCMetricsDecorator.java index 2d37fdc14a..c412183338 100644 --- a/core/src/main/java/org/commonjava/indy/core/inject/NFCMetricsDecorator.java +++ b/core/src/main/java/org/commonjava/indy/core/inject/NFCMetricsDecorator.java @@ -15,7 +15,6 @@ */ package org.commonjava.indy.core.inject; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.commonjava.maven.galley.model.ConcreteResource; import org.commonjava.maven.galley.model.Location; import org.commonjava.maven.galley.spi.nfc.NotFoundCache; @@ -36,49 +35,42 @@ public abstract class NFCMetricsDecorator @Inject private NotFoundCache delegate; - @Measure @Override public void addMissing( final ConcreteResource resource ) { delegate.addMissing( resource ); } - @Measure @Override public boolean isMissing( final ConcreteResource resource ) { return delegate.isMissing( resource ); } - @Measure @Override public void clearMissing( final Location location ) { delegate.clearMissing( location ); } - @Measure @Override public void clearMissing( final ConcreteResource resource ) { delegate.clearMissing( resource ); } - @Measure @Override public void clearAllMissing() { delegate.clearAllMissing(); } - @Measure @Override public Map> getAllMissing() { return delegate.getAllMissing(); } - @Measure @Override public Set getMissing( final Location location ) { diff --git a/core/src/main/java/org/commonjava/indy/data/DefaultStoreValidator.java b/core/src/main/java/org/commonjava/indy/data/DefaultStoreValidator.java index a65d12b126..9d7b13de9c 100644 --- a/core/src/main/java/org/commonjava/indy/data/DefaultStoreValidator.java +++ b/core/src/main/java/org/commonjava/indy/data/DefaultStoreValidator.java @@ -39,8 +39,6 @@ import java.util.concurrent.*; import java.util.stream.Collectors; -import static org.commonjava.o11yphant.trace.TraceManager.addFieldToActiveSpan; - public class DefaultStoreValidator implements StoreValidator { private static final Logger LOGGER = LoggerFactory.getLogger(DefaultStoreValidator.class); @@ -158,9 +156,6 @@ private boolean allowedNonSSLHostname(String allowedHost, String remoteHost) { private Future executeGetHttp(HttpGet httpGetTask , CountDownLatch countDownLatch) { countDownLatch.countDown(); return executorService.submit(() -> { - addFieldToActiveSpan( "http-target", httpGetTask.getURI().toASCIIString() ); - addFieldToActiveSpan( "activity", "executeGetHttp" ); - CloseableHttpClient closeableHttpClient = HttpClientBuilder.create().build(); try (CloseableHttpResponse response = closeableHttpClient.execute(httpGetTask)) { @@ -179,9 +174,6 @@ private Future executeGetHttp(HttpGet httpGetTask , CountDownLatch coun private Future executeHeadHttp(HttpHead httpHeadTask , CountDownLatch countDownLatch) { countDownLatch.countDown(); return executorService.submit(() -> { - addFieldToActiveSpan( "http-target", httpHeadTask.getURI().toASCIIString() ); - addFieldToActiveSpan( "activity", "executeHeadHttp" ); - CloseableHttpClient closeableHttpClient = HttpClientBuilder.create().build(); try (CloseableHttpResponse response = closeableHttpClient.execute(httpHeadTask)) { LOGGER.warn("=> Check HTTP HEAD Response code: " + response.getStatusLine().getStatusCode()); diff --git a/core/src/test/java/org/commonjava/indy/core/content/DefaultDownloadManagerTest.java b/core/src/test/java/org/commonjava/indy/core/content/DefaultDownloadManagerTest.java index 0dd1fb0a17..17be4873e2 100644 --- a/core/src/test/java/org/commonjava/indy/core/content/DefaultDownloadManagerTest.java +++ b/core/src/test/java/org/commonjava/indy/core/content/DefaultDownloadManagerTest.java @@ -114,12 +114,12 @@ public void setup() final ExpiringMemoryNotFoundCache nfc = new ExpiringMemoryNotFoundCache( config ); WeftExecutorService rescanService = - new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false,null, null ); + new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); downloadManager = new DefaultDownloadManager( storeManager, core.getTransferManager(), locationExpander,null, nfc, rescanService); WeftExecutorService contentAccessService = - new PoolWeftExecutorService( "test-content-access-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false,null, null ); + new PoolWeftExecutorService( "test-content-access-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); DirectContentAccess dca = new DefaultDirectContentAccess( downloadManager, contentAccessService ); diff --git a/core/src/test/java/org/commonjava/indy/core/ctl/ContentControllerTest.java b/core/src/test/java/org/commonjava/indy/core/ctl/ContentControllerTest.java index 53ae198186..6db6da1f29 100644 --- a/core/src/test/java/org/commonjava/indy/core/ctl/ContentControllerTest.java +++ b/core/src/test/java/org/commonjava/indy/core/ctl/ContentControllerTest.java @@ -98,13 +98,13 @@ public void setup() final StoreDataManager storeManager = new MemoryStoreDataManager( true ); WeftExecutorService rescanService = - new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false, null, null ); + new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); final DownloadManager fileManager = new DefaultDownloadManager( storeManager, fixture.getTransferManager(), fixture.getLocationExpander(), rescanService ); WeftExecutorService contentAccessService = - new PoolWeftExecutorService( "test-content-access-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false,null, null ); + new PoolWeftExecutorService( "test-content-access-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); final DirectContentAccess dca = new DefaultDirectContentAccess( fileManager, contentAccessService ); diff --git a/core/src/test/java/org/commonjava/indy/fixture/MockTestProvider.java b/core/src/test/java/org/commonjava/indy/fixture/MockTestProvider.java index 821be057fe..9b21a9fbec 100644 --- a/core/src/test/java/org/commonjava/indy/fixture/MockTestProvider.java +++ b/core/src/test/java/org/commonjava/indy/fixture/MockTestProvider.java @@ -25,11 +25,6 @@ import org.commonjava.maven.galley.maven.spi.defaults.MavenPluginDefaults; import org.commonjava.maven.galley.maven.spi.defaults.MavenPluginImplications; import org.commonjava.maven.galley.transport.htcli.conf.GlobalHttpConfiguration; -import org.commonjava.o11yphant.metrics.TrafficClassifier; -import org.commonjava.o11yphant.metrics.sli.GoldenSignalsMetricSet; -import org.commonjava.o11yphant.trace.TracerConfiguration; - -import javax.annotation.PostConstruct; import javax.enterprise.context.ApplicationScoped; import javax.enterprise.inject.Alternative; import javax.enterprise.inject.Default; @@ -88,24 +83,6 @@ public WeftConfig getWeftConfig() return new DefaultWeftConfig(); } - @Produces - public TracerConfiguration getTracerConfiguration() - { - return null; - } - - @Produces - public GoldenSignalsMetricSet getGoldenSignalsMetricSet() - { - return null; - } - - @Produces - public TrafficClassifier getTrafficClassifier() - { - return null; - } - @Produces @Standalone @Default diff --git a/core/src/test/java/org/commonjava/indy/rest/util/DownloadManagerTest.java b/core/src/test/java/org/commonjava/indy/rest/util/DownloadManagerTest.java index 2005bbdf86..1ec5e4fd58 100644 --- a/core/src/test/java/org/commonjava/indy/rest/util/DownloadManagerTest.java +++ b/core/src/test/java/org/commonjava/indy/rest/util/DownloadManagerTest.java @@ -68,7 +68,7 @@ public void setupTest() data = new MemoryStoreDataManager( true ); WeftExecutorService rescanService = - new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false, null, null ); + new PoolWeftExecutorService( "test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false); downloader = new DefaultDownloadManager( data, fixture.getTransferManager(), new IndyLocationExpander( data ), null, new NoOpNotFoundCache(), rescanService ); diff --git a/db/common/src/main/java/org/commonjava/indy/db/common/AbstractStoreDataManager.java b/db/common/src/main/java/org/commonjava/indy/db/common/AbstractStoreDataManager.java index 65c5338910..501f4f3a23 100644 --- a/db/common/src/main/java/org/commonjava/indy/db/common/AbstractStoreDataManager.java +++ b/db/common/src/main/java/org/commonjava/indy/db/common/AbstractStoreDataManager.java @@ -38,7 +38,6 @@ import org.commonjava.indy.util.ApplicationStatus; import org.commonjava.indy.util.ValuePipe; import org.commonjava.maven.galley.event.EventMetadata; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.slf4j.MDC; @@ -98,13 +97,6 @@ public abstract class AbstractStoreDataManager protected static final String AFFECTED_BY_ASYNC_RUNNER_NAME = "store-affected-by-async-runner"; - //TODO: we found a bug of weft with o11yphant TraceManager, which could cause ConcurrentModificationException. - // Before fixing it here will use a JUC ExecutorService instead. - // The exception is something like: - // java.util.ConcurrentModificationException - // at java.base/java.util.HashMap.forEach(HashMap.java:1339) - // at java.base/java.util.Collections$UnmodifiableMap.forEach(Collections.java:1505) - // at org.commonjava.o11yphant.trace.TraceManager.lambda$startThreadRootSpan$1(TraceManager.java:117) protected ExecutorService affectedByAsyncRunner = Executors.newFixedThreadPool( 32, new NamedThreadFactory( AFFECTED_BY_ASYNC_RUNNER_NAME, new ThreadGroup( AFFECTED_BY_ASYNC_RUNNER_NAME ), true, 4 ) ); @@ -121,7 +113,6 @@ public ArtifactStoreQuery query() protected abstract ArtifactStore getArtifactStoreInternal( final StoreKey key ); @Override - @Measure public ArtifactStore getArtifactStore( final StoreKey key ) throws IndyDataException { @@ -129,7 +120,6 @@ public ArtifactStore getArtifactStore( final StoreKey key ) } @Override - @Measure public boolean storeArtifactStore( final ArtifactStore store, final ChangeSummary summary, final boolean skipIfExists, final boolean fireEvents, final EventMetadata eventMetadata ) @@ -218,7 +208,6 @@ protected void postDelete( final ArtifactStore store, final ChangeSummary summar refreshAffectedBy( store, null, DELETE ); } - @Measure protected void refreshAffectedBy( final ArtifactStore store, final ArtifactStore original, StoreUpdateAction action ) { if ( store == null ) @@ -301,7 +290,6 @@ else if ( action == STORE ) protected abstract ArtifactStore removeArtifactStoreInternal( StoreKey key ); @Override - @Measure public void deleteArtifactStore( final StoreKey key, final ChangeSummary summary, final EventMetadata eventMetadata ) throws IndyDataException @@ -371,12 +359,10 @@ public abstract void clear( final ChangeSummary summary ) throws IndyDataException; @Override - @Measure public abstract Set getAllArtifactStores() throws IndyDataException; @Override - @Measure public Stream streamArtifactStores() throws IndyDataException { @@ -384,7 +370,6 @@ public Stream streamArtifactStores() } @Override - @Measure public abstract Map getArtifactStoresByKey(); @Override diff --git a/db/common/src/main/java/org/commonjava/indy/db/common/DefaultArtifactStoreQuery.java b/db/common/src/main/java/org/commonjava/indy/db/common/DefaultArtifactStoreQuery.java index b939b11041..1708b63461 100644 --- a/db/common/src/main/java/org/commonjava/indy/db/common/DefaultArtifactStoreQuery.java +++ b/db/common/src/main/java/org/commonjava/indy/db/common/DefaultArtifactStoreQuery.java @@ -27,7 +27,6 @@ import org.commonjava.indy.model.core.StoreType; import org.commonjava.indy.pkg.maven.model.MavenPackageTypeDescriptor; import org.commonjava.indy.util.UrlInfo; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -147,21 +146,18 @@ public ArtifactStoreQuery enabledState( Boolean enabled ) // } @Override - @Measure public List getAll() throws IndyDataException { return stream().collect( Collectors.toList() ); } - @Measure private Stream stream() throws IndyDataException { return stream( store -> true ); } - @Measure private Stream stream( Predicate filter ) throws IndyDataException { @@ -204,7 +200,6 @@ private Stream stream( Predicate filter ) } @Override - @Measure public List getAll( Predicate filter ) throws IndyDataException { @@ -212,7 +207,6 @@ public List getAll( Predicate filter ) } @Override - @Measure public List getAllByDefaultPackageTypes() throws IndyDataException { @@ -227,7 +221,6 @@ public List getAllByDefaultPackageTypes() } @Override - @Measure public T getByName( String name ) throws IndyDataException { @@ -242,28 +235,24 @@ public T getByName( String name ) // } @Override - @Measure public Set getGroupsContaining( StoreKey storeKey ) { return getGroupsContaining( storeKey, Boolean.TRUE ); } @Override - @Measure public Set getGroupsContaining( StoreKey storeKey, Boolean enabled ) { return getAllGroups( storeKey.getPackageType(), enabled ).stream().filter( g -> g.getConstituents().contains( storeKey ) ).collect( Collectors.toSet() ); } @Override - @Measure public List getRemoteRepositoryByUrl( String packageType, String url ) { return getRemoteRepositoryByUrl( packageType, url, Boolean.TRUE ); } @Override - @Measure public List getRemoteRepositoryByUrl( String packageType, String url, Boolean enabled ) { /* @@ -363,7 +352,6 @@ public List getRemoteRepositoryByUrl( String packageType, Stri } @Override - @Measure public List getOrderedConcreteStoresInGroup( final String packageType, final String groupName ) throws IndyDataException { @@ -371,7 +359,6 @@ public List getOrderedConcreteStoresInGroup( final String package } @Override - @Measure public List getOrderedConcreteStoresInGroup( final String packageType, final String groupName, final Boolean enabled ) throws IndyDataException { @@ -387,7 +374,6 @@ public List getOrderedConcreteStoresInGroup( final String package } @Override - @Measure public List getOrderedStoresInGroup( final String packageType, final String groupName ) throws IndyDataException { @@ -395,7 +381,6 @@ public List getOrderedStoresInGroup( final String packageType, fi } @Override - @Measure public List getOrderedStoresInGroup( final String packageType, final String groupName, final Boolean enabled ) throws IndyDataException { @@ -403,7 +388,6 @@ public List getOrderedStoresInGroup( final String packageType, fi } @Override - @Measure public Set getGroupsAffectedBy( StoreKey... keys ) throws IndyDataException { @@ -411,7 +395,6 @@ public Set getGroupsAffectedBy( StoreKey... keys ) } @Override - @Measure public Set getGroupsAffectedBy( Collection keys ) throws IndyDataException { diff --git a/db/infinispan/src/main/java/org/commonjava/indy/infinispan/data/InfinispanStoreDataManager.java b/db/infinispan/src/main/java/org/commonjava/indy/infinispan/data/InfinispanStoreDataManager.java index 2984f39480..b256e4c5bb 100644 --- a/db/infinispan/src/main/java/org/commonjava/indy/infinispan/data/InfinispanStoreDataManager.java +++ b/db/infinispan/src/main/java/org/commonjava/indy/infinispan/data/InfinispanStoreDataManager.java @@ -27,7 +27,6 @@ import org.commonjava.indy.model.core.StoreKey; import org.commonjava.indy.model.core.StoreType; import org.commonjava.indy.subsys.infinispan.CacheHandle; -import org.commonjava.o11yphant.metrics.annotation.Measure; import org.infinispan.Cache; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -133,14 +132,12 @@ public void clear( final ChangeSummary summary ) } @Override - @Measure public Set getAllArtifactStores() { return stores.executeCache( c -> new HashSet<>( c.values() ), "getAllStores" ); } @Override - @Measure public Map getArtifactStoresByKey() { return stores.executeCache( c -> { @@ -170,7 +167,6 @@ public boolean isEmpty() } @Override - @Measure public Stream streamArtifactStoreKeys() { return stores.executeCache( c->c.keySet().stream() ); diff --git a/db/service/src/main/java/org/commonjava/indy/db/service/ServiceStoreDataCacheUpdater.java b/db/service/src/main/java/org/commonjava/indy/db/service/ServiceStoreDataCacheUpdater.java index 5a82fb8832..d485fee8c8 100644 --- a/db/service/src/main/java/org/commonjava/indy/db/service/ServiceStoreDataCacheUpdater.java +++ b/db/service/src/main/java/org/commonjava/indy/db/service/ServiceStoreDataCacheUpdater.java @@ -57,13 +57,6 @@ public class ServiceStoreDataCacheUpdater @Inject private CacheProducer cacheProducer; - //TODO: we found a bug of weft with o11yphant TraceManager, which could cause ConcurrentModificationException. - // Before fixing it here will use a JUC ExecutorService instead. - // The exception is something like: - // java.util.ConcurrentModificationException - // at java.base/java.util.HashMap.forEach(HashMap.java:1339) - // at java.base/java.util.Collections$UnmodifiableMap.forEach(Collections.java:1505) - // at org.commonjava.o11yphant.trace.TraceManager.lambda$startThreadRootSpan$1(TraceManager.java:117) private final ExecutorService cacheUpdateExecutor = Executors.newFixedThreadPool( 2, new NamedThreadFactory( "service-data-cache-update-executor", new ThreadGroup( "service-data-cache-update-executor" ), true, 3 ) ); diff --git a/deployments/launcher/src/main/resources/META-INF/beans.xml b/deployments/launcher/src/main/resources/META-INF/beans.xml index 67dbdfd242..cb9892c449 100644 --- a/deployments/launcher/src/main/resources/META-INF/beans.xml +++ b/deployments/launcher/src/main/resources/META-INF/beans.xml @@ -20,11 +20,6 @@ org.commonjava.indy.bind.jaxrs.util.RestInterceptor - org.commonjava.o11yphant.metrics.interceptor.DefaultMetricsInterceptor - org.commonjava.o11yphant.trace.interceptor.FlatTraceMeasureInterceptor - org.commonjava.o11yphant.trace.interceptor.FlatTraceWrapperInterceptor - org.commonjava.o11yphant.trace.interceptor.FlatTraceWrapperStartInterceptor - org.commonjava.o11yphant.trace.interceptor.FlatTraceWrapperEndInterceptor diff --git a/embedder/pom.xml b/embedder/pom.xml index 1de55dc592..638725f434 100644 --- a/embedder/pom.xml +++ b/embedder/pom.xml @@ -155,11 +155,6 @@ indy-repo-proxy-jaxrs - - org.commonjava.util - o11yphant-metrics-common - - org.commonjava.atlas atlas-identities diff --git a/embedder/src/it/resources/logback.xml b/embedder/src/it/resources/logback.xml index dfb7f8bd48..aba15fffc2 100644 --- a/embedder/src/it/resources/logback.xml +++ b/embedder/src/it/resources/logback.xml @@ -36,7 +36,6 @@ - diff --git a/embedder/src/main/resources/META-INF/beans.xml b/embedder/src/main/resources/META-INF/beans.xml index 9bd970fb2e..664c7b5bb9 100644 --- a/embedder/src/main/resources/META-INF/beans.xml +++ b/embedder/src/main/resources/META-INF/beans.xml @@ -27,11 +27,6 @@ org.commonjava.indy.bind.jaxrs.util.RestInterceptor - org.commonjava.o11yphant.metrics.interceptor.DefaultMetricsInterceptor - org.commonjava.o11yphant.trace.interceptor.FlatTraceMeasureInterceptor - org.commonjava.o11yphant.trace.interceptor.FlatTraceWrapperInterceptor - org.commonjava.o11yphant.trace.interceptor.FlatTraceWrapperStartInterceptor - org.commonjava.o11yphant.trace.interceptor.FlatTraceWrapperEndInterceptor diff --git a/embedder/src/test/resources/logback-test.xml b/embedder/src/test/resources/logback-test.xml index 223daeeaa3..8e8f519f46 100644 --- a/embedder/src/test/resources/logback-test.xml +++ b/embedder/src/test/resources/logback-test.xml @@ -63,7 +63,6 @@ - diff --git a/filers/default/src/main/java/org/commonjava/indy/filer/def/DefaultGalleyStorageProvider.java b/filers/default/src/main/java/org/commonjava/indy/filer/def/DefaultGalleyStorageProvider.java index 3e13dc6d5d..fe22bff87c 100644 --- a/filers/default/src/main/java/org/commonjava/indy/filer/def/DefaultGalleyStorageProvider.java +++ b/filers/default/src/main/java/org/commonjava/indy/filer/def/DefaultGalleyStorageProvider.java @@ -24,11 +24,6 @@ import org.commonjava.indy.content.SpecialPathSetProducer; import org.commonjava.indy.filer.def.conf.DefaultStorageProviderConfiguration; import org.commonjava.maven.galley.cache.pathmapped.PathMappedCacheProviderConfig; -import org.commonjava.o11yphant.metrics.api.Meter; -import org.commonjava.o11yphant.metrics.api.MetricRegistry; -import org.commonjava.o11yphant.metrics.api.Timer; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; -import org.commonjava.indy.subsys.metrics.conf.IndyMetricsConfig; import org.commonjava.indy.subsys.cassandra.CassandraClient; import org.commonjava.indy.subsys.cassandra.config.CassandraConfig; import org.commonjava.maven.galley.GalleyInitException; @@ -57,7 +52,6 @@ import org.commonjava.storage.pathmapped.config.DefaultPathMappedStorageConfig; import org.commonjava.storage.pathmapped.config.PathMappedStorageConfig; import org.commonjava.storage.pathmapped.pathdb.datastax.CassandraPathDB; -import org.commonjava.storage.pathmapped.metrics.MeasuredPathDB; import org.commonjava.storage.pathmapped.spi.PathDB; import org.commonjava.storage.pathmapped.spi.PhysicalStore; import org.slf4j.Logger; @@ -78,11 +72,8 @@ import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; -import java.util.function.BiConsumer; import java.util.function.Function; -import static org.apache.commons.lang3.StringUtils.isBlank; -import static org.commonjava.o11yphant.metrics.util.NameUtils.getSupername; import static org.commonjava.maven.galley.io.checksum.ChecksummingDecoratorAdvisor.ChecksumAdvice.CALCULATE_AND_WRITE; import static org.commonjava.maven.galley.io.checksum.ChecksummingDecoratorAdvisor.ChecksumAdvice.NO_DECORATE; import static org.commonjava.storage.pathmapped.pathdb.datastax.util.CassandraPathDBUtils.*; @@ -125,15 +116,6 @@ public class DefaultGalleyStorageProvider @Inject private Instance transferDecorators; - @Inject - private DefaultMetricsManager metricsManager; - - @Inject - private MetricRegistry metricRegistry; - - @Inject - private IndyMetricsConfig metricsConfig; - @Inject private CassandraConfig cassandraConfig; @@ -218,23 +200,6 @@ private void setupCacheProviderFactory() } } - if ( pathDB != null ) - { - if ( metricsConfig.isPathDBMetricsEnabled() ) - { - final String operations = metricsConfig.getPathDBMetricsOperations(); - logger.info( "Create measured PathDB, operations: {}", operations ); - pathDB = new MeasuredPathDB( pathDB, metricsManager, getSupername( "pathDB" ) ) - { - @Override - protected boolean isMetricEnabled( String metricName ) - { - return isBlank( operations ) || operations.contains( metricName ); - } - }; - } - } - File legacyBaseDir = config.getLegacyStorageBasedir(); PhysicalStore physicalStore = new LegacyReadonlyPhysicalStore( storeRoot, legacyBaseDir ); @@ -284,7 +249,7 @@ private int getReplicationFactor() private void setupTransferDecoratorPipeline() { List decorators = new ArrayList<>(); - decorators.add( new IOLatencyDecorator( timerProviderFunction(), meterProvider(), cumulativeTimer() )); + decorators.add( new IOLatencyDecorator( timerProviderFunction() )); decorators.add( new NoCacheTransferDecorator( specialPathManager ) ); decorators.add( new UploadMetadataGenTransferDecorator( specialPathManager, timerProviderFunction() ) ); for ( TransferDecorator decorator : transferDecorators ) @@ -297,22 +262,7 @@ private void setupTransferDecoratorPipeline() private Function timerProviderFunction() { - return name-> new IndyTimingProvider( name, metricsManager ); - } - - private BiConsumer cumulativeTimer() - { - return (name, elapsed) -> metricsManager.accumulate( name, elapsed ); - } - - private Function meterProvider() - { - return ( name ) -> metricsManager.getMeter( name ); - } - - private Function timerProvider() - { - return ( name ) -> metricsManager.startTimer( name ); + return name-> new IndyTimingProvider( name ); } private ChecksummingTransferDecorator getChecksummingTransferDecorator() diff --git a/filers/default/src/main/java/org/commonjava/indy/filer/def/IOLatencyDecorator.java b/filers/default/src/main/java/org/commonjava/indy/filer/def/IOLatencyDecorator.java index d1da5373af..5c460b0fe6 100644 --- a/filers/default/src/main/java/org/commonjava/indy/filer/def/IOLatencyDecorator.java +++ b/filers/default/src/main/java/org/commonjava/indy/filer/def/IOLatencyDecorator.java @@ -22,12 +22,10 @@ import org.commonjava.maven.galley.model.Transfer; import org.commonjava.maven.galley.model.TransferOperation; import org.commonjava.maven.galley.spi.metrics.TimingProvider; -import org.commonjava.o11yphant.metrics.api.Meter; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; -import java.util.function.BiConsumer; import java.util.function.Function; public class IOLatencyDecorator @@ -35,24 +33,16 @@ public class IOLatencyDecorator { private Function timerProvider; - private Function meterProvider; - - private BiConsumer cumulativeTimer; - - public IOLatencyDecorator( final Function timerProvider, - final Function meterProvider, - final BiConsumer cumulativeTimer ) + public IOLatencyDecorator( final Function timerProvider ) { this.timerProvider = timerProvider; - this.meterProvider = meterProvider; - this.cumulativeTimer = cumulativeTimer; } @Override public InputStream decorateRead( final InputStream stream, final Transfer transfer, final EventMetadata metadata ) throws IOException { - return new TimingInputStream( new CountingInputStream( stream ), timerProvider, meterProvider, cumulativeTimer ); + return new TimingInputStream( new CountingInputStream( stream ), timerProvider ); } @Override @@ -62,7 +52,7 @@ public OutputStream decorateWrite( final OutputStream stream, final Transfer tra { if ( op == TransferOperation.UPLOAD ) { - return new TimingOutputStream( new CountingOutputStream( stream ), timerProvider, meterProvider, cumulativeTimer ); + return new TimingOutputStream( new CountingOutputStream( stream ), timerProvider ); } return super.decorateWrite( stream, transfer, op, metadata ); diff --git a/filers/default/src/main/java/org/commonjava/indy/filer/def/IndyTimingProvider.java b/filers/default/src/main/java/org/commonjava/indy/filer/def/IndyTimingProvider.java index 9cfafdca1f..ef0ebdf347 100644 --- a/filers/default/src/main/java/org/commonjava/indy/filer/def/IndyTimingProvider.java +++ b/filers/default/src/main/java/org/commonjava/indy/filer/def/IndyTimingProvider.java @@ -15,7 +15,6 @@ */ package org.commonjava.indy.filer.def; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; import org.commonjava.maven.galley.spi.metrics.TimingProvider; public class IndyTimingProvider @@ -23,23 +22,22 @@ public class IndyTimingProvider { private final String name; - private final DefaultMetricsManager metricsManager; + private long startNanos; - public IndyTimingProvider( final String name, final DefaultMetricsManager metricsManager ) + public IndyTimingProvider( final String name ) { this.name = name; - this.metricsManager = metricsManager; } @Override public void start( final String name ) { - metricsManager.startTimer( name ); + startNanos = System.nanoTime(); } @Override public long stop() { - return metricsManager.stopTimer( name ); + return System.nanoTime() - startNanos; } } diff --git a/filers/default/src/main/java/org/commonjava/indy/filer/def/TimingInputStream.java b/filers/default/src/main/java/org/commonjava/indy/filer/def/TimingInputStream.java index 05f3fb979d..d109a4fb62 100644 --- a/filers/default/src/main/java/org/commonjava/indy/filer/def/TimingInputStream.java +++ b/filers/default/src/main/java/org/commonjava/indy/filer/def/TimingInputStream.java @@ -19,43 +19,26 @@ import org.commonjava.indy.util.RequestContextHelper; import org.commonjava.maven.galley.spi.metrics.TimingProvider; import org.commonjava.maven.galley.util.IdempotentCloseInputStream; -import org.commonjava.o11yphant.metrics.api.Meter; import java.io.IOException; -import java.util.function.BiConsumer; import java.util.function.Function; -import static org.commonjava.indy.IndyContentConstants.NANOS_PER_MILLISECOND; -import static org.commonjava.indy.IndyContentConstants.NANOS_PER_SEC; - public class TimingInputStream extends IdempotentCloseInputStream { private static final String RAW_IO_READ = "io.raw.read"; private static final String RAW_IO_READ_TIMER = RAW_IO_READ + ".timer"; - private static final String RAW_IO_READ_RATE = RAW_IO_READ + ".rate"; - private Long nanos; private Function timerProvider; - private final Function meterProvider; - - private BiConsumer cumulativeTimer; - private TimingProvider timer; - private Meter meter; - - public TimingInputStream( final CountingInputStream stream, final Function timerProvider, - final Function meterProvider, - final BiConsumer cumulativeTimer ) + public TimingInputStream( final CountingInputStream stream, final Function timerProvider ) { super( stream ); this.timerProvider = timerProvider == null ? ( s ) -> null : timerProvider; - this.meterProvider = meterProvider; - this.cumulativeTimer = cumulativeTimer; } @Override @@ -97,13 +80,6 @@ public void close() { timer.stop(); } - - if ( meter != null ) - { - meter.mark( (long) ( ( (CountingInputStream) this.in ).getByteCount() / ( elapsed / NANOS_PER_SEC ) ) ); - } - - cumulativeTimer.accept( RAW_IO_READ, elapsed / NANOS_PER_MILLISECOND ); } } @@ -113,7 +89,6 @@ private void initMetrics() { nanos = System.nanoTime(); timer = timerProvider.apply( RAW_IO_READ_TIMER ); - meter = meterProvider.apply( RAW_IO_READ_RATE ); } } } diff --git a/filers/default/src/main/java/org/commonjava/indy/filer/def/TimingOutputStream.java b/filers/default/src/main/java/org/commonjava/indy/filer/def/TimingOutputStream.java index feb0f653c9..018e3d8ad6 100644 --- a/filers/default/src/main/java/org/commonjava/indy/filer/def/TimingOutputStream.java +++ b/filers/default/src/main/java/org/commonjava/indy/filer/def/TimingOutputStream.java @@ -19,46 +19,30 @@ import org.commonjava.indy.util.RequestContextHelper; import org.commonjava.maven.galley.spi.metrics.TimingProvider; import org.commonjava.maven.galley.util.IdempotentCloseOutputStream; -import org.commonjava.o11yphant.metrics.api.Meter; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import java.io.IOException; -import java.util.function.BiConsumer; import java.util.function.Function; -import static org.commonjava.indy.IndyContentConstants.NANOS_PER_MILLISECOND; -import static org.commonjava.indy.IndyContentConstants.NANOS_PER_SEC; - public class TimingOutputStream extends IdempotentCloseOutputStream { private static final String RAW_IO_WRITE = "io.raw.write"; private static final String RAW_IO_WRITE_TIMER = RAW_IO_WRITE + ".timer"; - private static final String RAW_IO_WRITE_RATE = RAW_IO_WRITE + ".rate"; - private final Logger logger = LoggerFactory.getLogger( getClass() ); private Long nanos; private Function timerProvider; - private Function meterProvider; - private TimingProvider timer; - private Meter meter; - - private BiConsumer cumulativeConsumer; - - public TimingOutputStream( final CountingOutputStream stream, Function timerProvider, - Function meterProvider, BiConsumer cumulativeConsumer ) + public TimingOutputStream( final CountingOutputStream stream, Function timerProvider ) { super( stream ); - this.cumulativeConsumer = cumulativeConsumer; this.timerProvider = timerProvider == null ? ( s ) -> null : timerProvider; - this.meterProvider = meterProvider; } @Override @@ -103,14 +87,6 @@ public void close() logger.trace( "Stopping timer: {}", timer ); timer.stop(); } - - if ( meter != null ) - { - logger.trace( "Marking meter: {}", meter ); - meter.mark( (long) ( ( (CountingOutputStream) this.out ).getByteCount() / ( elapsed / NANOS_PER_SEC ) ) ); - } - - cumulativeConsumer.accept( RAW_IO_WRITE, elapsed / NANOS_PER_MILLISECOND ); } } @@ -121,8 +97,7 @@ private void initMetrics() { nanos = System.nanoTime(); timer = timerProvider.apply( RAW_IO_WRITE_TIMER ); - meter = meterProvider.apply( RAW_IO_WRITE_RATE ); - logger.trace( "At nanos: {}, initialized timer: {} and meter: {}", nanos, timer, meter ); + logger.trace( "At nanos: {}, initialized timer: {}", nanos, timer ); } } diff --git a/filers/default/src/main/java/org/commonjava/indy/filer/def/metrics/DefaultStoragePathProvider.java b/filers/default/src/main/java/org/commonjava/indy/filer/def/metrics/DefaultStoragePathProvider.java index 9fa4c64d9d..68a75e32d2 100644 --- a/filers/default/src/main/java/org/commonjava/indy/filer/def/metrics/DefaultStoragePathProvider.java +++ b/filers/default/src/main/java/org/commonjava/indy/filer/def/metrics/DefaultStoragePathProvider.java @@ -16,24 +16,20 @@ package org.commonjava.indy.filer.def.metrics; import org.commonjava.indy.filer.def.conf.DefaultStorageProviderConfiguration; -import org.commonjava.o11yphant.metrics.system.StoragePathProvider; import javax.enterprise.context.ApplicationScoped; import javax.inject.Inject; import java.io.File; /** - * Used to provide storage path in {@link org.commonjava.o11yphant.metrics.system.SystemGaugesSet} to monitor - * storage space usage + * Used to provide storage path to monitor storage space usage. */ @ApplicationScoped public class DefaultStoragePathProvider - implements StoragePathProvider { @Inject private DefaultStorageProviderConfiguration storageConfig; - @Override public File getStoragePath() { return storageConfig != null ? storageConfig.getStorageRootDirectory() : null; diff --git a/pom.xml b/pom.xml index 2238d39152..766e0e82f7 100644 --- a/pom.xml +++ b/pom.xml @@ -97,8 +97,7 @@ 1.19.0-alpha 3.7.1.0 3.12.1 - 3.0 - 1.9.2 + 3.2-SNAPSHOT 1.6.6 1.16 3.0.13 @@ -109,11 +108,11 @@ 3.4.4 1.1.4 1.22-SNAPSHOT - 1.24 + 1.26-SNAPSHOT 3.2.1 1.16 - 2.13 + 2.26-SNAPSHOT 2.3 1.15 1.5.1 @@ -1388,53 +1387,6 @@ import - - - org.commonjava.util - o11yphant-trace-api - ${o11yphantVersion} - - - org.commonjava.util - o11yphant-trace-core - ${o11yphantVersion} - - - org.commonjava.util - o11yphant-trace-otel - ${o11yphantVersion} - - - org.commonjava.util - o11yphant-trace-helper-servlet - ${o11yphantVersion} - - - org.commonjava.util - o11yphant-trace-helper-jhttpc - ${o11yphantVersion} - - - org.commonjava.util - o11yphant-trace-helper-httpclient - ${o11yphantVersion} - - - org.commonjava.util - o11yphant-metrics-api - ${o11yphantVersion} - - - org.commonjava.util - o11yphant-metrics-common - ${o11yphantVersion} - - - org.commonjava.util - o11yphant-metrics-core - ${o11yphantVersion} - - org.commonjava.propulsor diff --git a/subsys/cassandra/src/main/java/org/commonjava/indy/subsys/cassandra/IndyCassandraConnectionSpanFieldsInjector.java b/subsys/cassandra/src/main/java/org/commonjava/indy/subsys/cassandra/IndyCassandraConnectionSpanFieldsInjector.java index 6b8a5e1adc..2a87365707 100644 --- a/subsys/cassandra/src/main/java/org/commonjava/indy/subsys/cassandra/IndyCassandraConnectionSpanFieldsInjector.java +++ b/subsys/cassandra/src/main/java/org/commonjava/indy/subsys/cassandra/IndyCassandraConnectionSpanFieldsInjector.java @@ -16,8 +16,6 @@ package org.commonjava.indy.subsys.cassandra; import com.datastax.driver.core.Session; -import org.commonjava.indy.subsys.cassandra.CassandraClient; -import org.commonjava.o11yphant.trace.impl.CassandraConnectionSpanFieldsInjector; import javax.enterprise.context.ApplicationScoped; import javax.inject.Inject; @@ -26,7 +24,6 @@ @ApplicationScoped public class IndyCassandraConnectionSpanFieldsInjector - extends CassandraConnectionSpanFieldsInjector { private final Map sessions; @@ -37,7 +34,6 @@ public IndyCassandraConnectionSpanFieldsInjector( CassandraClient cassandraClien this.sessions = Collections.unmodifiableMap( cassandraClient.getSessions() ); } - @Override protected Map getSessions() { return sessions; diff --git a/subsys/groovy/pom.xml b/subsys/groovy/pom.xml index 0f05a1eb8c..ede2d21b18 100644 --- a/subsys/groovy/pom.xml +++ b/subsys/groovy/pom.xml @@ -46,10 +46,6 @@ indy-api provided - - org.commonjava.util - o11yphant-trace-api - org.jboss.weld.se weld-se-shaded diff --git a/subsys/groovy/src/test/java/org/commonjava/indy/subsys/template/fixture/MockStoragePathProvider.java b/subsys/groovy/src/test/java/org/commonjava/indy/subsys/template/fixture/MockStoragePathProvider.java index 4c19bd7044..a031328ee3 100644 --- a/subsys/groovy/src/test/java/org/commonjava/indy/subsys/template/fixture/MockStoragePathProvider.java +++ b/subsys/groovy/src/test/java/org/commonjava/indy/subsys/template/fixture/MockStoragePathProvider.java @@ -15,15 +15,12 @@ */ package org.commonjava.indy.subsys.template.fixture; -import org.commonjava.o11yphant.metrics.system.StoragePathProvider; - import javax.enterprise.context.ApplicationScoped; import java.io.File; @ApplicationScoped -public class MockStoragePathProvider implements StoragePathProvider +public class MockStoragePathProvider { - @Override public File getStoragePath() { return null; diff --git a/subsys/http/pom.xml b/subsys/http/pom.xml index 0110c2cd04..fc24ca6aee 100644 --- a/subsys/http/pom.xml +++ b/subsys/http/pom.xml @@ -50,10 +50,6 @@ org.commonjava.maven.galley galley-core - - org.commonjava.util - o11yphant-trace-helper-jhttpc - org.commonjava.indy indy-subsys-trace diff --git a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/BasicCacheHandle.java b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/BasicCacheHandle.java index 2ad5a6ee45..834ac1c657 100644 --- a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/BasicCacheHandle.java +++ b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/BasicCacheHandle.java @@ -15,8 +15,6 @@ */ package org.commonjava.indy.subsys.infinispan; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; -import org.infinispan.Cache; import org.infinispan.commons.api.BasicCache; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -25,23 +23,12 @@ import java.util.function.Function; import java.util.function.Supplier; -import static org.commonjava.o11yphant.metrics.util.NameUtils.name; - public class BasicCacheHandle { private String name; protected BasicCache cache; - protected DefaultMetricsManager metricsManager; - - private String metricPrefix; - - public String getMetricPrefix() - { - return metricPrefix; - } - private boolean stopped; public boolean isStopped() @@ -53,17 +40,10 @@ protected BasicCacheHandle() { } - protected BasicCacheHandle( String named, BasicCache cache, DefaultMetricsManager metricsManager, String metricPrefix ) + protected BasicCacheHandle( String named, BasicCache cache ) { this.name = named; this.cache = cache; - this.metricsManager = metricsManager; - this.metricPrefix = metricPrefix; - } - - public BasicCacheHandle( String named, BasicCache cache ) - { - this( named, cache, null, null ); } public String getName() @@ -81,11 +61,6 @@ public R execute( Function, R> operation ) protected R doExecute( String metricName, Function, R> operation ) { Supplier execution = executionFor ( operation); - if ( metricsManager != null ) - { - return metricsManager.wrapWithStandardMetrics( execution, () -> getMetricName( metricName ) ); - } - return execution.get(); } @@ -168,11 +143,6 @@ public void clear() } ); } - protected String getMetricName( String opName ) - { - return name( metricPrefix, opName ); - } - // public Set cacheKeySetByFilter( Predicate filter ) // { // return this.cache.keySet().stream().filter( filter ).collect( Collectors.toSet() ); diff --git a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/CacheHandle.java b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/CacheHandle.java index 8ee8b8c43b..7f992c25dc 100644 --- a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/CacheHandle.java +++ b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/CacheHandle.java @@ -16,7 +16,6 @@ package org.commonjava.indy.subsys.infinispan; import org.apache.commons.lang3.StringUtils; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; import org.infinispan.Cache; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -37,14 +36,9 @@ public class CacheHandle extends BasicCacheHandle { protected CacheHandle(){} - public CacheHandle( String named, Cache cache, DefaultMetricsManager metricsManager, String metricPrefix ) - { - super( named, cache, metricsManager, metricPrefix ); - } - public CacheHandle( String named, Cache cache ) { - this( named, cache, null, null ); + super( named, cache ); } /** @@ -74,11 +68,6 @@ public R executeCache( Function, R> operation, String metric ) protected R doExecuteCache( String metricName, Function, R> operation ) { Supplier execution = executionFor( operation ); - if ( metricsManager != null ) - { - return metricsManager.wrapWithStandardMetrics( execution, () -> getMetricName( metricName ) ); - } - return execution.get(); } diff --git a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/CacheProducer.java b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/CacheProducer.java index 662f595722..00d309b5c7 100644 --- a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/CacheProducer.java +++ b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/CacheProducer.java @@ -23,8 +23,6 @@ import org.commonjava.indy.action.IndyLifecycleException; import org.commonjava.indy.action.ShutdownAction; import org.commonjava.indy.conf.IndyConfiguration; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; -import org.commonjava.indy.subsys.metrics.conf.IndyMetricsConfig; import org.commonjava.indy.subsys.infinispan.config.ISPNClusterConfiguration; import org.commonjava.indy.subsys.infinispan.config.ISPNRemoteConfiguration; import org.infinispan.Cache; @@ -74,8 +72,6 @@ import java.util.Set; import java.util.concurrent.ConcurrentHashMap; -import static org.commonjava.o11yphant.metrics.util.NameUtils.getSupername; -import static org.commonjava.indy.subsys.infinispan.metrics.IspnCheckRegistrySet.INDY_METRIC_ISPN; import static org.infinispan.query.remote.client.ProtobufMetadataManagerConstants.PROTOBUF_METADATA_CACHE_NAME; /** @@ -98,12 +94,6 @@ public class CacheProducer @Inject private IndyConfiguration indyConfiguration; - @Inject - private DefaultMetricsManager metricsManager; - - @Inject - private IndyMetricsConfig metricsConfig; - @Inject private ISPNClusterConfiguration clusterConfiguration; @@ -288,7 +278,7 @@ public synchronized BasicCacheHandle getBasicCache( String named ) return null; } logger.info( "Get remote cache, name: {}", k ); - return new RemoteCacheHandle( k, cache, metricsManager, getCacheMetricPrefix( k ) ); + return new RemoteCacheHandle( k, cache ); } return null; } ); @@ -397,15 +387,10 @@ public synchronized CacheHandle getCache( String named ) { cache = cacheManager.getCache( k ); } - return new CacheHandle( k, cache, metricsManager, getCacheMetricPrefix( k ) ); + return new CacheHandle( k, cache ); } ); } - private String getCacheMetricPrefix( String named ) - { - return metricsManager == null ? null : getSupername( metricsConfig.getNodePrefix(), INDY_METRIC_ISPN, named ); - } - public synchronized Configuration getCacheConfiguration( String name ) { if ( cacheManager == null ) diff --git a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/RemoteCacheHandle.java b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/RemoteCacheHandle.java index 4460d4bbac..5a4df077e6 100644 --- a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/RemoteCacheHandle.java +++ b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/RemoteCacheHandle.java @@ -15,28 +15,14 @@ */ package org.commonjava.indy.subsys.infinispan; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; import org.infinispan.client.hotrod.RemoteCache; -import static org.commonjava.o11yphant.metrics.util.NameUtils.name; - public class RemoteCacheHandle extends BasicCacheHandle { - public RemoteCacheHandle( String named, RemoteCache cache, DefaultMetricsManager metricsManager, String metricPrefix ) - { - super( named, cache, metricsManager, metricPrefix ); - } - public RemoteCacheHandle( String named, RemoteCache cache ) { - this( named, cache, null, null ); - } - - @Override - protected String getMetricName( String opName ) - { - return name( getMetricPrefix(), cache.getName(), "remote", opName ); + super( named, cache ); } } diff --git a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/metrics/IspnCheckRegistrySet.java b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/metrics/IspnCheckRegistrySet.java index 7dd0f9b505..e1cd462279 100644 --- a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/metrics/IspnCheckRegistrySet.java +++ b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/metrics/IspnCheckRegistrySet.java @@ -15,26 +15,16 @@ */ package org.commonjava.indy.subsys.infinispan.metrics; -import org.commonjava.o11yphant.metrics.api.Gauge; -import org.commonjava.o11yphant.metrics.api.Metric; -import org.commonjava.o11yphant.metrics.api.MetricSet; -import org.commonjava.o11yphant.metrics.sli.GoldenSignalsFunctionMetrics; import org.infinispan.AdvancedCache; import org.infinispan.Cache; import org.infinispan.manager.EmbeddedCacheManager; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.util.HashMap; import java.util.List; -import java.util.Map; import java.util.Set; -import java.util.function.Supplier; - -import static org.commonjava.o11yphant.metrics.util.NameUtils.name; public class IspnCheckRegistrySet - implements MetricSet { private static Logger logger = LoggerFactory.getLogger( IspnCheckRegistrySet.class ); @@ -90,161 +80,4 @@ public IspnCheckRegistrySet( EmbeddedCacheManager cacheManager, List isp this.ispnGauges = ispnGauges; } - @Override - public Map getMetrics() - { - final Map gauges = new HashMap(); - Set names = cacheManager.getCacheNames(); - names.forEach( n -> - { - Cache cache = cacheManager.getCache( n ); - AdvancedCache advancedCache = cache.getAdvancedCache(); - - logger.info( "Get ISPN cache metrics, {}", n ); - //gauges.put( name( cache.getName(), SIZE ), (Gauge) () -> advancedCache.size() ); // default - - // These give the current sizes of the cache. - if ( ispnGauges == null || ispnGauges.contains( CURRENT_NUMBER_OF_ENTRIES ) ) - { - gauges.put( name( cache.getName(), CURRENT_NUMBER_OF_ENTRIES ), - (Gauge) () -> noExceptions( ()-> advancedCache.getStats().getCurrentNumberOfEntries() ) ); - } - if ( ispnGauges == null || ispnGauges.contains( TOTAL_NUMBER_OF_ENTRIES ) ) - { - gauges.put( name( cache.getName(), TOTAL_NUMBER_OF_ENTRIES ), - (Gauge) () -> noExceptions( ()-> advancedCache.getStats().getTotalNumberOfEntries() ) ); - } - if ( ispnGauges == null || ispnGauges.contains( TOTAL_HITS ) ) - { - gauges.put( name( cache.getName(), TOTAL_HITS ), - (Gauge) () -> noExceptions( ()-> advancedCache.getStats().getHits() ) ); - } - if ( ispnGauges == null || ispnGauges.contains( TOTAL_MISSES ) ) - { - gauges.put( name( cache.getName(), TOTAL_MISSES ), - (Gauge) () -> noExceptions( ()-> advancedCache.getStats().getMisses() ) ); - } - if ( ispnGauges == null || ispnGauges.contains( TOTAL_RETRIEVALS ) ) - { - gauges.put( name( cache.getName(), TOTAL_RETRIEVALS ), - (Gauge) () -> noExceptions( ()-> advancedCache.getStats().getRetrievals() ) ); - } - if ( ispnGauges == null || ispnGauges.contains( TOTAL_EVICTIONS ) ) - { - gauges.put( name( cache.getName(), TOTAL_EVICTIONS ), - (Gauge) () -> noExceptions( ()-> advancedCache.getStats().getEvictions() ) ); - } - if ( ispnGauges == null || ispnGauges.contains( TOTAL_REMOVALS ) ) - { - gauges.put( name( cache.getName(), TOTAL_REMOVALS ), - (Gauge) () -> noExceptions( ()-> advancedCache.getStats().getRemoveHits() ) ); - } - if ( ispnGauges == null || ispnGauges.contains( OFF_HEAP_MEMORY_USED ) ) - { - gauges.put( name( cache.getName(), OFF_HEAP_MEMORY_USED ), - (Gauge) () -> advancedCache.getStats().getOffHeapMemoryUsed() ); - } - if ( ispnGauges == null || ispnGauges.contains( DATA_MEMORY_USED ) ) - { - gauges.put( name( cache.getName(), DATA_MEMORY_USED ), - (Gauge) () -> advancedCache.getStats().getDataMemoryUsed() ); - } - if ( ispnGauges == null || ispnGauges.contains( AVG_READ_TIME ) ) - { - gauges.put( name( cache.getName(), AVG_READ_TIME ), - (Gauge) () -> advancedCache.getStats().getAverageReadTime() ); - } - if ( ispnGauges == null || ispnGauges.contains( AVG_WRITE_TIME ) ) - { - gauges.put( name( cache.getName(), AVG_WRITE_TIME ), - (Gauge) () -> advancedCache.getStats().getAverageWriteTime() ); - } - if ( ispnGauges == null || ispnGauges.contains( AVG_REMOVE_TIME ) ) - { - gauges.put( name( cache.getName(), AVG_REMOVE_TIME ), - (Gauge) () -> advancedCache.getStats().getAverageRemoveTime() ); - } - - // The rest of these should show the RATES at which the cache is changing, or is being used. - if ( ispnGauges == null || ispnGauges.contains( NUMBER_OF_ENTRIES_ADDED ) ) - { - gauges.put( name( cache.getName(), NUMBER_OF_ENTRIES_ADDED ), - new RecentCountGauge( () -> noExceptions( ()-> (float) advancedCache.getStats().getCurrentNumberOfEntries() ) ) ); - } - if ( ispnGauges == null || ispnGauges.contains( HITS ) ) - { - gauges.put( name( cache.getName(), HITS ), - new RecentCountGauge( () -> noExceptions( ()-> (float) advancedCache.getStats().getHits() ) ) ); - } - if ( ispnGauges == null || ispnGauges.contains( MISSES ) ) - { - gauges.put( name( cache.getName(), MISSES ), - new RecentCountGauge( () -> noExceptions( ()-> (float) advancedCache.getStats().getMisses() ) ) ); - } - if ( ispnGauges == null || ispnGauges.contains( RETRIEVALS ) ) - { - gauges.put( name( cache.getName(), RETRIEVALS ), - new RecentCountGauge( () -> noExceptions( ()-> (float) advancedCache.getStats().getRetrievals() ) ) ); - } - if ( ispnGauges == null || ispnGauges.contains( EVICTIONS ) ) - { - gauges.put( name( cache.getName(), EVICTIONS ), - new RecentCountGauge( () -> noExceptions( ()-> (float) advancedCache.getStats().getEvictions() ) ) ); - } - if ( ispnGauges == null || ispnGauges.contains( REMOVALS ) ) - { - gauges.put( name( cache.getName(), REMOVALS ), - new RecentCountGauge( () -> noExceptions( ()-> (float) advancedCache.getStats().getRemoveHits() ) ) ); - } - } ); - - return gauges; - } - - @Override - public void reset() - { - } - - private T noExceptions( final Supplier task ) - { - try - { - return task.get(); - } - catch( Throwable t ) - { - logger.error( "Error retrieving ISPN metric.", t ); - } - - return null; - } - - private static final class RecentCountGauge implements Gauge - { - - private Supplier supplier; - - private float lastSize = 0L; - private long lastTime = System.currentTimeMillis(); - - private RecentCountGauge( Supplier supplier ) - { - this.supplier = supplier; - } - - @Override - public Float getValue() - { - float next = supplier.get(); - float ret = next - lastSize; - lastSize = next; - - long nextTime = System.currentTimeMillis(); - float rate = ret / ((nextTime - lastTime) / 1000); - lastTime = nextTime; - - return rate; - } - } } diff --git a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/metrics/IspnRegistrySetProvider.java b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/metrics/IspnRegistrySetProvider.java index 5c13424040..e89c89019b 100644 --- a/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/metrics/IspnRegistrySetProvider.java +++ b/subsys/infinispan/src/main/java/org/commonjava/indy/subsys/infinispan/metrics/IspnRegistrySetProvider.java @@ -15,8 +15,6 @@ */ package org.commonjava.indy.subsys.infinispan.metrics; -import org.commonjava.o11yphant.metrics.api.MetricSet; -import org.commonjava.o11yphant.metrics.MetricSetProvider; import org.commonjava.indy.subsys.metrics.conf.IndyMetricsConfig; import org.commonjava.indy.subsys.infinispan.CacheProducer; import org.slf4j.Logger; @@ -29,12 +27,8 @@ import java.util.List; import java.util.Set; -import static org.commonjava.indy.subsys.infinispan.metrics.IspnCheckRegistrySet.INDY_METRIC_ISPN; -import static org.commonjava.o11yphant.metrics.util.NameUtils.name; - @ApplicationScoped public class IspnRegistrySetProvider - implements MetricSetProvider { @Inject private IndyMetricsConfig metricsConfig; @@ -47,43 +41,4 @@ public class IspnRegistrySetProvider private final Logger logger = LoggerFactory.getLogger( getClass() ); - @Override - public MetricSet getMetricSet() - { - logger.info( "Adding ISPN checks" ); - String gauges = metricsConfig.getIspnGauges(); - List list = null; - if ( gauges != null ) - { - list = Arrays.asList( gauges.trim().split( "," ) ); - } - - for ( IspnCacheRegistry cacheRegistry : cacheRegistrySet ) - { - Set caches = cacheRegistry.getCacheNames(); - if ( caches != null ) - { - caches.forEach( ( n ) -> cacheProducer.getCacheManager().getCache( n ) ); - } - } - return new IspnCheckRegistrySet( cacheProducer.getCacheManager(), list ); - } - - @Override - public String getName() - { - return name( metricsConfig.getNodePrefix(), INDY_METRIC_ISPN ); - } - - @Override - public boolean isEnabled() - { - return metricsConfig.isIspnMetricsEnabled(); - } - - @Override - public void reset() - { - getMetricSet().reset(); - } } diff --git a/subsys/jaxrs/pom.xml b/subsys/jaxrs/pom.xml index cf6c76470a..a77daff4d3 100644 --- a/subsys/jaxrs/pom.xml +++ b/subsys/jaxrs/pom.xml @@ -93,10 +93,6 @@ org.commonjava.indy indy-subsys-trace - - org.commonjava.util - o11yphant-trace-helper-servlet - io.swagger swagger-annotations diff --git a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/IndyDeployment.java b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/IndyDeployment.java index c1465b6707..4dda30c651 100644 --- a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/IndyDeployment.java +++ b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/IndyDeployment.java @@ -29,8 +29,6 @@ import org.commonjava.indy.bind.jaxrs.util.RequestScopeListener; import org.commonjava.indy.conf.UIConfiguration; import org.commonjava.indy.stats.IndyVersioning; -import org.commonjava.o11yphant.metrics.GoldenSignalsFilter; -import org.commonjava.o11yphant.trace.servlet.TraceFilter; import org.jboss.resteasy.plugins.server.servlet.HttpServlet30Dispatcher; import org.jboss.resteasy.spi.ResteasyDeployment; import org.slf4j.Logger; @@ -83,12 +81,6 @@ public class IndyDeployment @Inject private ApiVersioningFilter apiVersioningFilter; - @Inject - private TraceFilter traceFilter; - - @Inject - private GoldenSignalsFilter goldenSignalsFilter; - @Inject private IndyVersioning versioning; @@ -105,7 +97,6 @@ protected IndyDeployment() public IndyDeployment( final Set> resourceClasses, final Set> restProviders, final Set deploymentProviders, final UIServlet ui, - final TraceFilter traceFilter, final ResourceManagementFilter resourceManagementFilter, final IndyVersioning versioning ) { this.resourceClasses = resourceClasses; @@ -113,7 +104,6 @@ public IndyDeployment( final Set> resourceClasses this.ui = ui; this.resourceManagementFilter = resourceManagementFilter; this.versioning = versioning; - this.traceFilter = traceFilter; this.apiVersioningFilter = new ApiVersioningFilter( versioning ); this.providerClasses = Collections.emptySet(); this.classes = getClasses(); @@ -174,20 +164,11 @@ public Set> getClasses() new ImmediateInstanceFactory<>( this.slashTolerationFilter ) ); - final FilterInfo traceFilter = - Servlets.filter( "O11yphant-Trace", TraceFilter.class, - new ImmediateInstanceFactory<>( - this.traceFilter ) ); - final FilterInfo threadContextFilter = Servlets.filter( "ThreadContext Management", ThreadContextFilter.class, new ImmediateInstanceFactory<>( this.threadContextFilter ) ); - final FilterInfo goldenSignalsFilter = Servlets.filter( "Golden-Signals", GoldenSignalsFilter.class, - new ImmediateInstanceFactory<>( - this.goldenSignalsFilter ) ); - final FilterInfo resourceManagementFilter = Servlets.filter( "Naming and Resource Management", ResourceManagementFilter.class, new ImmediateInstanceFactory( @@ -213,29 +194,6 @@ public Set> getClasses() .addFilterUrlMapping( threadContextFilter.getName(), "/api/*", DispatcherType.REQUEST ) - .addFilter( traceFilter ) - .addFilterUrlMapping( traceFilter.getName(), "/api/*", - DispatcherType.REQUEST ) - - .addFilter( goldenSignalsFilter ) - .addFilterUrlMapping( goldenSignalsFilter.getName(), - "/api/folo/*", DispatcherType.REQUEST ) - .addFilterUrlMapping( goldenSignalsFilter.getName(), - "/api/content/*", DispatcherType.REQUEST ) - .addFilterUrlMapping( goldenSignalsFilter.getName(), - "/api/promotion/*", DispatcherType.REQUEST ) - .addFilterUrlMapping( goldenSignalsFilter.getName(), - "/api/admin/stores/*", - DispatcherType.REQUEST ) - .addFilterUrlMapping( goldenSignalsFilter.getName(), - "/api/browse/*", DispatcherType.REQUEST ) - .addFilterUrlMapping( goldenSignalsFilter.getName(), - "/api/remote/*", DispatcherType.REQUEST ) - .addFilterUrlMapping( goldenSignalsFilter.getName(), - "/api/hosted/*", DispatcherType.REQUEST ) - .addFilterUrlMapping( goldenSignalsFilter.getName(), - "/api/group/*", DispatcherType.REQUEST ) - .addFilter( resourceManagementFilter ) .addFilterUrlMapping( resourceManagementFilter.getName(), "/api/*", DispatcherType.REQUEST ) diff --git a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/ResourceManagementFilter.java b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/ResourceManagementFilter.java index 636fe1fb68..f341895b5c 100644 --- a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/ResourceManagementFilter.java +++ b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/ResourceManagementFilter.java @@ -16,11 +16,7 @@ package org.commonjava.indy.bind.jaxrs; import org.commonjava.cdi.util.weft.ThreadContext; -import org.commonjava.o11yphant.metrics.annotation.Measure; -import org.commonjava.o11yphant.metrics.MetricsConstants; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; import org.commonjava.indy.util.RequestContextHelper; -import org.commonjava.maven.galley.model.SpecialPathInfo; import org.commonjava.maven.galley.spi.cache.CacheProvider; import org.commonjava.maven.galley.spi.io.SpecialPathManager; import org.slf4j.Logger; @@ -38,13 +34,10 @@ import javax.servlet.http.HttpServletRequest; import java.io.IOException; import java.util.Map; -import java.util.concurrent.atomic.AtomicReference; -import java.util.function.Supplier; import static org.commonjava.indy.util.RequestContextHelper.CLIENT_ADDR; import static org.commonjava.indy.util.RequestContextHelper.CUMULATIVE_COUNTS; import static org.commonjava.indy.util.RequestContextHelper.CUMULATIVE_TIMINGS; -import static org.commonjava.indy.util.RequestContextHelper.IS_METERED; import static org.commonjava.indy.util.RequestContextHelper.REQUEST_PHASE; import static org.commonjava.indy.util.RequestContextHelper.REQUEST_PHASE_START; @@ -59,18 +52,6 @@ public class ResourceManagementFilter public static final String METHOD_PATH_TIME = "method-path-time"; - private static final String BASE_CONTENT_METRIC = "indy.content."; - - private static final String POM_CONTENT_METRIC = BASE_CONTENT_METRIC + "pom"; - - private static final String NORMAL_CONTENT_METRIC = BASE_CONTENT_METRIC + "other"; - - private static final String METADATA_CONTENT_METRIC = BASE_CONTENT_METRIC + "metadata"; - - private static final String SPECIAL_CONTENT_METRIC = BASE_CONTENT_METRIC + "special"; - - private static final String FORCE_METERED = "force-metered"; - @Inject private CacheProvider cacheProvider; @@ -80,9 +61,6 @@ public class ResourceManagementFilter @Inject private SpecialPathManager specialPathManager; - @Inject - private DefaultMetricsManager metricsManager; - private final Logger logger = LoggerFactory.getLogger( getClass() ); private final Logger restLogger = LoggerFactory.getLogger( "org.commonjava.topic.rest.inbound" ); @@ -98,7 +76,6 @@ public void init( final FilterConfig filterConfig ) } @Override - @Measure public void doFilter( final ServletRequest request, final ServletResponse response, final FilterChain chain ) throws IOException, ServletException { @@ -121,10 +98,6 @@ public void doFilter( final ServletRequest request, final ServletResponse respon { ThreadContext threadContext = ThreadContext.getContext( true ); - boolean isMetered = metricsManager.isMetered( ()-> RequestContextHelper.getContext( FORCE_METERED, Boolean.FALSE ) ); - - threadContext.put( IS_METERED, isMetered ); - threadContext.put( ORIGINAL_THREAD_NAME, name ); threadContext.put( HTTP_REQUEST, hsr ); @@ -139,34 +112,7 @@ public void doFilter( final ServletRequest request, final ServletResponse respon restLogger.info( "START {}{} (from: {})", hsr.getRequestURL(), qs == null ? "" : "?" + qs, clientAddr ); MDC.remove( REQUEST_PHASE ); - AtomicReference ioex = new AtomicReference<>(); - AtomicReference seex = new AtomicReference<>(); - - metricsManager.wrapWithStandardMetrics( () -> { - try - { - chain.doFilter( request, response ); - } - catch ( IOException e ) - { - ioex.set( e ); - } - catch ( ServletException e ) - { - seex.set( e ); - } - return null; - }, pathClassifier( hsr.getPathInfo() ) ); - - if ( ioex.get() != null ) - { - throw ioex.get(); - } - - if ( seex.get() != null ) - { - throw seex.get(); - } + chain.doFilter( request, response ); } finally { @@ -210,29 +156,6 @@ public void doFilter( final ServletRequest request, final ServletResponse respon } } - private Supplier pathClassifier( final String pathInfo ) - { - return ()->{ - if ( !pathInfo.contains( "content" )) - { - return MetricsConstants.SKIP_METRIC; - } - SpecialPathInfo spi = specialPathManager.getSpecialPathInfo( pathInfo ); - if ( spi == null ) - { - return pathInfo.endsWith( ".pom" ) ? POM_CONTENT_METRIC : NORMAL_CONTENT_METRIC; - } - else if ( spi.isMetadata() ) - { - return METADATA_CONTENT_METRIC; - } - else - { - return SPECIAL_CONTENT_METRIC; - } - }; - } - @Override public void destroy() { diff --git a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/metrics/IndyHealthCheckDeploymentProvider.java b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/metrics/IndyHealthCheckDeploymentProvider.java index f8a72a9c36..b1de142f85 100644 --- a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/metrics/IndyHealthCheckDeploymentProvider.java +++ b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/metrics/IndyHealthCheckDeploymentProvider.java @@ -17,22 +17,17 @@ import io.undertow.servlet.api.DeploymentInfo; import org.commonjava.indy.bind.jaxrs.IndyDeploymentProvider; -import org.commonjava.o11yphant.metrics.jaxrs.HealthCheckDeploymentProvider; import javax.enterprise.context.ApplicationScoped; -import javax.inject.Inject; import javax.ws.rs.core.Application; @ApplicationScoped public class IndyHealthCheckDeploymentProvider extends IndyDeploymentProvider { - @Inject - private HealthCheckDeploymentProvider healthCheckDeploymentProvider; - @Override public DeploymentInfo getDeploymentInfo( String contextRoot, Application application ) { - return healthCheckDeploymentProvider.getDeploymentInfo( contextRoot ); + return null; } } diff --git a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/metrics/IndyPrometheusDeploymentProvider.java b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/metrics/IndyPrometheusDeploymentProvider.java index 4150947dd8..31e80fd6a6 100644 --- a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/metrics/IndyPrometheusDeploymentProvider.java +++ b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/metrics/IndyPrometheusDeploymentProvider.java @@ -17,22 +17,17 @@ import io.undertow.servlet.api.DeploymentInfo; import org.commonjava.indy.bind.jaxrs.IndyDeploymentProvider; -import org.commonjava.o11yphant.metrics.jaxrs.PrometheusDeploymentProvider; import javax.enterprise.context.ApplicationScoped; -import javax.inject.Inject; import javax.ws.rs.core.Application; @ApplicationScoped public class IndyPrometheusDeploymentProvider extends IndyDeploymentProvider { - @Inject - private PrometheusDeploymentProvider prometheusDeploymentProvider; - @Override public DeploymentInfo getDeploymentInfo( String contextRoot, Application application ) { - return prometheusDeploymentProvider.getDeploymentInfo( contextRoot ); + return null; } } diff --git a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/util/DTOStreamingOutput.java b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/util/DTOStreamingOutput.java index d838c05aa6..f19fa509be 100644 --- a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/util/DTOStreamingOutput.java +++ b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/util/DTOStreamingOutput.java @@ -18,9 +18,6 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import org.apache.commons.io.output.CountingOutputStream; -import org.commonjava.o11yphant.metrics.api.Meter; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; -import org.commonjava.indy.subsys.metrics.conf.IndyMetricsConfig; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,34 +25,18 @@ import javax.ws.rs.core.StreamingOutput; import java.io.IOException; import java.io.OutputStream; -import java.util.concurrent.atomic.AtomicReference; - -import static org.commonjava.o11yphant.metrics.MetricsConstants.METER; -import static org.commonjava.o11yphant.metrics.util.NameUtils.getDefaultName; -import static org.commonjava.o11yphant.metrics.util.NameUtils.getName; public class DTOStreamingOutput implements StreamingOutput { - private static final String TRANSFER_METRIC_NAME = "indy.transferred.dto"; - - private static final double NANOS_PER_SEC = 1000000000.0; - private final ObjectMapper mapper; private final Object dto; - private final DefaultMetricsManager metricsManager; - - private final IndyMetricsConfig metricsConfig; - - public DTOStreamingOutput( final ObjectMapper mapper, final Object dto, final DefaultMetricsManager metricsManager, - final IndyMetricsConfig metricsConfig ) + public DTOStreamingOutput( final ObjectMapper mapper, final Object dto ) { this.mapper = mapper; this.dto = dto; - this.metricsManager = metricsManager; - this.metricsConfig = metricsConfig; } @Override @@ -77,40 +58,15 @@ public String toString() public void write( final OutputStream outputStream ) throws IOException, WebApplicationException { - AtomicReference ioe = new AtomicReference<>(); - metricsManager.wrapWithStandardMetrics( () -> { - CountingOutputStream cout = new CountingOutputStream( outputStream ); - long start = System.nanoTime(); - try - { - mapper.writeValue( cout, dto ); - } - catch ( IOException e ) - { - ioe.set( e ); - } - finally - { - Logger logger = LoggerFactory.getLogger( getClass() ); - logger.trace( "Wrote: {} bytes", cout.getByteCount() ); - - String name = getName( metricsConfig.getNodePrefix(), TRANSFER_METRIC_NAME, - getDefaultName( dto.getClass(), "write" ), METER ); - - long end = System.nanoTime(); - double elapsed = (end-start)/NANOS_PER_SEC; - - Meter meter = metricsManager.getMeter( name ); - meter.mark( Math.round( cout.getByteCount() / elapsed ) ); - } - - return null; - - }, () -> null ); - - if ( ioe.get() != null ) + CountingOutputStream cout = new CountingOutputStream( outputStream ); + try { - throw ioe.get(); + mapper.writeValue( cout, dto ); + } + finally + { + Logger logger = LoggerFactory.getLogger( getClass() ); + logger.trace( "Wrote: {} bytes", cout.getByteCount() ); } } } diff --git a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/util/ResponseHelper.java b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/util/ResponseHelper.java index d1261c3278..18590a7ac2 100644 --- a/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/util/ResponseHelper.java +++ b/subsys/jaxrs/src/main/java/org/commonjava/indy/bind/jaxrs/util/ResponseHelper.java @@ -20,8 +20,6 @@ import org.apache.commons.lang3.StringUtils; import org.commonjava.indy.IndyWorkflowException; import org.commonjava.indy.content.ContentDigester; -import org.commonjava.o11yphant.metrics.DefaultMetricsManager; -import org.commonjava.indy.subsys.metrics.conf.IndyMetricsConfig; import org.commonjava.indy.model.core.StoreKey; import org.commonjava.indy.model.util.HttpUtils; import org.commonjava.indy.util.ApplicationContent; @@ -59,12 +57,6 @@ public class ResponseHelper @Inject private ObjectMapper mapper; - @Inject - private DefaultMetricsManager metricsManager; - - @Inject - private IndyMetricsConfig metricsConfig; - @Inject ContentDigester contentDigester; @@ -91,7 +83,7 @@ public Response formatCreatedResponseWithJsonEntity( final URI location, final O else { builder = Response.created( location ) - .entity( new DTOStreamingOutput( mapper, dto, metricsManager, metricsConfig ) ) + .entity( new DTOStreamingOutput( mapper, dto ) ) .type( ApplicationContent.application_json ); } @@ -121,7 +113,7 @@ public Response formatOkResponseWithJsonEntity( final Object dto, final Consumer return Response.noContent().build(); } - ResponseBuilder builder = Response.ok( new DTOStreamingOutput( mapper, dto, metricsManager, metricsConfig ), + ResponseBuilder builder = Response.ok( new DTOStreamingOutput( mapper, dto ), ApplicationContent.application_json ); if ( builderModifier != null ) @@ -185,8 +177,8 @@ else if ( ApplicationHeader.content_length.upperKey().equals( key ) ) } } } - - + + if ( item != null && item.exists() ) { @@ -216,8 +208,8 @@ else if ( ApplicationHeader.content_length.upperKey().equals( key ) ) // Indy origin contains the storeKey of the repository where the content came from builder.header( ApplicationHeader.indy_origin.key(), LocationUtils.getKey( item ).toString() ); - - + + } else { diff --git a/subsys/kafka/pom.xml b/subsys/kafka/pom.xml index 35006cc699..dce5265086 100644 --- a/subsys/kafka/pom.xml +++ b/subsys/kafka/pom.xml @@ -67,10 +67,6 @@ org.commonjava.indy indy-subsys-trace - - org.commonjava.util - o11yphant-trace-otel - io.opentelemetry.instrumentation opentelemetry-kafka-clients-2.6 diff --git a/subsys/kafka/src/main/java/org/commonjava/indy/subsys/kafka/IndyKafkaProducer.java b/subsys/kafka/src/main/java/org/commonjava/indy/subsys/kafka/IndyKafkaProducer.java index 883cae787d..9c19a5cc31 100644 --- a/subsys/kafka/src/main/java/org/commonjava/indy/subsys/kafka/IndyKafkaProducer.java +++ b/subsys/kafka/src/main/java/org/commonjava/indy/subsys/kafka/IndyKafkaProducer.java @@ -15,8 +15,6 @@ */ package org.commonjava.indy.subsys.kafka; -import io.opentelemetry.api.OpenTelemetry; -import io.opentelemetry.instrumentation.kafkaclients.KafkaTelemetry; import org.apache.kafka.clients.producer.Callback; import org.apache.kafka.clients.producer.KafkaProducer; import org.apache.kafka.clients.producer.Producer; @@ -24,8 +22,6 @@ import org.apache.kafka.clients.producer.ProducerRecord; import org.apache.kafka.common.serialization.StringSerializer; import org.commonjava.indy.subsys.kafka.conf.KafkaConfig; -import org.commonjava.indy.subsys.trace.config.IndyTraceConfiguration; -import org.commonjava.o11yphant.otel.OtelUtil; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -49,9 +45,6 @@ public class IndyKafkaProducer @Inject private KafkaConfig config; - @Inject - IndyTraceConfiguration traceConfiguration; - private Producer kafkaProducer; private final Consumer exceptionHandler = ( e ) -> logger.error( "Send to Kafka failed", e ); @@ -79,13 +72,6 @@ private void init() props.setProperty( ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, KafkaObjectMapperSerializer.class.getName() ); kafkaProducer = new KafkaProducer<>( props ); - if ( traceConfiguration.isEnabled() && config.isTracing() ) - { - logger.info( "Enabling the opentelemetry for Kafka message producer." ); - final OpenTelemetry otel = OtelUtil.getOpenTelemetry( traceConfiguration, traceConfiguration ); - final KafkaTelemetry telemetry = KafkaTelemetry.create( otel ); - kafkaProducer = telemetry.wrap( kafkaProducer ); - } } } diff --git a/subsys/kafka/src/main/java/org/commonjava/indy/subsys/kafka/trace/TracingKafkaClientSupplier.java b/subsys/kafka/src/main/java/org/commonjava/indy/subsys/kafka/trace/TracingKafkaClientSupplier.java index ed9818ffed..3f7f099db9 100644 --- a/subsys/kafka/src/main/java/org/commonjava/indy/subsys/kafka/trace/TracingKafkaClientSupplier.java +++ b/subsys/kafka/src/main/java/org/commonjava/indy/subsys/kafka/trace/TracingKafkaClientSupplier.java @@ -15,37 +15,27 @@ */ package org.commonjava.indy.subsys.kafka.trace; -import io.opentelemetry.api.OpenTelemetry; -import io.opentelemetry.instrumentation.kafkaclients.KafkaTelemetry; import org.apache.kafka.clients.consumer.Consumer; import org.apache.kafka.clients.producer.Producer; import org.apache.kafka.streams.processor.internals.DefaultKafkaClientSupplier; -import org.commonjava.indy.subsys.trace.config.IndyTraceConfiguration; -import org.commonjava.o11yphant.otel.OtelUtil; import javax.enterprise.context.ApplicationScoped; -import javax.inject.Inject; import java.util.Map; @ApplicationScoped public class TracingKafkaClientSupplier extends DefaultKafkaClientSupplier { - @Inject - IndyTraceConfiguration traceConfiguration; - @Override public Producer getProducer( Map config ) { - KafkaTelemetry telemetry = KafkaTelemetry.create( getOpentelemetry() ); - return telemetry.wrap( super.getProducer( config ) ); + return super.getProducer( config ); } @Override public Consumer getConsumer( Map config ) { - KafkaTelemetry telemetry = KafkaTelemetry.create( getOpentelemetry() ); - return telemetry.wrap( super.getConsumer( config ) ); + return super.getConsumer( config ); } @Override @@ -59,9 +49,4 @@ public Consumer getGlobalConsumer( Map config ) { return this.getConsumer( config ); } - - private OpenTelemetry getOpentelemetry() - { - return OtelUtil.getOpenTelemetry( traceConfiguration, traceConfiguration ); - } } diff --git a/subsys/metrics/pom.xml b/subsys/metrics/pom.xml index ede9c31214..5cf056c90c 100644 --- a/subsys/metrics/pom.xml +++ b/subsys/metrics/pom.xml @@ -27,14 +27,6 @@ indy-subsys-metrics - - org.commonjava.util - o11yphant-metrics-common - - - org.commonjava.util - o11yphant-metrics-core - org.apache.commons commons-lang3 diff --git a/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyGoldenSignalsMetricSet.java b/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyGoldenSignalsMetricSet.java index 42d5f13a6b..60a32f7a34 100644 --- a/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyGoldenSignalsMetricSet.java +++ b/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyGoldenSignalsMetricSet.java @@ -15,8 +15,6 @@ */ package org.commonjava.indy.subsys.metrics; -import org.commonjava.o11yphant.metrics.sli.GoldenSignalsMetricSet; - import javax.enterprise.context.ApplicationScoped; import java.util.Arrays; import java.util.Collection; @@ -25,9 +23,7 @@ @ApplicationScoped public class IndyGoldenSignalsMetricSet - extends GoldenSignalsMetricSet { - @Override protected Collection getFunctions() { return Arrays.asList( FUNCTIONS ); diff --git a/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyMetricsStartupAction.java b/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyMetricsStartupAction.java index bd86fdea26..4499f8c3f3 100644 --- a/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyMetricsStartupAction.java +++ b/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyMetricsStartupAction.java @@ -17,28 +17,16 @@ import org.commonjava.indy.action.IndyLifecycleException; import org.commonjava.indy.action.StartupAction; -import org.commonjava.o11yphant.metrics.reporter.ReporterInitializer; import javax.enterprise.context.ApplicationScoped; -import javax.inject.Inject; @ApplicationScoped public class IndyMetricsStartupAction implements StartupAction { - @Inject - private ReporterInitializer reporterInitializer; - @Override public void start() throws IndyLifecycleException { - try - { - reporterInitializer.init(); - } - catch ( Exception e ) - { - throw new IndyLifecycleException( "Failed to setup metrics!", e ); - } + // metrics reporter initialization removed } @Override diff --git a/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyTrafficClassifier.java b/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyTrafficClassifier.java index 05165fcbdf..5f741863ea 100644 --- a/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyTrafficClassifier.java +++ b/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyTrafficClassifier.java @@ -26,12 +26,11 @@ import org.commonjava.maven.galley.model.Location; import org.commonjava.maven.galley.model.SpecialPathInfo; import org.commonjava.maven.galley.spi.io.SpecialPathManager; -import org.commonjava.o11yphant.metrics.AbstractTrafficClassifier; - import javax.enterprise.context.ApplicationScoped; import javax.inject.Inject; import java.util.ArrayList; +import java.util.Arrays; import java.util.HashSet; import java.util.List; import java.util.Map; @@ -59,8 +58,10 @@ @ApplicationScoped public class IndyTrafficClassifier - extends AbstractTrafficClassifier { + protected static final Set MODIFY_METHODS = + new HashSet<>( Arrays.asList( "PUT", "POST", "DELETE", "PATCH" ) ); + private static final Set FOLO_RECORD_ENDPOINTS = new HashSet<>( asList( "record", "report" ) ); private static final Set DEPRECATED_CONTENT_ENDPOINTS = diff --git a/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyTransportMetricConfigProducer.java b/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyTransportMetricConfigProducer.java deleted file mode 100644 index 9fb6f5d633..0000000000 --- a/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/IndyTransportMetricConfigProducer.java +++ /dev/null @@ -1,120 +0,0 @@ -/** - * Copyright (C) 2011-2023 Red Hat, Inc. (https://github.com/Commonjava/indy) - * - * Licensed 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. - */ -package org.commonjava.indy.subsys.metrics; - -import org.commonjava.indy.subsys.metrics.conf.IndyMetricsConfig; -import org.commonjava.maven.galley.config.TransportMetricConfig; -import org.commonjava.maven.galley.model.Location; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import javax.enterprise.context.ApplicationScoped; -import javax.enterprise.inject.Produces; -import javax.inject.Inject; -import java.util.ArrayList; -import java.util.List; - -import static org.apache.commons.lang3.StringUtils.isNotBlank; -import static org.commonjava.indy.model.core.StoreType.remote; -import static org.commonjava.indy.pkg.maven.model.MavenPackageTypeDescriptor.MAVEN_PKG_KEY; - -@ApplicationScoped -public class IndyTransportMetricConfigProducer -{ - private final Logger logger = LoggerFactory.getLogger( getClass() ); - - @Inject - private IndyMetricsConfig config; - - private TransportMetricConfig transportMetricConfig; - - @Produces - public TransportMetricConfig getTransportMetricConfig() - { - if ( config.isMeasureTransport() ) - { - setUpTransportMetricConfig(); - } - - return transportMetricConfig; - } - - private void setUpTransportMetricConfig() - { - logger.info( "Adding transport metrics to registry" ); - final String measureRepos = config.getMeasureTransportRepos(); - final List list = new ArrayList<>(); - if ( isNotBlank( measureRepos ) ) - { - String[] toks = measureRepos.split( "," ); - for ( String s : toks ) - { - s = s.trim(); - if ( isNotBlank( s ) ) - { - if ( s.indexOf( ":" ) < 0 ) - { - s = MAVEN_PKG_KEY + ":" + remote.singularEndpointName() + ":" + s; // use default - } - list.add( s ); - } - } - } - transportMetricConfig = new TransportMetricConfig() - { - @Override - public boolean isEnabled() - { - return true; - } - - @Override - public String getNodePrefix() - { - return config.getNodePrefix(); - } - - @Override - public String getMetricUniqueName( Location location ) - { - String locationName = location.getName(); - for ( String s : list ) - { - if ( s.equals( locationName ) ) - { - return normalizeName( s ); - } - - if ( s.endsWith( "*" ) ) // handle wildcard - { - String prefix = s.substring( 0, s.length() - 1 ); - if ( locationName.startsWith( prefix ) ) - { - return normalizeName( prefix ); - } - } - } - return null; - } - }; - } - - private String normalizeName( String name ) - { - return name.replaceAll( ":", "." ); - } - -} diff --git a/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/conf/IndyMetricsConfig.java b/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/conf/IndyMetricsConfig.java index fd9ec48f96..72691c6278 100644 --- a/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/conf/IndyMetricsConfig.java +++ b/subsys/metrics/src/main/java/org/commonjava/indy/subsys/metrics/conf/IndyMetricsConfig.java @@ -16,11 +16,6 @@ package org.commonjava.indy.subsys.metrics.conf; import org.commonjava.indy.conf.IndyConfigInfo; -import org.commonjava.o11yphant.metrics.conf.ConsoleConfig; -import org.commonjava.o11yphant.metrics.conf.ELKConfig; -import org.commonjava.o11yphant.metrics.conf.GraphiteConfig; -import org.commonjava.o11yphant.metrics.conf.MetricsConfig; -import org.commonjava.o11yphant.metrics.conf.PrometheusConfig; import org.commonjava.propulsor.config.annotation.ConfigName; import org.commonjava.propulsor.config.annotation.SectionName; @@ -33,7 +28,7 @@ @SectionName( SECTION ) @ApplicationScoped public class IndyMetricsConfig - implements IndyConfigInfo, MetricsConfig + implements IndyConfigInfo { public static final String SECTION = "metrics"; @@ -235,13 +230,11 @@ public void setMeterRatio( int meterRatio ) this.meterRatio = meterRatio; } - @Override public int getMeterRatio() { return meterRatio == null ? DEFAULT_METER_RATIO : meterRatio; } - @Override public String getReporter() { return reporter; @@ -344,52 +337,6 @@ public String getIspnGauges() return ispnGauges; } - @Override - public ConsoleConfig getConsoleConfig() - { - ConsoleConfig ret = new ConsoleConfig(); - ret.setConsolePeriodInSeconds( consolePeriod ); - return ret; - } - - @Override - public GraphiteConfig getGraphiteConfig() - { - GraphiteConfig ret = new GraphiteConfig(); - ret.setGraphiteHostName( graphiteHostName ); - ret.setGraphitePort( graphitePort ); - ret.setGraphitePeriodInSeconds( graphiteSimplePeriod ); - ret.setGraphitePrefix( graphitePrefix ); - ret.setGraphiteJVMPeriodInSeconds( graphiteJVMPeriod ); - ret.setGraphiteHealthcheckPeriodInSeconds( graphiteHealthcheckPeriod ); - return ret; - } - - @Override - public ELKConfig getELKConfig() - { - ELKConfig ret = new ELKConfig(); - ret.setElkHosts( elkHosts ); - ret.setElkIndex( elkIndex ); - ret.setElkPeriodInSeconds( elkSimplePeriod ); - ret.setElkJVMPeriodInSeconds( elkJVMPeriod ); - ret.setElkPrefix( elkPrefix ); - ret.setElkHealthCheckPeriodInSeconds( elkHealthCheckPeriod ); - return ret; - } - - public PrometheusConfig getPrometheusConfig() - { - PrometheusConfig ret = new PrometheusConfig(); - ret.setNodeLabel( prometheusNodeLabel ); - if ( prometheusExpressedMetrics != null ) - { - ret.setExpressedMetrics( Arrays.asList( prometheusExpressedMetrics.split( "," ) ) ); - } - - return ret; - } - public String getDefaultConfigFileName() { return "conf.d/metrics.conf"; diff --git a/subsys/metrics/src/main/resources/META-INF/beans.xml b/subsys/metrics/src/main/resources/META-INF/beans.xml index 4c97b74b34..25aab64176 100644 --- a/subsys/metrics/src/main/resources/META-INF/beans.xml +++ b/subsys/metrics/src/main/resources/META-INF/beans.xml @@ -1,7 +1,4 @@ - - org.commonjava.o11yphant.metrics.interceptor.DefaultMetricsInterceptor - \ No newline at end of file diff --git a/subsys/trace/pom.xml b/subsys/trace/pom.xml index fd49c68f2b..1e331f3189 100644 --- a/subsys/trace/pom.xml +++ b/subsys/trace/pom.xml @@ -28,18 +28,6 @@ Indy :: Subsystems :: Trace - - org.commonjava.util - o11yphant-trace-api - - - org.commonjava.util - o11yphant-trace-core - - - org.commonjava.util - o11yphant-trace-otel - com.google.guava guava diff --git a/subsys/trace/src/main/java/org/commonjava/indy/subsys/trace/TraceManagerProducer.java b/subsys/trace/src/main/java/org/commonjava/indy/subsys/trace/TraceManagerProducer.java index 6b35144178..29148fdf94 100644 --- a/subsys/trace/src/main/java/org/commonjava/indy/subsys/trace/TraceManagerProducer.java +++ b/subsys/trace/src/main/java/org/commonjava/indy/subsys/trace/TraceManagerProducer.java @@ -15,90 +15,25 @@ */ package org.commonjava.indy.subsys.trace; -import org.commonjava.indy.subsys.metrics.IndyTrafficClassifier; import org.commonjava.indy.subsys.trace.config.IndyTraceConfiguration; -import org.commonjava.o11yphant.otel.OtelTracePlugin; -import org.commonjava.o11yphant.trace.SpanFieldsDecorator; -import org.commonjava.o11yphant.trace.TraceManager; -import org.commonjava.o11yphant.trace.spi.O11yphantTracePlugin; -import org.commonjava.o11yphant.trace.spi.SpanFieldsInjector; -import org.commonjava.o11yphant.trace.thread.TraceThreadContextualizer; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.annotation.PostConstruct; import javax.enterprise.context.ApplicationScoped; -import javax.enterprise.inject.Default; -import javax.enterprise.inject.Instance; -import javax.enterprise.inject.Produces; import javax.inject.Inject; -import java.util.ArrayList; -import java.util.List; @ApplicationScoped public class TraceManagerProducer { - private TraceManager traceManager; - - private TraceThreadContextualizer traceThreadContextualizer; - @Inject private IndyTraceConfiguration config; - @Inject - private IndyTrafficClassifier trafficClassifier; - - @Inject - private Instance rsfInstance; - private final Logger logger = LoggerFactory.getLogger( getClass() ); @PostConstruct public void init() { - logger.info( "Initializing OpenTelemetry trace plugin" ); - O11yphantTracePlugin plugin; - - try - { - plugin = new OtelTracePlugin( config, config ); - } - catch ( Exception | Error e ) - { - logger.warn( "Failed to initialize OpenTelemetry trace plugin. " + - "This is likely due to OpenTelemetry collector being unavailable or a library version mismatch. " + - "Tracing will be disabled. Error: {}", e.getMessage(), e ); - - // Disable tracing and recreate plugin in disabled mode - config.setEnabled( false ); - plugin = new OtelTracePlugin( config, config ); - } - - traceManager = new TraceManager( plugin, new SpanFieldsDecorator( getRootSpanFields() ), config ); - traceThreadContextualizer = traceManager.getTraceThreadContextualizer(); - } - - @Produces - @Default - public TraceThreadContextualizer getTraceThreadContextualizer() - { - return traceThreadContextualizer; - } - - @Produces - @Default - public TraceManager getTraceManager() - { - return traceManager; - } - - private List getRootSpanFields() - { - List result = new ArrayList<>(); - if ( !rsfInstance.isUnsatisfied() ) - { - rsfInstance.forEach( result::add ); - } - return result; + logger.info( "Trace manager producer initialized" ); } } diff --git a/subsys/trace/src/main/java/org/commonjava/indy/subsys/trace/config/IndyTraceConfiguration.java b/subsys/trace/src/main/java/org/commonjava/indy/subsys/trace/config/IndyTraceConfiguration.java index 621c481b0d..118c7b38bc 100644 --- a/subsys/trace/src/main/java/org/commonjava/indy/subsys/trace/config/IndyTraceConfiguration.java +++ b/subsys/trace/src/main/java/org/commonjava/indy/subsys/trace/config/IndyTraceConfiguration.java @@ -18,8 +18,6 @@ import org.commonjava.indy.conf.IndyConfigInfo; import org.commonjava.indy.conf.IndyConfiguration; import org.commonjava.indy.subsys.trace.TracerPlugin; -import org.commonjava.o11yphant.otel.OtelConfiguration; -import org.commonjava.o11yphant.trace.TracerConfiguration; import org.commonjava.propulsor.config.ConfigurationException; import org.commonjava.propulsor.config.annotation.SectionName; import org.commonjava.propulsor.config.section.MapSectionListener; @@ -39,7 +37,7 @@ @ApplicationScoped public class IndyTraceConfiguration extends MapSectionListener - implements IndyConfigInfo, TracerConfiguration, OtelConfiguration + implements IndyConfigInfo { private static final TracerPlugin DEFAULT_TRACER = TracerPlugin.honeycomb; @@ -70,6 +68,10 @@ public class IndyTraceConfiguration private static final Integer DEFAULT_BASE_SAMPLE_RATE = 100; + private static final Set DEFAULT_FIELDS = Collections.emptySet(); + + private static final String DEFAULT_GRPC_URI = "http://localhost:4317"; + private boolean enabled; private TracerPlugin tracer; @@ -96,13 +98,11 @@ public IndyTraceConfiguration() { } - @Override public Map getSpanRates() { return spanRates; } - @Override public boolean isEnabled() { return enabled; @@ -113,13 +113,11 @@ public void setEnabled( boolean enabled ) this.enabled = enabled; } - @Override public boolean isConsoleTransport() { return consoleTransport; } - @Override public String getServiceName() { return "indy"; @@ -200,49 +198,41 @@ public InputStream getDefaultConfig() return Thread.currentThread().getContextClassLoader().getResourceAsStream( "default-trace.conf" ); } - @Override public Integer getBaseSampleRate() { return baseSampleRate == null ? DEFAULT_BASE_SAMPLE_RATE : baseSampleRate; } - @Override public Set getFieldSet() { return fields == null ? DEFAULT_FIELDS : fields; } - @Override public String getEnvironmentMappings() { return environmentMappings; } - @Override public String getCPNames() { return cpNames; } - @Override public String getNodeId() { return indyConfiguration.getNodeId(); } - @Override public Map getGrpcHeaders() { return grpcHeaders; } - @Override public Map getResources() { return grpcResources; } - @Override public String getGrpcEndpointUri() { return grpcUri == null ? DEFAULT_GRPC_URI : grpcUri; From 3d60499535429e39ae2d8decc50152e982b455e0 Mon Sep 17 00:00:00 2001 From: Lianghui Yu Date: Tue, 31 Mar 2026 16:48:03 +0800 Subject: [PATCH 2/3] Bump up released libs to latest version --- pom.xml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index 766e0e82f7..b43088a917 100644 --- a/pom.xml +++ b/pom.xml @@ -97,7 +97,7 @@ 1.19.0-alpha 3.7.1.0 3.12.1 - 3.2-SNAPSHOT + 3.2 1.6.6 1.16 3.0.13 @@ -106,15 +106,15 @@ 1.5 3.4.4 - 1.1.4 + 1.2.2 1.22-SNAPSHOT - 1.26-SNAPSHOT + 1.26 3.2.1 - 1.16 + 2.4 2.26-SNAPSHOT 2.3 - 1.15 + 1.17 1.5.1 1.5 0.13.1 From 342e8bdfcfaff7b18ffab9ee7485d810de087c6b Mon Sep 17 00:00:00 2001 From: Lianghui Yu Date: Tue, 31 Mar 2026 18:27:08 +0800 Subject: [PATCH 3/3] update galley version to released version --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 2ca1944504..1a123cb57a 100644 --- a/pom.xml +++ b/pom.xml @@ -107,7 +107,7 @@ 1.5 3.4.4 1.2.2 - 1.22-SNAPSHOT + 1.22 1.26 3.2.1