public MailAlerter() { this(Stagemonitor.getPlugin(AlertingPlugin.class)); }
/** * @deprecated use {@link #getPlugin(Class)} */ @Deprecated public static <T extends StagemonitorPlugin> T getConfiguration(Class<T> plugin) { return getPlugin(plugin); }
public LogAlerter() { this(Stagemonitor.getPlugin(AlertingPlugin.class), LoggerFactory.getLogger(LogAlerter.class)); }
public PushbulletAlerter() { this(Stagemonitor.getPlugin(AlertingPlugin.class), new HttpClient()); }
public AlerterTypeServlet() { this(Stagemonitor.getPlugin(AlertingPlugin.class), Stagemonitor.getMeasurementSession()); }
private static void initializePlugins() { final CorePlugin corePlugin = getPlugin(CorePlugin.class); final Collection<String> disabledPlugins = corePlugin.getDisabledPlugins(); pathsOfWidgetMetricTabPlugins = new CopyOnWriteArrayList<String>(); pathsOfWidgetTabPlugins = new CopyOnWriteArrayList<String>(); initializePluginsInOrder(disabledPlugins, plugins); }
private static void startMonitoring(MeasurementSession measurementSession) { if (!getPlugin(CorePlugin.class).isStagemonitorActive()) { logger.info("stagemonitor is deactivated"); disabled = true; } if (started || disabled) { return; } Stagemonitor.measurementSession = measurementSession; doStartMonitoring(); }
private static void initIncludesAndExcludes() { CorePlugin corePlugin = Stagemonitor.getPlugin(CorePlugin.class); excludeContaining = new ArrayList<String>(corePlugin.getExcludeContaining().size()); excludeContaining.addAll(corePlugin.getExcludeContaining()); excludes = new ArrayList<String>(corePlugin.getExcludePackages().size()); excludes.add("org.stagemonitor"); excludes.addAll(corePlugin.getExcludePackages()); includes = new ArrayList<String>(corePlugin.getIncludePackages().size()); includes.addAll(corePlugin.getIncludePackages()); if (includes.isEmpty()) { logger.warn("No includes for instrumentation configured. Please set the stagemonitor.instrument.include property."); } }
public void rebuildJavaScriptAndEtag() { List<ClientSpanExtension> clientSpanExtensions = Stagemonitor.getPlugin(ServletPlugin.class).getClientSpanExtenders(); javaScript = concatenateJavaScript(clientSpanExtensions); javaScriptEtag = generateEtag(javaScript); log.info("built new end user monitoring JavaScript, size={} bytes, etag={}", javaScript.length(), javaScriptEtag); }
public static void registerStagemonitorServletContainerInitializers(ServletContext servletContext) { if (!Stagemonitor.getPlugin(CorePlugin.class).isStagemonitorActive()) { return; } for (StagemonitorServletContainerInitializer sci : getStagemonitorSCIs()) { try { sci.onStartup(servletContext); } catch (ServletException e) { logger.warn("Ignored exception:", e); } } }
/** * Returns the signature of the method inside the monitored codebase which was last executed. */ public static String getCallerSignature() { if (Stagemonitor.getPlugin(CorePlugin.class).getIncludePackages().isEmpty()) { return null; } if (javaLangAccessObject != null) { return getCallerSignatureSharedSecrets(); } else { return getCallerSignatureGetStackTrace(); } }
@Advice.OnMethodExit(inline = false) public static void onInterceptingHttpAccessorCreated(@Advice.This InterceptingHttpAccessor httpAccessor) { final TracingPlugin tracingPlugin = Stagemonitor.getPlugin(TracingPlugin.class); httpAccessor.getInterceptors().add(new SpringRestTemplateContextPropagatingInterceptor(tracingPlugin)); }
@Advice.OnMethodExit(onThrowable = Throwable.class, inline = false) public static void monitorStop(@Advice.Thrown Throwable exception) { final RequestMonitor requestMonitor = Stagemonitor.getPlugin(TracingPlugin.class).getRequestMonitor(); if (exception != null && exception instanceof Exception) { requestMonitor.recordException((Exception) exception); } requestMonitor.monitorStop(); }
@Override public void onStartup(ServletContext ctx) { if (ServletContainerInitializerUtil.avoidDoubleInit(this, ctx)) return; final AlertingPlugin alertingPlugin = Stagemonitor.getPlugin(AlertingPlugin.class); ctx.addServlet(AlerterTypeServlet.class.getSimpleName(), new AlerterTypeServlet(alertingPlugin, Stagemonitor.getMeasurementSession())) .addMapping("/stagemonitor/alerter-types"); ctx.addServlet(IncidentServlet.class.getSimpleName(), new IncidentServlet(alertingPlugin)) .addMapping("/stagemonitor/incidents"); ctx.addServlet(TestAlertSenderServlet.class.getSimpleName(), new TestAlertSenderServlet()) .addMapping("/stagemonitor/test-alert"); } }
@Before public void setUp() throws Exception { metric2Registry = Stagemonitor.getMetric2Registry(); metric2Registry.removeMatching(MetricFilter.ALL); try (final Connection connection = dataSource.getConnection()) { connection.prepareStatement("CREATE TABLE IF NOT EXISTS STAGEMONITOR (FOO INT)").execute(); connection.prepareStatement("INSERT INTO STAGEMONITOR (FOO) VALUES (1)").execute(); } requestMonitor = Stagemonitor.getPlugin(TracingPlugin.class).getRequestMonitor(); configuration = Stagemonitor.getConfiguration(); testDao = new TestDao(dataSource); }
public static void setRequestNameByHandler(Object handler) { final Scope activeScope = GlobalTracer.get().scopeManager().active(); if (activeScope != null) { final BusinessTransactionNamingStrategy namingStrategy = Stagemonitor.getPlugin(TracingPlugin.class) .getBusinessTransactionNamingStrategy(); final String requestNameFromHandler = getRequestNameFromHandler(handler, namingStrategy); if (requestNameFromHandler != null) { final Span span = activeScope.span(); span.setTag(MetricsSpanEventListener.ENABLE_TRACKING_METRICS_TAG, true); span.setOperationName(requestNameFromHandler); } } }
@Before public void setUp() throws Exception { assertThat(GlobalTracer.get().scopeManager().active()).isNull(); spanCapturingReporter = new SpanCapturingReporter(); Stagemonitor.getPlugin(TracingPlugin.class).addReporter(spanCapturingReporter); }
@Before public void before() throws Exception { GlobalTracerTestHelper.resetGlobalTracer(); testClass = new TestSubClass(); metricRegistry = Stagemonitor.getMetric2Registry(); testClassLevelAnnotationClass = new TestClassLevelAnnotationClass(); metricRegistry.removeMatching(Metric2Filter.ALL); Stagemonitor.reset(new MeasurementSession("TracedTransformerTest", "test", "test")); spanCapturingReporter = new SpanCapturingReporter(); tags = new HashMap<>(); Stagemonitor.getPlugin(TracingPlugin.class).addSpanEventListenerFactory(new TagRecordingSpanEventListener(tags)); Stagemonitor.getPlugin(TracingPlugin.class).addReporter(spanCapturingReporter); assertThat(GlobalTracer.get().scopeManager().active()).isNull(); }