#
# Pinpoint agent configuration with low overhead for real time
#

###########################################################
# Collector server                                        # 
###########################################################
profiler.collector.ip=127.0.0.1

# placeHolder support "${key}"
profiler.collector.span.ip=${profiler.collector.ip}
profiler.collector.span.port=9996

# placeHolder support "${key}"
profiler.collector.stat.ip=${profiler.collector.ip}
profiler.collector.stat.port=9995

# placeHolder support "${key}"
profiler.collector.tcp.ip=${profiler.collector.ip}
profiler.collector.tcp.port=9994

###########################################################
# Profiler Global Configuration                           # 
###########################################################
profiler.enable=true

# Application namespace
# Differentiate from external pinpoint agents. (e.g., com.pinpoint)
profiler.application.namespace=

profiler.interceptorregistry.size=8192
profiler.jvm.collect.interval=1000

# Allow sampling.
profiler.sampling.enable=true

# 1 out of n transactions will be sampled where n is the rate. (20: 5%)
profiler.sampling.rate=20

# Allow buffering when flushing span to IO.
profiler.io.buffering.enable=true

# How many spans to store if buffering enabled.
profiler.io.buffering.buffersize=20

###########################################################
# Base Tcp Sender                                        #
###########################################################
# Allow TCP data command.
profiler.tcpdatasender.command.accept.enable=true
profiler.tcpdatasender.command.activethread.enable=true
profiler.tcpdatasender.command.activethread.count.enable=true
profiler.tcpdatasender.command.activethread.threaddump.enable=false
profiler.tcpdatasender.command.activethread.threadlightdump.enable=true

profiler.tcpdatasender.client.write.timeout=3000
profiler.tcpdatasender.client.request.timeout=3000
profiler.tcpdatasender.client.reconnect.interval=3000
profiler.tcpdatasender.client.ping.interval=300000
profiler.tcpdatasender.client.handshake.interval=60000

profiler.tcpdatasender.client.write.buffer.highwatermark=32m
profiler.tcpdatasender.client.write.buffer.lowwatermark=16m

# Interval to retry sending agent info. Unit is milliseconds.
profiler.agentInfo.send.retry.interval=300000


###########################################################
# Stat Data Sender                                        #
###########################################################
# Should keep in mind
# 1. Loadbancing : TCP transport load balancing is per connection.(UDP transport loadbalancing is per packet)
# 2. In unexpected situations, UDP has its own protection feature (like packet loss etc.), but tcp does not have such a feature. (We will add protection later)
profiler.statdatasender.transport.type=UDP

# These settings are active only when using UDP.
# Capacity of the StatDataSender write queue.
profiler.statdatasender.write.queue.size=5120
#profiler.statdatasender.socket.sendbuffersize=1048576
#profiler.statdatasender.socket.timeout=3000
profiler.statdatasender.chunk.size=16384
profiler.statdatasender.socket.type=OIO

# These settings are active only when using TCP.
profiler.statdatasender.write.buffer.highwatermark=16m
profiler.statdatasender.write.buffer.lowwatermark=8m


###########################################################
# Span Data Sender                                        #
###########################################################
# Should keep in mind
# 1. Loadbancing : TCP transport load balancing is per connection.(UDP transport loadbalancing is per packet)
# 2. In unexpected situations, UDP has its own protection feature (like packet loss etc.), but tcp does not have such a feature. (We will add protection later)
profiler.spandatasender.transport.type=UDP

# These settings are active only when using UDP.
# Capacity of the SpanDataSender write queue.
profiler.spandatasender.write.queue.size=5120
#profiler.spandatasender.socket.sendbuffersize=1048576
#profiler.spandatasender.socket.timeout=3000
profiler.spandatasender.chunk.size=16384

# These settings are active only when using TCP.
profiler.spandatasender.write.buffer.highwatermark=16m
profiler.spandatasender.write.buffer.lowwatermark=8m


## Call Stack
# Set max depth, if -1 is unlimited and min is 2.
profiler.callstack.max.depth=64

# weather or not to propagate exceptions occurred at interceptor
profiler.interceptor.exception.propagate=false

# Allow bytecode framework (ASM only)
profiler.instrument.engine=ASM

# java bytecode dump option
bytecode.dump.enable=false
#bytecode.dump.classlist=com.pinpoint.user.UserService,com.pinpoint.debug.TestClass
bytecode.dump.classlist=
bytecode.dump.bytecode=false
bytecode.dump.verify=false
bytecode.dump.asm=false

# Matcher
profiler.instrument.matcher.enable=true
# Matcher cache. max size is 64.
profiler.instrument.matcher.interface.cache.size=4
profiler.instrument.matcher.interface.cache.entry.size=16
profiler.instrument.matcher.annotation.cache.size=4
profiler.instrument.matcher.annotation.cache.entry.size=4
profiler.instrument.matcher.super.cache.size=4
profiler.instrument.matcher.super.cache.entry.size=4

# Lambda expressions.
profiler.lambda.expressions.support=true

# Proxy HTTP headers.
# Please see (https://github.com/naver/pinpoint/blob/master/doc/proxy-http-header.md) for more information.
profiler.proxy.http.header.enable=true

# HTTP status code with request failure.
# 1xx, 2xx, 3xx, 4xx, 5xx, 100, 101, 200, 201, ... 501, 502, 503, 504, 505
# e.g. profiler.http.status.code.errors=5xx, 401, 403
profiler.http.status.code.errors=5xx

###########################################################
# application type                                        # 
###########################################################
#profiler.applicationservertype=TOMCAT
#profiler.applicationservertype=BLOC

###########################################################
# application type detect order                           # 
###########################################################
profiler.type.detect.order=

profiler.plugin.disable=

###########################################################
# user defined classes                                    # 
###########################################################
# Specify classes and methods you want to profile here.

# Needs to be a comma separated list of fully qualified class names, or fully qualified package names with wild card class.
profiler.include=
# Ex: foo.bar.MyClass, foo.baz.*

# Needs to be a comma separated list of fully qualified method names. Wild card not supported.
profiler.entrypoint=
# Ex: foo.bar.MyClass.myMethod, foo.bar.MyClass.anotherMethod

###########################################################
# TOMCAT                                                  #
###########################################################
profiler.tomcat.enable=true
# Classes for detecting application server type. Comma separated list of fully qualified class names. Wildcard not supported.
profiler.tomcat.bootstrap.main=org.apache.catalina.startup.Bootstrap
# Check pre-conditions when registering class file transformers mainly due to JBoss plugin transforming the same class.
# Setting this to true currently adds transformers only if the application was launched via org.apache.catalina.startup.Bootstrap,
# or SpringBoot's launchers.
# Set this to false to bypass this check entirely (such as when launching standalone applications running embedded Tomcat).
profiler.tomcat.conditional.transform=true
# Hide pinpoint headers.
profiler.tomcat.hidepinpointheader=true
# URLs to exclude from tracing
profiler.tomcat.excludeurl=/aa/test.html, /bb/exclude.html
profiler.tomcat.tracerequestparam=true
# HTTP Request methods to exclude from tracing
#profiler.tomcat.excludemethod=POST,PUT

# original IP address header
# https://en.wikipedia.org/wiki/X-Forwarded-For
#profiler.tomcat.realipheader=X-Forwarded-For
# nginx real ip header
#profiler.tomcat.realipheader=X-Real-IP
# optional parameter, If the header value is ${profiler.tomcat.realipemptyvalue}, Ignore header value.
#profiler.tomcat.realipemptyvalue=unknown


###########################################################
# JETTY                                                   #
###########################################################
profiler.jetty.enable=true
# Classes for detecting application server type. Comma separated list of fully qualified class names. Wildcard not supported.
profiler.jetty.bootstrap.main=org.eclipse.jetty.start.Main
# URLs to exclude from tracing
profiler.jetty.excludeurl=
# HTTP Request methods to exclude from tracing
#profiler.jetty.excludemethod=
# Hide pinpoint headers.
profiler.jetty.hide-pinpoint-header=true
profiler.jetty.tracerequestparam=true

# original IP address header
# https://en.wikipedia.org/wiki/X-Forwarded-For
#profiler.jetty.realipheader=X-Forwarded-For
# nginx real ip header
#profiler.jetty.realipheader=X-Real-IP
# optional parameter, If the header value is ${profiler.jetty.realipemptyvalue}, Ignore header value.
#profiler.jetty.realipemptyvalue=unknown

###########################################################
# DUBBO                                                   #
###########################################################
profiler.dubbo.enable=true
# Classes for detecting application server type. Comma separated list of fully qualified class names. Wildcard not supported.
profiler.dubbo.bootstrap.main=com.alibaba.dubbo.container.Main


###########################################################
# JBOSS                                                   #
###########################################################
profiler.jboss.enable=true
# Classes for detecting application server type. Comma separated list of fully qualified class names. Wildcard not supported.
profiler.jboss.bootstrap.main=org.jboss.modules.Main
# Check pre-conditions when registering class file transformers mainly due to Tomcat plugin transforming the same class.
# Setting this to true currently adds transformers only if the application was launched via org.jboss.modules.Main.
# Set this to false to bypass this check entirely.
profiler.jboss.conditional.transform=true
# Hide pinpoint headers.
profiler.jboss.hidepinpointheader=true
# URLs to exclude from tracing
profiler.jboss.excludeurl=
# HTTP Request methods to exclude from tracing
#profiler.jboss.excludemethod=
profiler.jboss.tracerequestparam=true

# original IP address header
# https://en.wikipedia.org/wiki/X-Forwarded-For
#profiler.jboss.realipheader=X-Forwarded-For
# nginx real ip header
#profiler.jboss.realipheader=X-Real-IP
# optional parameter, If the header value is ${profiler.jboss.realipemptyvalue}, Ignore header value.
#profiler.jboss.realipemptyvalue=unknown

###########################################################
# Resin
###########################################################
# default enable resin plugin
profiler.resin.enable=true
# if empty , default value is : com.caucho.server.resin.Resin
profiler.resin.bootstrap.main=
# trace param in request  ,default value is true
profiler.resin.tracerequestparam=true
# URLs to exclude from tracing.
# Support ant style pattern. e.g. /aa/*.html, /??/exclude.html
profiler.resin.excludeurl=
# Hide pinpoint headers.
profiler.resin.hidepinpointheader=true
# HTTP Request methods to exclude from tracing
#profiler.resin.excludemethod=

# original IP address header
# https://en.wikipedia.org/wiki/X-Forwarded-For
#profiler.resin.realipheader=X-Forwarded-For
# nginx real ip header
#profiler.resin.realipheader=X-Real-IP
# optional parameter, If the header value is ${profiler.resin.realipemptyvalue}, Ignore header value.
#profiler.resin.realipemptyvalue=unknown

###########################################################
# Weblogic
###########################################################
profiler.weblogic.enable=true
# Classes for detecting application server type. Comma separated list of fully qualified class names. Wildcard not supported.
profiler.weblogic.bootstrap.main=weblogic.Server
# trace param in request  ,default value is true
profiler.weblogic.tracerequestparam=true
# URLs to exclude from tracing.
# Support ant style pattern. e.g. /aa/*.html, /??/exclude.html
profiler.weblogic.excludeurl=
# HTTP Request methods to exclude from tracing
#profiler.weblogic.excludemethod=

# original IP address header
# https://en.wikipedia.org/wiki/X-Forwarded-For
#profiler.weblogic.realipheader=X-Forwarded-For
# nginx real ip header
#profiler.weblogic.realipheader=X-Real-IP
# optional parameter, If the header value is ${profiler.weblogic.realipemptyvalue}, Ignore header value.
#profiler.weblogic.realipemptyvalue=unknown

###########################################################
# Vert.x(Reliability and stability can not be guaranteed) #
###########################################################
profiler.vertx.enable=false
# Classes for detecting application server type. Comma separated list of fully qualified class names. Wildcard not supported.
profiler.vertx.bootstrap.main=io.vertx.core.Starter
# Track Vertx.runOnContext() & Vertx.executeBlocking().
# Sets the base packages that implements io.vertx.core.Handler.
profiler.vertx.handler.base-packages=
# e.g. com.service.handler, com.server.http.handler

# HTTP server
profiler.vertx.http.server.enable=false
# Set HttpServerRequestHandler method name. The argument is io.vertx.core.http.HttpServerRequest.
profiler.vertx.http.server.request-handler.method.name=io.vertx.ext.web.impl.RouterImpl.accept
profiler.vertx.http.server.tracerequestparam=true
profiler.vertx.http.server.hidepinpointheader=true
# URLs to exclude from tracing
profiler.vertx.http.server.excludeurl=
# original IP address header
# https://en.wikipedia.org/wiki/X-Forwarded-For
#profiler.vertx.http.server.realipheader=X-Forwarded-For
# nginx real ip header
#profiler.vertx.http.realipheader=X-Real-IP
# optional parameter, If the header value is ${profiler.vertx.http.server.realipemptyvalue}, Ignore header value.
#profiler.vertx.http.server.realipemptyvalue=unknown
# HTTP Request methods to exclude from tracing
#profiler.vertx.http.server.excludemethod=

# HTTP client
profiler.vertx.http.client.enable=false
profiler.vertx.http.client.param=true
profiler.vertx.http.client.cookie=true
# When to dump cookies. Either ALWAYS or EXCEPTION.
profiler.vertx.http.client.cookie.dumptype=ALWAYS
# 1 out of n cookies will be sampled where n is the rate. (1: 100%)
profiler.vertx.http.client.cookie.sampling.rate=1
profiler.vertx.http.client.entity.statuscode=true

###########################################################
# Undertow
###########################################################
profiler.undertow.enable=true
# trace param in request  ,default value is true
profiler.undertow.tracerequestparam=true
# Hide pinpoint headers.
profiler.undertow.hidepinpointheader=true
# URLs to exclude from tracing.
# Support ant style pattern. e.g. /aa/*.html, /??/exclude.html
profiler.undertow.excludeurl=
# HTTP Request methods to exclude from tracing
#profiler.undertow.excludemethod=

# original IP address header
# https://en.wikipedia.org/wiki/X-Forwarded-For
#profiler.undertow.realipheader=X-Forwarded-For
# nginx real ip header
#profiler.undertow.realipheader=X-Real-IP
# optional parameter, If the header value is ${profiler.undertow.realipemptyvalue}, Ignore header value.
#profiler.undertow.realipemptyvalue=unknown

###########################################################
# SPRING BOOT                                             #
###########################################################
profiler.springboot.enable=true
# Classes for detecting application server type. Comma separated list of fully qualified class names. Wildcard not supported.
profiler.springboot.bootstrap.main=org.springframework.boot.loader.JarLauncher, org.springframework.boot.loader.WarLauncher, org.springframework.boot.loader.PropertiesLauncher

###########################################################
# JSP                                                     #
###########################################################
profiler.jsp.enable=true

###########################################################
# JDBC                                                    # 
###########################################################
# Profile JDBC drivers.
profiler.jdbc=true
# Size of cache. Fixed maximum.
profiler.jdbc.sqlcachesize=1024
# Maximum bindvalue size.
profiler.jdbc.maxsqlbindvaluesize=1024

#
# MYSQL
#
# Profile MySQL.
profiler.jdbc.mysql=true
# Allow profiling of setautocommit.
profiler.jdbc.mysql.setautocommit=false
# Allow profiling of commit.
profiler.jdbc.mysql.commit=false
# Allow profiling of rollback.
profiler.jdbc.mysql.rollback=false

#
# MARIADB
#
# Profile MariaDB
profiler.jdbc.mariadb=true
# Allow profiling of setautocommit.
profiler.jdbc.mariadb.setautocommit=false
# Allow profiling of commit.
profiler.jdbc.mariadb.commit=false
# Allow profiling of rollback.
profiler.jdbc.mariadb.rollback=false
# Trace bindvalues for MariaDB PreparedStatements (overrides profiler.jdbc.tracesqlbindvalue)
#profiler.jdbc.mariadb.tracesqlbindvalue=true
#
# MSSQL Jtds
#
# Profile jTDS.
profiler.jdbc.jtds=true
# Allow profiling of setautocommit.
profiler.jdbc.jtds.setautocommit=false
# Allow profiling of commit.
profiler.jdbc.jtds.commit=false
# Allow profiling of rollback.
profiler.jdbc.jtds.rollback=false

#
# Oracle
#
# Profile Oracle DB.
profiler.jdbc.oracle=true
# Allow profiling of setautocommit.
profiler.jdbc.oracle.setautocommit=false
# Allow profiling of commit.
profiler.jdbc.oracle.commit=false
# Allow profiling of rollback.
profiler.jdbc.oracle.rollback=false

#
# CUBRID
#
# Profile CUBRID.
profiler.jdbc.cubrid=true
# Allow profiling of setautocommit.
profiler.jdbc.cubrid.setautocommit=false
# Allow profiling of commit.
profiler.jdbc.cubrid.commit=false
# Allow profiling of rollback.
profiler.jdbc.cubrid.rollback=false

#
# DBCP
#
# Profile DBCP.
profiler.jdbc.dbcp=true
profiler.jdbc.dbcp.connectionclose=false

#
# DBCP2
#
# Profile DBCP2.
profiler.jdbc.dbcp2=true
profiler.jdbc.dbcp2.connectionclose=false

#
# HIKARICP
#
profiler.jdbc.hikaricp=true
profiler.jdbc.hikaricp.connectionclose=false

#
# DRUID
#
profiler.jdbc.druid=true
profiler.jdbc.druid.connectionclose=false

#
# CASSANDRA
#
# Profile CASSANDRA.
profiler.cassandra=true
# Trace bindvalues for CASSANDRA PreparedStatements (overrides profiler.jdbc.tracesqlbindvalue)
#profiler.cassandra.tracecqlbindvalue=true

#
# PostgreSQL
#
# Profile PostgreSQL.
profiler.jdbc.postgresql=true
# Allow profiling of setautocommit.
profiler.jdbc.postgresql.setautocommit=false
# Allow profiling of commit.
profiler.jdbc.postgresql.commit=false
# Allow profiling of rollback.
profiler.jdbc.postgresql.rollback=false

###########################################################
# MONGODB
###########################################################
profiler.mongo=true
profiler.mongo.collectjson=true
profiler.mongo.tracebsonbindvalue=true

###########################################################
# Apache HTTP Client  3.x                                 #
###########################################################
# Profile HTTP Client 3.x
profiler.apache.httpclient3=true
# Record Cookies.
profiler.apache.httpclient3.cookie=true

# When to dump cookies. Either ALWAYS or EXCEPTION.
profiler.apache.httpclient3.cookie.dumptype=EXCEPTION

# 1 out of n cookies will be sampled where n is the rate. (10: 10%)
profiler.apache.httpclient3.cookie.sampling.rate=10

# Dump entities of POST or PUT requests. Limited to entities where HttpEtity.isRepeatable() == true.
profiler.apache.httpclient3.entity=true

# When to dump entities. Either ALWAYS or EXCEPTION.
profiler.apache.httpclient3.entity.dumptype=EXCEPTION
# 1 out of n entities will be sampled where n is the rate. (10: 10%)
profiler.apache.httpclient3.entity.sampling.rate=10

###########################################################
# Apache HTTP Client  4.x                                 #
###########################################################
# Profile HTTP Client 4.x
profiler.apache.httpclient4=true
# Record cookies.
profiler.apache.httpclient4.cookie=true

# When to dump cookies. Either ALWAYS or EXCEPTION.
profiler.apache.httpclient4.cookie.dumptype=EXCEPTION

# 1 out of n cookies will be sampled where n is the rate. (10: 10%)
profiler.apache.httpclient4.cookie.sampling.rate=10

# Dump entities of POST or PUT requests. Limited to entities where HttpEtity.isRepeatable() == true.
profiler.apache.httpclient4.entity=false

# When to dump entities. Either ALWAYS or EXCEPTION.
profiler.apache.httpclient4.entity.dumptype=EXCEPTION

# 1 out of n entities will be sampled where n is the rate. (10: 10%)
profiler.apache.httpclient4.entity.sampling.rate=10

# Not supported yet
#profiler.apache.nio.httpclient4=true

###########################################################
# Ning Async HTTP Client                                  # 
###########################################################
# Profile Ning Async HTTP Client.
profiler.ning.asynchttpclient=true
# Record cookies.
profiler.ning.asynchttpclient.cookie=true
# When to dump cookies. Either ALWAYS or EXCEPTION.
profiler.ning.asynchttpclient.cookie.dumptype=EXCEPTION
# Cookie dump size.
profiler.ning.asynchttpclient.cookie.dumpsize=1024
# 1 out of n cookies will be sampled where n is the rate. (10: 10%)
profiler.ning.asynchttpclient.cookie.sampling.rate=10
# Record Entities.
profiler.ning.asynchttpclient.entity=false
# When to dump entities. Either ALWAYS or EXCEPTION.
profiler.ning.asynchttpclient.entity.dumptype=EXCEPTION
# Entity dump size.
profiler.ning.asynchttpclient.entity.dumpsize=1024
# 1 out of n cookies will be sampled where n is the rate. (10: 10%)
profiler.ning.asynchttpclient.entity.sampling.rate=10
# Record parameters. (unsupported in 1.8.x, 1.9.x versions)
profiler.ning.asynchttpclient.param=false
# When to dump parameters. Either ALWAYS or EXCEPTION.
profiler.ning.asynchttpclient.param.dumptype=EXCEPTION
# Parameter dump size.
profiler.ning.asynchttpclient.param.dumpsize=1024
# 1 out of n parameters will be sampled where n is the rate. (10: 10%)
profiler.ning.asynchttpclient.param.sampling.rate=10

###########################################################
# Arcus                                                   # 
###########################################################
# Profile Arcus.
profiler.arcus=true
profiler.arcus.async=true
# Record keytrace.
profiler.arcus.keytrace=false

###########################################################
# Memcached                                               #
###########################################################
# Profile Memecached.
profiler.memcached=true
profiler.memcached.async=true
# Record keytrace
profiler.memcached.keytrace=false


###########################################################
# Thrift                                                  # 
###########################################################
# Profile Thrift
profiler.thrift.client=true
# Profile processor.
profiler.thrift.processor=true
# Allow recording arguments.
profiler.thrift.service.args=false
# Allow recording result.
profiler.thrift.service.result=false

###########################################################
# ibatis                                                  # 
###########################################################
# Profile ibatis.
profiler.orm.ibatis=true

###########################################################
# mybatis                                                 # 
###########################################################
# Profile mybatis
profiler.orm.mybatis=true

###########################################################
# spring-beans 
###########################################################
# Profile spring-beans
profiler.spring.beans=true

# filters
#    filter
#    filter OR filters
# filter
#    value
#    value AND filter
# value
#    token
#    token OR token
# token
#    profiler.spring.beans.n.scope= [component-scan | post-processor] default is component-scan.
#    profiler.spring.beans.n.base-packages= [package name, ...]
#    profiler.spring.beans.n.name.pattern= [regex pattern, regex:regex pattern, antstyle:antstyle pattern, ...]
#    profiler.spring.beans.n.class.pattern= [regex pattern, regex:regex pattern, antstyle:antstyle pattern, ...]
#    profiler.spring.beans.n.annotation= [annotation name, ...]
#
# Scope:
# component-scan: <context:component-scan ... /> or @ComponentScan
# post-processor: BeanPostProcessor - Slow!!!
#
# ANT Style pattern rules:
# ? - matches on character
# * - matches zero or more characters
# ** - matches zero or more 'directories' in a path

# Examples
# profiler.spring.beans.1.scope=component-scan
# profiler.spring.beans.1.base-packages=com.foo, com.bar
# profiler.spring.beans.1.name.pattern=.*Foo, regex:.*Bar, antstyle:*Controller
# profiler.spring.beans.1.class.pattern=
# profiler.spring.beans.1.annotation=org.springframework.stereotype.Controller,org.springframework.stereotype.Service,org.springframework.stereotype.Repository
#
# profiler.spring.beans.2.scope=post-processor
# profiler.spring.beans.2.base-packages=com.foo
# profiler.spring.beans.2.name.pattern=
# profiler.spring.beans.2.class.pattern=antstyle:com.foo.repository.*Repository, antstyle:com.foo.Service.Main*
# profiler.spring.beans.2.annotation=

profiler.spring.beans.1.scope=component-scan
profiler.spring.beans.1.base-packages=
profiler.spring.beans.1.name.pattern=
profiler.spring.beans.1.class.pattern=
profiler.spring.beans.1.annotation=org.springframework.stereotype.Controller,org.springframework.stereotype.Service,org.springframework.stereotype.Repository

profiler.spring.beans.mark.error=false

###########################################################
# spring @Async
###########################################################
profiler.spring.async.enable=true
# Add custom AsyncTaskExecutor classes. Comma separated list of fully qualified class names. Wildcard not supported.
# Default values
#     org.springframework.scheduling.concurrent.ConcurrentTaskExecutor
#     org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler
#     org.springframework.core.task.SimpleAsyncTaskExecutor
#     org.springframework.scheduling.quartz.SimpleThreadPoolTaskExecutor
#     org.springframework.core.task.support.TaskExecutorAdapter
#     org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor
#     org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler
#     org.springframework.jca.work.WorkManagerTaskExecutor
#     org.springframework.scheduling.commonj.WorkManagerTaskExecutor
profiler.spring.async.executor.class.names=

###########################################################
# log4j (guide url : https://github.com/naver/pinpoint/blob/master/doc/per-request_feature_guide.md)
###########################################################
profiler.log4j.logging.transactioninfo=false

###########################################################
# logback (guide url : https://github.com/naver/pinpoint/blob/master/doc/per-request_feature_guide.md)
###########################################################
profiler.logback.logging.transactioninfo=false

###########################################################
# google httpclient 
###########################################################
# Profile google httpclient.
profiler.google.httpclient.enable=true
# Profile async.
profiler.google.httpclient.async=true
# Maximum anonymous innerclass number.
profiler.google.httpclient.async.innerclassname.max=3

###########################################################
# OkHttp
###########################################################
profiler.okhttp.enable=true
# Record param.
profiler.okhttp.param=true

# Record Cookies.
profiler.okhttp.cookie=false
# When to dump cookies. Either ALWAYS or EXCEPTION.
profiler.okhttp.cookie.dumptype=EXCEPTION
# 1 out of n cookies will be sampled where n is the rate. (1: 100%)
profiler.okhttp.cookie.sampling.rate=10
# enqueue operation
profiler.okhttp.async=true

###########################################################
# Apache CXF
# Version 2.6.2+ is supported.
# Note: logging.enable must use cxf logging
# see http://cxf.apache.org/docs/message-logging.html
###########################################################
profiler.cxf.service.enable=false
profiler.cxf.logging.enable=false

###########################################################
# fastjson
###########################################################
profiler.json.fastjson=false

###########################################################
# gson
###########################################################
profiler.json.gson=false

###########################################################
# jackson
###########################################################
profiler.json.jackson=false

###########################################################
# json-lib
###########################################################
profiler.json.jsonlib=false

###########################################################
# RestTemplate
###########################################################
profiler.resttemplate=false

###########################################################
# Netty
###########################################################
# recommend netty plugin disable, when using VERTX.
profiler.netty=false
profiler.netty.http=false

###########################################################
# Kafka
# Version 0.11+ is supported.
###########################################################
profiler.kafka.producer.enable=false
profiler.kafka.consumer.enable=false
// you must set target that handles ConsumerRecord or ConsumerRecords(Remote Trace feature is not enabled.) as a argument for remote trace
// ex) profiler.kafka.consumer.entryPoint=clazzName.methodName
profiler.kafka.consumer.entryPoint=

###########################################################
# Hbase (Reliability and stability can not be guaranteed)
###########################################################
profiler.hbase.client.enable=true
profiler.hbase.client.admin.enable=false
profiler.hbase.client.table.enable=false
profiler.hbase.client.params.enable=false
