-
Notifications
You must be signed in to change notification settings - Fork 99
[controller] integrate OpenTelemetry into Controller & add log compaction metrics #1665
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
WhitneyDeng
wants to merge
92
commits into
linkedin:main
Choose a base branch
from
WhitneyDeng:log_compaction/observability/integrate-otel-to-controller
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
92 commits
Select commit
Hold shift + click to select a range
1df9788
ControllerMetricEntity enum class
1f9509a
[WIP] setup VeniceMetricsRepositoru for controller
52bc641
MetricsRepository -> VeniceMetricRepository in VeniceController and V…
635eb84
import otel in controller build.gradle
80c61f6
[wip] LogCompactionServiceStats.java
5f4c377
[WIP] Attributes builder
f178b0f
`LogCompactionService` basic constructor
f24ff9b
add JOB_RUN_STATUS dimension
972c64f
add LOG_COMPACTION_SELECTION_REASON dimension
5b5dab1
add VENICE_CONTROLLER_ENDPOINT dimension
1e16d89
REPUSH_STORE_ENDPOINT_CALL_COUNT in `ControllerMetricEntity`
bf91c0c
rebase: LogCompactionService scoped to cluster level
e64f1a0
rename LogCompactionServiceStats -> LogCompactionStats
888d88a
rebase
9ff8279
LogCompactionStats extends AbstractVeniceStats
f81819c
delete ControllerEndpoints.java
64addcc
add MetricsRepository to VeniceParentHelixAdmin constructor
5edbd05
adding `REPUSH_STORE_ENDPOINT_CALL_COUNT` metric
f7954c6
move repushStore endpoint to parent controller
5831ea2
add Optional<MetricsRepository> in AbstractTestVeniceParentHelixAdmin…
2680725
add metricName in ControllerMetricEntity to streamline access to metr…
99b6c64
LogCompactionStatsTest
1b1390b
nit delete testing print statement
47f633d
pass in `LogCompactionStats` to `CompactionManager`
f178b17
add STORE_NOMINATED_FOR_SCHEDULED_COMPACTION metric entity
b4bd0ca
add `STORE_NOMINATED_FOR_SCHEDULED_COMPACTION` to `LogCompactionStats`
59edfac
cleanup after rebase
43768ba
add createGuage()
d78489d
nit format
4cd1f6d
revert mistake
18ea64a
merge conflict
a4b95d7
add storeCurrentVersionNumber as metric dimension
9f6937b
emit storeNominatedForScheduledCompactionMetric for store nomination …
d782e36
[log] log for log compaction service is enabled
064b8f4
spotbug fix
7638d6a
[pr] nixed static vars
ce508bd
[pr] nixed static vars
ed80feb
[pr] use VeniceConcurrentHashMap
86319fa
[pr] rename JobRunStatus to ExecutionStatus
f0aef24
[nit] add Ms suffix in `timeSinceLastLogCompactionThresholdMs` for cl…
c2e2b7c
add JOB_RUN_STATUS dimension
bed8c45
rebase LogCompactionStatsTest
bc2d446
pass in `LogCompactionStats` to `CompactionManager`
37585d7
cleanup after rebase
cfc6441
[PR] rename `dimensions.ExecutionStatus` to `dimensions.VeniceExecuti…
28ad1b1
[PR] use `VeniceExecutionStatus` rather than `VeniceResponseStatusCat…
734bc55
[PR] putIfAbsent
681490b
fix for test for new dimensions & metric type
88e0712
fix test for new RepushJobResponse constructor
115e335
fix test for new validateLongPointData()
e333a8e
fix test for new metric name
4a31333
fix test for new metric name
fc125bb
fix test for new metric name
4c3ade9
fix test for new metric name
36d0aba
gauge
85a074e
build LongGauge
2b73206
spotbug propertiesList NPE
5a03db6
spotbug
eec3cc7
add log message to bookened log compaction cycles
6a65910
nit: gaugeMap typo
66b3e24
fix controller tests: init MetricsRepository rather than mock in test
b43200d
correct metric emmited for when store is repushed + cont'd refactor f…
79dc650
delete LogCompactionSelectionReason
ad619e6
reuse VeniceController final class fields
ba7de6f
use VeniceResponseStatusCategory instead of VeniceExecutionStatus.jav…
a3918a3
LongGuage -> DoubleGauge
56f6b1b
nix VENICE_STORE_VERSION metric dimension + cleanup VENICE_EXECUTION_…
ff8d84b
gh check: NPE statsMap
8620696
delete store version from store_nominated_for_scheduled_compaction me…
d3a703c
[log] Log compaction service start/stop logs with cluster name
a7d47d0
[log] add [log-compaction] tag to all log compaction related logs for…
6b09d13
[log] add [log-compaction] tag to LOGGER
7bef75a
nit: nix duplicate log
e022227
nix exception printing (automatically printed)
07b01d2
remove TODO.
d60585f
add two metrics: `STORE_NOMINATED_FOR_COMPACTION_COUNT` and `STORE_CO…
0415067
gh check: fix VeniceMetricsRepository init in test
bc4c4e7
`STORE_NOMINATION_TO_COMPACTION_COMPLETE_DURATION` reset metric to 0 …
0509b31
[pr] pass in just metricEntity to getFullMetricName() rather than dup…
1b18714
[pr] gauge metric type description
2b3bc6e
[pr] ModuleMetricEntityInterface.getUniqueMetricEntities
5201afe
[pr] ternary operator for propertiesList null check
c6cbf3b
[pr] clean up `storeNominationToCompactionTriggeredDurationMetric` ->…
754340e
[pr] clean up `storeNominationToCompactionTriggeredDurationMetric` ->…
4ab2483
[pr] rename repush.store.trigger.source -> repush.trigger.source
c362436
[pr] rename `REPUSH_STORE_ENDPOINT_CALL_COUNT` -> `REPUSH_CALL_COUNT`
874120b
[pr] rename `STORE_NOMINATION_TO_COMPACTION_COMPLETE_DURATION` -> `CO…
daa3a77
[pr] rename `STORE_NOMINATION_TO_COMPACTION_COMPLETE_DURATION` -> `CO…
c9f85ab
[pr] `STORE_COMPACTION_TRIGGER_STATUS` records trigger attempt succes…
874e34f
nit: log message
1143b85
[PR] toggle off COMPACTION_ELIGIBLE_STATE on successful push only
08935c0
[PR] reuse cluster name & store name
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
25 changes: 25 additions & 0 deletions
25
...t-common/src/main/java/com/linkedin/venice/stats/dimensions/RepushStoreTriggerSource.java
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
package com.linkedin.venice.stats.dimensions; | ||
|
||
public enum RepushStoreTriggerSource implements VeniceDimensionInterface { | ||
MANUAL, SCHEDULED; | ||
|
||
private final String triggerSource; | ||
|
||
RepushStoreTriggerSource() { | ||
this.triggerSource = name().toLowerCase(); | ||
} | ||
|
||
/** | ||
* All the instances of this Enum should have the same dimension name. | ||
* Refer {@link VeniceDimensionInterface#getDimensionName()} for more details. | ||
*/ | ||
@Override | ||
public VeniceMetricsDimensions getDimensionName() { | ||
return VeniceMetricsDimensions.REPUSH_TRIGGER_SOURCE; | ||
} | ||
|
||
@Override | ||
public String getDimensionValue() { | ||
return this.triggerSource; | ||
} | ||
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.