* 1. Format codes
2. Add comments for storage interface of topology
3. Narrow the scope of secondary query to get the component name. Only query the nodes as client out of the given service Ids.
* Support topology with multiple selected services
* Sync the typo fix in the protocol
* extract duplicated method
* change while loop to if since once rs.next() return false, it will never return true for the following calls
* simplify if() return true; return false pattern
* fix compilation
Signed-off-by: liqiang.clq <liqiang.clq@alibaba-inc.com>
Motivation:
Review code styles with some bots automatically.
Modifications:
Set up ReviewDog in GitHub Action to review code style.
Add more check rules to checkstyle plugin.
Result:
Obvious code styles can be reviewed and commented automatically.
* sniffer processing profile task and report status and snapshot
* resolve testServiceDependencies test case error, use same register with `TraceSegmentServiceClient`
* resolve names
* change profile to single one thread run.
* 1. change to the ArrayList, because known the max size
2. rename issue resolved
* add profiling status enum
* change sniffer use full name issue
* 1. remove `prepareProfiling` method, build profiling status when construct `TracingContext`
2. add `TracingThreadListenerManager`, notify when tracing main thread finish
3. change ProfileThread start when process new profile task
* remove unnecessary getter
* add test assert error message
* adding `AgentServiceRule`
* revert original assert
* remove unnecessary getter
* resolve issues
* reduce findService invoke
* resolve style error
* recheck profiling when change first span operatin name
* resolve issues
1. remove `ContextManager#profilingRecheck`, only check on `TracingContext`
2. rename comments
3. resolve volatile array setting
* remove article link
* add `ProfileTask#maxSamplingCount` check
* resolve conflict (Downstream -> Commands)
* 1. change profilingSegmentSlots init on construct
2. if is profiling, recheck dont need to stop
3. total profiling count increment on first dump
* remove unused return val
* remove some `@param` and `@return`
* add profile task check result data bean
* change profiler slot to `AtomicReferenceArray`
* resolved java doc error
* fix doc error, remove meaningless descriptions
* resolve missed profile receiver on oap starter
* resolve method invoke error
Co-authored-by: 吴晟 Wu Sheng <wu.sheng@foxmail.com>
Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
* Support new percentile func with new alarm and exporter for this new func.
* Fix e2e and OAL script
* Fix wrong column.
* Fix percentile bug and oal engine bug.
* Update query protocol and add percentile test case
* Support new query
* Adopt GraphQL requirement
* Fix wrong type cast.
* Fix query in H2 and ES.
* Fix docs and comments.
* Fix an e2e compile issue
* Fix javadoc issue and e2e test issue.
* Change CPM to Apdex in TTL test.
* Fix OAL for TTL e2e
* Add metrics query for service percentile.
* Fix OAL engine bug. Method deserialize is not working when more than two field types are IntKeyLongValueHashMap
* Support multiple IntKeyLongValueHashMap fields in remote. About serialize/deserialize methods.
* Fix graphql statement error in e2e.
* Fix serialize not working and add generated serialize/deserialize of percentile into test cases.
* Fix test case format
* Remove generated code test.
* Fix failed e2e test
* Use avg resp time to apdex in the TTL test.
* ADD multiple linear metrics check for endpoint in e2e cluster.
* Support `-` to represent no threshold and doc of alarm about this.
* Move break to right place.
* Fix wrong break(s)
* Fix break and add a test case for multiple values alarm.
* Fix format.
* Add more doc for this new feature and GraphQL query protocol.
Co-authored-by: Jared Tan <jian.tan@daocloud.io>
Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
* Provide profile task downstream to sniffer
* fix agent unit testcase issue
* add profile switch config on sniffer
* fix es error
* 1. add @DefaultImplementor on the sniffer profile task service
2. change ProfileTaskExecutionService#PROFILE_TASK_READY_SCHEDULE to final and remove volatile
2. fix style error
* change timeFromStartMills use `<` to compare
* 1. add `maxSamplingCount` to profile task
2. make profile task limit to the common package
* 1. change `agent.active_profile` to `profile.active` and make true on default
2. add `maxSamplingCount` in profile task
3. use `createTime` to check has new command list
4. add task re-check before process profile task
* 1. add `profile-receiver` document
2. change `ProfileTaskExecutionService` use single schedule thread pool
3. cache dont need fetch data when no data, use auto-fresh mechanism only
* remove navigate time judge, fix comment wrong meaning
* Add service type from register and support browser as service type
* Add service type at agent side.
* Fix format.
* Fix a test.
* Fix formats.
Co-authored-by: kezhenxu94 <kezhenxu94@163.com>
* [Feature] Officially support ElasticSearch 7 as backend storage
* Extract bootstrap module to be shared by multiple starters
* Add missing configuration file and distinguish different version in test
* Update known-oap-backend-dependencies-es7.txt
Update the dependency lib
* Fix missing adaptation to ElasticSearch 7
* Rename ElasticSearch 7 specific class with Es7 infix
* Fix miss-adapted ElasticSearch DAO API
* Add ES7 specific configuration and polish documentations
* Polish documentations
* Polish documentations
* Is it a typo or not?
* delete datasource-settings.properties
* handle 'metadataQueryMaxSize'
* delete DynamicModuleConfig.java
* modify mysql config
* parsing yaml to support the configuration for multiple properties
* delete datasource-settings.properties
* modify doc
* add properties for docker-entrypoint.sh
* add testLoadConfig()
* Refactor Persistence worker.
* 1. Provide InsertRequest and UpdateRequest interface for prepare persistence.
2. Implement the ids query for H2 metrics DAO.
* Refactor worker framework
* Use queue to receive asynchronous batch request.
* Rename the Datacarrier thread name.
* Fixed some mistake.
* New mistake.