9030eff | Brian Harrington | 15 August 2019, 17:44:49 UTC | sbt-scalafmt 2.0.3 | 15 August 2019, 17:44:49 UTC |
b72f1a3 | Brian Harrington | 15 August 2019, 17:35:53 UTC | scala 2.12.9 | 15 August 2019, 17:35:53 UTC |
d43bb3c | Brian Harrington | 15 August 2019, 17:34:06 UTC | log4j 2.12.1 | 15 August 2019, 17:34:06 UTC |
5c867b6 | Brian Harrington | 15 August 2019, 17:27:19 UTC | caffeine 2.8.0 | 15 August 2019, 17:27:19 UTC |
5431cd4 | Brian Harrington | 15 August 2019, 17:25:05 UTC | spectator 0.94.0 | 15 August 2019, 17:25:05 UTC |
0cede20 | Brian Harrington | 15 August 2019, 17:19:31 UTC | scala-collection-compat 2.1.2 | 15 August 2019, 17:19:31 UTC |
81bb841 | Brian Harrington | 15 August 2019, 17:17:10 UTC | akka 2.5.24 | 15 August 2019, 17:17:10 UTC |
aa67065 | Brian Harrington | 15 August 2019, 17:10:02 UTC | akka-http 10.1.9 | 15 August 2019, 17:10:02 UTC |
abb78df | Brian Harrington | 15 August 2019, 17:08:12 UTC | aws-java-sdk 1.11.611 | 15 August 2019, 17:08:12 UTC |
9fccf7e | Brian Harrington | 15 August 2019, 17:07:03 UTC | slf4j 1.7.28 | 15 August 2019, 17:07:03 UTC |
5e6861a | Matt Zimmer | 05 August 2019, 19:06:11 UTC | iep 2.1.1 (#1076) | 05 August 2019, 19:06:11 UTC |
5bdd944 | Matt Zimmer | 04 August 2019, 04:42:19 UTC | Only publish metrics if instance has leadership (#1075) Use iep-leader library to check leadership status and only publish metrics if instance has leadership. This is primarily to prevent duplicate metrics on the streaming path. | 04 August 2019, 04:42:19 UTC |
90ce3ec | Matt Zimmer | 04 August 2019, 01:17:34 UTC | iep 2.1.0 (#1074) | 04 August 2019, 01:17:34 UTC |
2acd574 | Matt Zimmer | 03 August 2019, 23:18:26 UTC | Add RDS OldestReplicationSlotLag (#1073) This commit adds collection of AWS/RDS/OldestReplicationSlotLag. Other `Lag` metrics represent time lag. This metric represents more data coming in that being replicated. So, in order to avoid confusion with those other lag metrics, I've suffixed this with `DataBacklog`. Resolves #1067 | 03 August 2019, 23:18:26 UTC |
13ec52d | brharrington | 12 July 2019, 23:39:23 UTC | add NameValueLengthRule (#1071) Allows different limits to be used for the value of the name key compared to other keys. This is mostly to remove a difference between the internal Atlas setup at Netflix and OSS. Internally for historical reasons the value for the name key is allowed to be longer than other values. With this change there is no longer a need to have custom rules. | 12 July 2019, 23:39:23 UTC |
f343962 | brharrington | 11 July 2019, 13:39:05 UTC | fix most 2.13 compiler warnings (#1070) There is still one related to ordering doubles, but is not easily fixable until the 2.12 build is dropped. | 11 July 2019, 13:39:05 UTC |
5ae2d2e | brharrington | 09 July 2019, 14:25:02 UTC | fix status code for requests that are too large (#1069) It was hitting the fallback before and using a status code of 500 instead of a 4xx status code. This would cause some clients to retry when they shouldn't. | 09 July 2019, 14:25:02 UTC |
93c40b0 | brharrington | 08 July 2019, 22:49:56 UTC | update dependencies (#1068) | 08 July 2019, 22:49:56 UTC |
ef7bf98 | Brian Harrington | 08 July 2019, 21:40:01 UTC | RoaringBitmap 0.8.9 | 08 July 2019, 21:40:01 UTC |
0bbc09c | Brian Harrington | 08 July 2019, 21:37:38 UTC | sbt-jmh 0.3.7 | 08 July 2019, 21:37:38 UTC |
a7e6bcf | Brian Harrington | 08 July 2019, 21:27:00 UTC | frigga 0.19.1 | 08 July 2019, 21:27:00 UTC |
fa778c8 | Brian Harrington | 08 July 2019, 21:26:09 UTC | log4j2 2.12.0 | 08 July 2019, 21:26:09 UTC |
5932e75 | Brian Harrington | 08 July 2019, 21:12:08 UTC | aws-java-sdk 1.11.579 | 08 July 2019, 21:12:08 UTC |
cd2f90d | Brian Harrington | 08 July 2019, 21:11:13 UTC | iep 2.0.5 | 08 July 2019, 21:11:13 UTC |
b18d43e | brharrington | 17 June 2019, 17:53:49 UTC | fix equality for custom averages (#1063) Before it was creating a new instance of a function when generating the `MathExpr.NamedRewrite` object so the equality would never match. | 17 June 2019, 17:53:49 UTC |
c7ed425 | brharrington | 17 June 2019, 17:41:58 UTC | try disabling gigahorse (#1064) Setting in the `build.properties` file doesn't seem to work for this setting (tried in #1062). | 17 June 2019, 17:41:58 UTC |
85a91b3 | brharrington | 17 June 2019, 15:50:44 UTC | try disabling gigahorse (#1062) Check to see if this helps resolve the publishing issue in #1054. | 17 June 2019, 15:50:44 UTC |
525119b | Matthew Johnson | 17 June 2019, 13:27:42 UTC | add mapping for DeadLetterInvocations to CloudWatch Events (#1061) | 17 June 2019, 13:27:42 UTC |
998ade1 | Matthew Johnson | 16 June 2019, 18:30:23 UTC | match cloudwatch usage of `canceled` (#1060) | 16 June 2019, 18:30:23 UTC |
20ce521 | Matthew Johnson | 16 June 2019, 18:04:49 UTC | remove ElasticSearch MasterFreeStorageSpace metric (#1059) From the ElasticSearch CloudWatch metrics documentation: https://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-managedomains.html#es-managedomains-cloudwatchmetrics-master-node-metrics This metric is not relevant and can be ignored. The service does not use master nodes as data nodes. | 16 June 2019, 18:04:49 UTC |
8881f14 | Matthew Johnson | 16 June 2019, 18:03:37 UTC | fix aws.ec2.badInstances mapping (#1058) map the `system` id to `StatusCheckFailed_System`, instead of `StatusCheckFailed_Instance` | 16 June 2019, 18:03:37 UTC |
a4cc2e0 | brharrington | 14 June 2019, 20:50:27 UTC | add benchmark for uri handling (#1057) Compare performance of various ways to modify the uri. | 14 June 2019, 20:50:27 UTC |
5d5e449 | brharrington | 13 June 2019, 23:57:36 UTC | fix build settings for 2.13 to use `-release 8` (#1055) (#1056) Before it was looking specifically for version 12. For now we still need to be able to run on jdk8+. The specific issue encountered was: ``` java.lang.NoSuchMethodError: java.nio.CharBuffer.clear()Ljava/nio/CharBuffer; at com.netflix.atlas.core.model.TaggedItem$.writePair(TaggedItem.scala:59) at com.netflix.atlas.core.model.TaggedItem$.computeId(TaggedItem.scala:105) at com.netflix.atlas.core.model.TimeSeries$.<clinit>(TimeSeries.scala:22) at com.netflix.atlas.core.model.EvalContext.<init>(EvalContext.scala:32) at com.netflix.atlas.druid.DruidDatabaseActorSuite.<init>(DruidDatabaseActorSuite.scala:259) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at java.lang.Class.newInstance(Class.java:442) ``` Also improves the check for recent JDKs. | 13 June 2019, 23:57:36 UTC |
efa7037 | brharrington | 13 June 2019, 14:05:22 UTC | update to scala 2.13.0 final (#1052) | 13 June 2019, 14:05:22 UTC |
b41eb44 | brharrington | 13 June 2019, 01:30:44 UTC | add binding for materializer (#1050) Setup a default binding for the materializer using a supervision strategy that will provide better visibility into failures. | 13 June 2019, 01:30:44 UTC |
dbaecf0 | brharrington | 13 June 2019, 01:03:26 UTC | remove cross build for 2.11 (#1051) Use 1.6.x if 2.11 support is still needed. | 13 June 2019, 01:03:26 UTC |
bf82f54 | brharrington | 05 June 2019, 21:25:49 UTC | cross build for 2.13.0-RC3 (#1048) Most changes our minor. For some of the custom collections they needed to be specific to the new version. I expect that to be temporary as 2.11 and 2.12 support will likely be dropped for 1.7.x at some point. | 05 June 2019, 21:25:49 UTC |
55ebf1d | brharrington | 05 June 2019, 02:16:30 UTC | remove deprecated cors directives (#1046) | 05 June 2019, 02:16:30 UTC |
a64b728 | brharrington | 23 May 2019, 05:15:22 UTC | remove jackson-datatype-joda usage (#1045) Uses for Atlas moved to `java.time` a long time ago. Users can add this manually by calling `Json.registerModule` if it is still needed. | 23 May 2019, 05:15:22 UTC |
46b6c6c | brharrington | 23 May 2019, 04:50:51 UTC | update dependencies (#1044) | 23 May 2019, 04:50:51 UTC |
b9ae531 | Brian Harrington | 23 May 2019, 04:39:56 UTC | sbt-scalafmt 2.0.0 There are a few minor formatting changes with this version. | 23 May 2019, 04:39:56 UTC |
01ef0cb | Brian Harrington | 23 May 2019, 04:19:50 UTC | sbt-bintray 0.5.5 | 23 May 2019, 04:19:50 UTC |
f3d16c2 | Brian Harrington | 23 May 2019, 04:17:58 UTC | sbt-release 1.0.11 | 23 May 2019, 04:17:58 UTC |
f6c9d86 | Brian Harrington | 23 May 2019, 04:17:10 UTC | sbt-jmh 0.3.6 | 23 May 2019, 04:17:10 UTC |
f02d6a6 | Brian Harrington | 23 May 2019, 04:07:57 UTC | roaringbitmap 0.8.2 | 23 May 2019, 04:07:57 UTC |
a9bd8af | Brian Harrington | 23 May 2019, 04:06:47 UTC | joda-convert 2.2.1 | 23 May 2019, 04:06:47 UTC |
b1463f6 | Brian Harrington | 23 May 2019, 03:54:09 UTC | equalsverifier 3.1.9 | 23 May 2019, 03:54:09 UTC |
50d2c63 | Brian Harrington | 23 May 2019, 03:51:20 UTC | jackson 2.9.9 | 23 May 2019, 03:51:20 UTC |
ba4a66f | Brian Harrington | 23 May 2019, 03:50:25 UTC | config 1.3.4 | 23 May 2019, 03:50:25 UTC |
b4eee86 | Brian Harrington | 23 May 2019, 03:08:20 UTC | aws-java-sdk 1.11.556 | 23 May 2019, 03:08:20 UTC |
4499ac4 | Brian Harrington | 23 May 2019, 03:05:41 UTC | iep 2.0.4 | 23 May 2019, 03:05:41 UTC |
bf85e54 | Brian Harrington | 23 May 2019, 02:56:47 UTC | spectator 0.92.0 | 23 May 2019, 02:56:47 UTC |
996e07d | Brian Harrington | 23 May 2019, 02:55:24 UTC | akka 2.5.23 | 23 May 2019, 02:55:24 UTC |
ed91d70 | brharrington | 17 May 2019, 18:19:01 UTC | adjust compression level for request handler (#1042) Adjust the default to use `BEST_SPEED` to reduce the computation overhead of compressing the results. | 17 May 2019, 18:19:01 UTC |
da724eb | brharrington | 15 May 2019, 16:55:49 UTC | support substitutions for title and ylabel (#1040) The available variables will be the intersection of the tags for all of the lines within that scope. In the case of title it is all lines on the graph. For a ylabel, it is all lines associated with that y-axis. Fixes #1026. | 15 May 2019, 16:55:49 UTC |
eebf7b1 | brharrington | 09 May 2019, 20:29:26 UTC | switch to discovery.status metric for eureka-avg (#1039) This is a newer version that avoids the need for regex and follows current conventions. | 09 May 2019, 20:29:26 UTC |
8e4565f | brharrington | 02 May 2019, 19:17:59 UTC | update base version to 1.7.x (#1038) | 02 May 2019, 19:17:59 UTC |
045de8c | brharrington | 01 May 2019, 22:28:44 UTC | fix deprecation warnings for ActorPublisher (#1037) Changes the processing for the `/fetch` endpoint to use streams instead of the deprecated ActorPublisher. | 01 May 2019, 22:28:44 UTC |
c783b88 | brharrington | 30 April 2019, 23:41:51 UTC | fix empty data case for math/count (#1036) It wasn't checking if the input was empty like the other aggregate functions. Now it performs the same check which avoids errors like: ``` must have 1 or more time series to perform aggregation ``` | 30 April 2019, 23:41:51 UTC |
049a878 | brharrington | 30 April 2019, 16:54:42 UTC | fix eval state for sparse lines with group by (#1035) Before, if a line was sparse, for example an error counter that has a lot of gaps, the state would be handled incorrectly. There would be one state item per matching grouping when data was present and they would only get moved forward if there was data for that key in a given interval. For intervals with no data, a no data line would get pushed through and have its own independent state. With this change, an empty group by result will push an empty data set through eval and it will now move the state buffers to allow for expiration and correct handling of subsequent intervals with data. If there is no resulting data lines from the overall expression, then a no data line for the overall expression will be emitted to the user. | 30 April 2019, 16:54:42 UTC |
4550be9 | brharrington | 29 April 2019, 21:47:02 UTC | detect empty state and stop tracking it (#1034) Updates the online algorithms used with stateful operators to detect if the state is effectively empty. In that case the state will be dropped from the state map maintained during evaluation. This is useful to avoid leaking memory for tracking the state during long running streaming evaluations. There are currently three exceptions that have an unbounded window and never become empty: ignore-N, sdes, and integral. Integral is generally not very useful in a streaming context so we may just prohibit that operation. For sdes (and ignore-N which is typically only used to align sdes), the current uses do not involve group by operations, so it shouldn't be an issue for now. We'll revisit in the future when there are concrete use-cases that are problematic for that operation. | 29 April 2019, 21:47:02 UTC |
a805a6a | brharrington | 26 April 2019, 22:19:07 UTC | fix tag results on MemoryDatabase.execute (#1031) The set of tags for the aggregated lines should be limited to the set that are exact matches in the query or are a part of a group by. Otherwise the grouping can have incorrect duplicates in the result set. Fixes #629. | 26 April 2019, 22:19:07 UTC |
cca15bb | brharrington | 26 April 2019, 22:09:09 UTC | expire interned queries after 12h (#1030) Switches from a ConcurrentHashMap to a Cache for the interned queries. This avoids a slow leak over time with churn in the set of queries. In practice, we have not seen enough churn for it to matter, but now queries that are no longer in use will expire and go away. Fixes #729. | 26 April 2019, 22:09:09 UTC |
bf69de1 | brharrington | 26 April 2019, 21:32:05 UTC | improve error message for invalid percentile data (#1029) The spectator-js client had a bug (Netflix/spectator-js#22) leading to duplicate values for a given count. This change updates the error message so it is easier to understand what is happening. Before it would just say `assertion failed`. | 26 April 2019, 21:32:05 UTC |
180fbaa | brharrington | 25 April 2019, 02:26:33 UTC | improve handling of empty legend string (#1028) Before it would fail with an error that is hard for a user to understand: ``` IllegalArgumentException: Can't add attribute to 0-length text ``` This error would only show up if the image legend was rendered causing further confusion because it wouldn't show up if the legend was suppressed. Now it will fallback to the default legend string if an empty string is specified. | 25 April 2019, 02:26:33 UTC |
b3206fa | brharrington | 25 April 2019, 02:19:29 UTC | remove inline rollup hooks on the api (#1027) Partially reverts #525. This removes the plumbing for the ids and rollups via the api. The usage for the internal DB have been retained. The reason for this is it adds additional complexity and risk to the backends and for most use-cases we are moving to the simple aggregator cluster instead (see atlas-aggregator in iep-apps). As we are not planning to exercise this as scale anytime soon, it is being removed from the APIs before 1.6 release. | 25 April 2019, 02:19:29 UTC |
49a4717 | Daniel Muino | 17 April 2019, 02:37:05 UTC | Add rolling-sum stateful operator (#1025) Sum of the values within a specified window. The sum will only be emitted if there are at least a minimum number of actual values (not `NaN`) within the window. Otherwise `NaN` will be emitted for that time period. | 17 April 2019, 02:37:05 UTC |
0fb0a09 | brharrington | 15 April 2019, 21:22:15 UTC | update dependencies (#1024) | 15 April 2019, 21:22:15 UTC |
dff6a1a | Brian Harrington | 15 April 2019, 21:02:07 UTC | equalsverifier 3.1.8 | 15 April 2019, 21:02:07 UTC |
9bc07aa | Brian Harrington | 15 April 2019, 20:58:26 UTC | RoaringBitmap 0.8.0 | 15 April 2019, 20:58:26 UTC |
ce57cda | Brian Harrington | 15 April 2019, 20:57:55 UTC | joda-convert 2.2.0 | 15 April 2019, 20:57:55 UTC |
a8bed68 | Brian Harrington | 15 April 2019, 20:56:52 UTC | aws-java-sdk 1.11.534 | 15 April 2019, 20:56:52 UTC |
26318f3 | Brian Harrington | 15 April 2019, 20:56:28 UTC | iep 2.0.1 | 15 April 2019, 20:56:28 UTC |
e98e25c | Brian Harrington | 15 April 2019, 20:44:03 UTC | spectator 0.90.0 | 15 April 2019, 20:44:03 UTC |
48fef1a | Brian Harrington | 15 April 2019, 20:43:21 UTC | caffeine 2.7.0 | 15 April 2019, 20:43:21 UTC |
1e2ebb6 | Brian Harrington | 15 April 2019, 20:13:36 UTC | akka-http 10.1.8 | 15 April 2019, 20:13:36 UTC |
493714e | Brian Harrington | 15 April 2019, 20:10:16 UTC | akka 2.5.22 | 15 April 2019, 20:10:16 UTC |
a3d3a20 | brharrington | 14 April 2019, 20:59:09 UTC | fix typo in rolling-{min,max} descriptions (#1023) `s/is can/can/` | 14 April 2019, 20:59:09 UTC |
3aa0bec | brharrington | 14 April 2019, 16:23:51 UTC | preserve offset for named rewrites (#1022) In some cases when the rewrite was not being used like an aggregate function, the offset would get lost. Fixes #1021. | 14 April 2019, 16:23:51 UTC |
579211f | brharrington | 12 April 2019, 02:16:39 UTC | fix unused method warnings (#1020) | 12 April 2019, 02:16:39 UTC |
c31db8c | brharrington | 11 April 2019, 23:28:05 UTC | add test case for stateful windows with no data (#1019) Verify that rolling window for stateful operators moves for intervals that have no data for the expression. | 11 April 2019, 23:28:05 UTC |
294f301 | brharrington | 05 April 2019, 13:47:45 UTC | support generated dataset for eval (#1018) Adds a `evaluator.createDatapointProcessor(DataSources)` method that can be used to process a generated set of datapoints rather than getting data from an LWC cluster. This can be used for tests or for using Atlas expressions over arbitrary event streams. Fixes #798. | 05 April 2019, 13:47:45 UTC |
179311d | Matt Zimmer | 29 March 2019, 23:17:52 UTC | Switch 2.12 build back to `osx` (#1017) Experiment showed that the 2.12 build with linux/trusty _does_ result in the correct version. | 29 March 2019, 23:17:52 UTC |
7971b7c | Matt Zimmer | 29 March 2019, 23:14:20 UTC | Explicitly fetch tags for build (#1016) Add `--tags` to the `git fetch --unshallow` command. Specifying just `--unshallow` or just `--tags` results in an artifact version of `0.1` when building on Travis with `osx`. | 29 March 2019, 23:14:20 UTC |
9c917f4 | Matt Zimmer | 29 March 2019, 22:42:10 UTC | Switch to linux/trusty for 2.12 build (#1015) Switch to linux/trusty for 2.12 build to match the 2.11 build. This is to observe whether the issue determining the version to use for publication has an OS component. | 29 March 2019, 22:42:10 UTC |
0638240 | Matt Zimmer | 29 March 2019, 22:08:01 UTC | Revert "Ensure git tags are available for build" (#1014) This did not have the desired affect and seems to have caused the 2.11 build to no longer work. This reverts commit 7f30c26. | 29 March 2019, 22:08:01 UTC |
646d366 | Matt Zimmer | 29 March 2019, 21:34:59 UTC | Ensure git tags are available for build (#1012) `git fetch --unshallow` was being used to get tags to set the artifact version. This has started failing on one of the builds. This commit switches to explicitly fetching tags via `git fetch --tags`. | 29 March 2019, 21:34:59 UTC |
3f5c03d | Matt Zimmer | 29 March 2019, 17:32:41 UTC | Fix lambda config (#1010) The code that loads `MetricCategory` instances from the config expects the `dimension` field, even if it's empty. This was causing the service to silently fail. In addition to fixing the `lambda` config, I've added tests that load the production config to improve the chances we'll catch this at build time. | 29 March 2019, 17:32:41 UTC |
02dc9b9 | brharrington | 29 March 2019, 17:03:58 UTC | improve logging for poller actor failures (#1011) Clearly log the initialization failure as an error for the poller manager. Avoids this getting overlooked if the detailed actor logging is not enabled. | 29 March 2019, 17:03:58 UTC |
a1f778c | Matt Zimmer | 28 March 2019, 02:10:14 UTC | Collect additional lambda metrics (#1008) Add collection of * `ConcurrentExecutions` * `UnreservedConcurrentExecutions` * `DeadLetterErrors` * `IteratorAge` Issue #1005 | 28 March 2019, 02:10:14 UTC |
bf9a99d | brharrington | 28 March 2019, 01:27:28 UTC | simplify log/power scale logic (#1009) Simplifies the logic for computing the log and power scales. Now it just applies the mapping function to the input bounds and the value prior to using a normal linear scale. | 28 March 2019, 01:27:28 UTC |
b5b9eae | brharrington | 20 March 2019, 03:03:18 UTC | update dependencies (#1006) | 20 March 2019, 03:03:18 UTC |
824d9ef | Brian Harrington | 20 March 2019, 02:52:29 UTC | aws-java-sdk 1.11.521 | 20 March 2019, 02:52:29 UTC |
d546872 | Brian Harrington | 20 March 2019, 02:36:35 UTC | equalsverifier 3.1.7 | 20 March 2019, 02:36:35 UTC |
a0bc227 | Brian Harrington | 20 March 2019, 02:34:44 UTC | scalatest 3.0.7 | 20 March 2019, 02:34:44 UTC |
f89c5d1 | Brian Harrington | 20 March 2019, 02:31:35 UTC | spectator 0.87.0 | 20 March 2019, 02:31:35 UTC |
8c4d12f | Brian Harrington | 20 March 2019, 02:29:02 UTC | iep 2.0.0 | 20 March 2019, 02:29:02 UTC |
5f95cba | Matt Zimmer | 07 March 2019, 20:52:38 UTC | Collect additional aurora replica metrics (#1003) Add collection of `AuroraReplicaLag` and `AuroraReplicaLagMaximum` (fixes #1002). | 07 March 2019, 20:52:38 UTC |
bab1872 | Matt Zimmer | 01 March 2019, 23:09:05 UTC | Improve CloudWatch metric lag handling (#1001) This is the first of potentially multiple commits to improve handling of CloudWatch metric lag. This first commit makes the time range of the query configurable and adds a metric to track the age (in CloudWatch periods) of the latest datapoint returned. This will enable assessing the distribution of ages across the namespaces and metrics collected. Those data will influence the approach for datapoints that are older than Atlas will accept. | 01 March 2019, 23:09:05 UTC |
ed1f1f2 | brharrington | 28 February 2019, 17:18:32 UTC | update dependencies (#1000) | 28 February 2019, 17:18:32 UTC |