Tags: adam-netflix/atlas
Tags
re-enable doc artifacts (Netflix#1271) They were disabled due to a bug, but looks like it has been fixed. Fixed a number of scaladoc errors to get the build clean. Error from publishing attempt without docs: ``` Failed: javadoc-staging, failureMessage:Missing: no javadoc jar found in folder '/com/netflix/atlas_v1/atlas-module-lwcapi_2.13/1.7.0-rc.14' ```
add topk/bottomk that aggregates others (Netflix#1248) Fixes Netflix#1224. Adds variants of topk/bottomk that in addition to computing the highest priority values will also return an aggregate time series that includes all of the other time series that were not high enough priority. This can be useful to see what proportion of the overall volume is represented by the highest priority time series. The operators have the same signature as `:topk` and `:bottomk`, but the aggregation to use is specified in the operator name. There are four aggregates supported: - min - max - sum - avg Count was not included as an aggregate because it could be ambiguous and does not seem useful. As part of this work there was some refactoring of the existing aggregation operations to make the count case more consistent.
eval: use BroadcastHub instead of Publisher (Netflix#1217) Updates the queue source used for writing diagnostic messages to use a BroadcastHub instead of Publisher. The main reason is that under newer versions of akka there is a 5s subscription timeout for the underlying FanoutProcessor created with the Publisher. All other users of `asPublisher` were also converted unless the `Publisher` type was explicitly needed as part of the public API for the method.
quote special double values for all json formats (Netflix#1213) Updates the `json` and `stats.json` formats to output standard json data. Before special double values like NaN and Infinity were emitted without qoutes breaking some systems that expected standard json. This should make them more straightforward to consume, however it is a potentially breaking change for some users. Fixes Netflix#1080
include tags in validation result responses (Netflix#1203) Metrics are typically submitted in large batches and without this context it can be difficult for users to narrow it down to particular data points that are problematic. Sample of updated response: ```json { "type": "partial", "errorCount": 1, "message": [ "invalid characters in value: name = [answerTo Everything] ([--.0-9A-Z^_a-z~] are allowed) (tags={\"nf.node\":\"i-123\",\"atlas.dstype\":\"gauge\",\"name\":\"answerTo Everything\"})" ] } ``` Fixes Netflix#1199
reduce allocations for asJavaMap.entrySet (Netflix#1197) Updates the `SmallHashMap.asJavaMap` implementation to override `entrySet()`. The new implementation avoids allocations for each item in the map. **Throughput** | Benchmark | Before | After | % Delta | |----------------------|---------------|---------------|---------| | customEntrySet | 8,400,934.3 | 13,480,190.3 | 60.5 | **Allocations** | Benchmark | Before | After | % Delta | |----------------------|---------------|---------------|---------| | customEntrySet | 296.0 | 24.0 | -91.9 |
use jdk14 for travis build (Netflix#1174) OpenJDK14 has changes to font rendering that make it compatible with the lastest Zulu JDK11 we use internally.
update to latest jackson version (Netflix#1172) Update to latest jackson version to pick up security fixes.
atlas-eval: fix eval flow failure on lwc instance removal (Netflix#1165) Currently the whole eval flow may fail when a lwc instance is removed. There's a subflow for lwc api call of each lwc instance, and that subflow is wrapped around by "RestartFlow" to enable auto-retry. The subflow is finished from upstream when a lwc instance is removed, and upstream of RestartFlow is finished, RestartFlow finishes and propagate the failure from the current ongoing attempt if any, to downstream, and eventually propagate to main flow. The fix is to have downstream of RestartFlow suppress the failure, since the failure is expected and can be ignored on lwc instance removal.
PreviousNext