agent/native/ext/ConfigSnapshot.h (71 lines of code) (raw):

/* * Licensed to Elasticsearch B.V. under one or more contributor * license agreements. See the NOTICE file distributed with * this work for additional information regarding copyright * ownership. Elasticsearch B.V. licenses this file to you under * the Apache License, Version 2.0 (the "License"); you may * not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. */ #pragma once #include "ConfigSnapshot_forward_decl.h" #include <stdbool.h> #include "basic_types.h" // String #include "LogLevel.h" #include "OptionalBool.h" #include "time_util.h" // Duration #include "elastic_apm_assert_enabled.h" struct ConfigSnapshot { bool abortOnMemoryLeak = false; #ifdef PHP_WIN32 bool allowAbortDialog; #endif #if ( ELASTIC_APM_ASSERT_ENABLED_01 != 0 ) AssertLevel assertLevel = assertLevel_off; #endif String apiKey = nullptr; bool astProcessEnabled = false; bool astProcessDebugDumpConvertedBackToSource = false; String astProcessDebugDumpForPathPrefix = nullptr; String astProcessDebugDumpOutDir = nullptr; OptionalBool asyncBackendComm = {false, false}; String bootstrapPhpPartFile = nullptr; bool breakdownMetrics = false; bool captureErrors = false; String devInternal = nullptr; bool devInternalBackendCommLogVerbose = false; String disableInstrumentations = nullptr; bool disableSend = false; bool enabled = false; String environment = nullptr; String globalLabels = nullptr; String hostname = nullptr; InternalChecksLevel internalChecksLevel = internalChecksLevel_off; String logFile = nullptr; LogLevel logLevel = logLevel_off; LogLevel logLevelFile = logLevel_off; LogLevel logLevelStderr = logLevel_off; #ifndef PHP_WIN32 LogLevel logLevelSyslog = logLevel_off; #endif #ifdef PHP_WIN32 LogLevel logLevelWinSysDebug = logLevel_off; #endif #if ( ELASTIC_APM_MEMORY_TRACKING_ENABLED_01 != 0 ) MemoryTrackingLevel memoryTrackingLevel = memoryTrackingLevel_off; #endif String nonKeywordStringMaxLength = nullptr; bool profilingInferredSpansEnabled = false; String profilingInferredSpansMinDuration = nullptr; String profilingInferredSpansSamplingInterval = nullptr; String sanitizeFieldNames = nullptr; String secretToken = nullptr; String serverUrl = nullptr; Duration serverTimeout; String serviceName = nullptr; String serviceNodeName = nullptr; String serviceVersion = nullptr; bool spanCompressionEnabled = false; String spanCompressionExactMatchMaxDuration = nullptr; String spanCompressionSameKindMaxDuration = nullptr; String spanStackTraceMinDuration = nullptr; String stackTraceLimit = nullptr; String transactionIgnoreUrls = nullptr; String transactionMaxSpans = nullptr; String transactionSampleRate = nullptr; String urlGroups = nullptr; bool verifyServerCert = false; String debugDiagnosticsFile = nullptr; };