https://github.com/Netflix/atlas

sort by:
Revision Author Date Message Commit Date
7d26ab0 make subscribe logs consistent with register (#897) Only log on changes to reduce noise and follow the same behavior as register/unregister. 11 September 2018, 05:10:34 UTC
eaa6416 extract the name from the load balancer dimension (#896) extract the name from the load balancer dimension The `LoadBalancer` dimension is specified as the final portion of the load balancer ARN. For example: `app/load-balancer-name/1234567890123456` 11 September 2018, 00:51:39 UTC
246a1c6 extract the name portion of the target group dimension (#895) * extract the name portion of the target group dimension Some dimension values are decorated with information that reduces readability without providing value (e.g., ALBs and NLBs). This commit introduces a new `extractors` configuration within the `tagger` that enables specifying a regex to capture the relevant portion of the name. 10 September 2018, 19:43:00 UTC
ab4251e akka-http 10.1.5 (#894) Adds settings to avoid DoS due to excessive memory usage: https://akka.io/blog/news/2018/08/30/akka-http-dos-vulnerability-found 06 September 2018, 03:46:34 UTC
5d06122 ensure subs are maintained for re-register check (#893) Helps to reduce the amount of churn we see for changes when looking at the logs. 05 September 2018, 22:35:39 UTC
71b07de remove support for post to StreamApi (#892) Simplify the stream api and reduce duplication with subscribe. The only use right now is the basic get with subscriptions managed via the subscribe api. The plan is to switch to a websocket via subscribe that will accept subscription updates and send back the stream of results. For now just cleaning up some unused aspects of the current setup. 05 September 2018, 14:22:12 UTC
4b36ba4 re-register handler if needed on heartbeat (#891) There is a race condition on reconnects where the new connection can come in before the stream for the old connection is closed. The cleanup for the old connection will then unregister the stream id. This is a short-term work around to ensure running streams have a registered handler and track the number of events that we see. 05 September 2018, 14:06:52 UTC
5b287e6 fix subscribe for streams with multiple subs (#890) Before the short circuit behavior meant that only the first new handler would get added. 05 September 2018, 03:32:08 UTC
862d6b5 add Json.decode that takes a JsonNode object (#889) Can be useful for cases where there is a need to do some basic structural inspection before mapping into an internal value type. 04 September 2018, 23:45:54 UTC
9ef38cb add test cases for Grapher.render (#888) Trying to reproduce issue reported where multi-Y does not work properly and the legend is repeated when using the render method instead of evalAndRender. In these test cases the rendering works as expected. 04 September 2018, 23:38:27 UTC
c8235c7 Value based rule constructors (#887) Allow rules to be constructed from values as well from Typesafe Config. This allows rules to be constructed by other means such as configuration stored in a database, while maintaining the original reflection based instantiation. - Add test rule to validate that constructor based method of instantiating rules still works - Add test rule to validate that Java rules can be used with reflection instantiation 04 September 2018, 01:23:39 UTC
c3a3a98 make tags parsing more lenient for publish api (#885) If an empty tag value was submitted it would cause the entire payload to get rejected. With this change it will go through and can then be caught by the validation checks so that only the bad datapoints will get dropped. 31 August 2018, 16:20:54 UTC
ac8224a support multiple step sizes in eval library (#884) Updates the stream so that multiple data sources with different step sizes can be processed. JDK10 build has been disabled because Travis is getting failures trying to download it. Will look at reenabling that once the download issues are resolved. 29 August 2018, 01:14:25 UTC
c7f2fa3 only log the actual changes to the handlers (#883) Checks whether a change to the handlers was actually made before logging. Makes it easier to understand what the real changes were instead of all streams in the batch. 27 August 2018, 15:43:23 UTC
0b03708 fix shutdown for ActorSystem (#882) It was being shutdown by ActorService and WebServer. Also since it could be used by other classes that do not inject those, the ActorSystem could be shutdown in the wrong order. This change moves it to a dedicated provider so it will be shutdown in the correct order. 24 August 2018, 23:49:56 UTC
7e9354f remove ServoMessage classes (#881) This was used for a while so eval could be used with the old Servo source that was part of the internal base server admin. 24 August 2018, 14:14:14 UTC
e67f715 use dist summary for eval payload size (#880) Track this using a distribution summary so it is easier to compute the average and we can see the max number of items coming in a request. 24 August 2018, 13:55:11 UTC
e6d1dfb unregister when stream terminates (#879) Ensure that the subscription is removed when the client goes away. 24 August 2018, 05:06:43 UTC
7ac12e7 support substituting summary stats in legend text (#878) Fixes #877. To avoid clashing with tags on metrics the stats are available as variables in the `atlas.` namespace. 23 August 2018, 04:00:09 UTC
51bebbd additional logging for SubscriptionManager (#876) Adds some debug logging for all of the modification operations on the subscription manager. Also enables trace logging for the messages going to each stream. 19 August 2018, 00:53:31 UTC
7e920ce add heartbeat messages back to StreamApi (#875) The old mechanism of pushing the stats messages was lost inadvertantly as part of #871. Changed to a simple heartbeat message since the stats are now checked as part of the queue for the stream. 19 August 2018, 00:04:05 UTC
613ed16 fix deprecation warnings for DataSource ctor (#874) In #865, a new DataSource constructor was added to allow the frequency to be specified and the previous constructor was deprecated. The deprecated constructor was being used in some of the test cases causing a lot of warnings. 18 August 2018, 21:11:28 UTC
d847ad9 add monitoring to response stream for lwcapi (#873) Allows us to see if elements are being dropped when added to the queue and track the delays on the SSE stream to the client. 18 August 2018, 21:05:48 UTC
264215a improve monitoring of eval flow (#872) Adds a StreamOps helper class with utilities to monitor source queue behavior and delays at a particular stage in a flow. The flow monitoring can be used to understand whether the producer or consumer is faster and where we are getting backpressure delays. 18 August 2018, 20:37:57 UTC
b22748e remove use of actor publisher for StreamApi (#871) Cleans up the deprecation warning and simplifies the code quite a bit. 17 August 2018, 16:55:40 UTC
c606835 dependency updates (#870) 16 August 2018, 22:28:04 UTC
e18e26b RoaringBitmap 0.7.16 16 August 2018, 21:54:32 UTC
6a2947e sbt-release 1.0.9 16 August 2018, 21:27:23 UTC
0eb9d63 sbt-git 1.0.0 16 August 2018, 21:23:10 UTC
244a596 sbt 1.2.1 16 August 2018, 20:48:03 UTC
3267e1b aws-java-sdk 1.11.387 16 August 2018, 20:42:24 UTC
9308c0a equalsverifier 2.5.1 16 August 2018, 20:39:49 UTC
0b9b4d4 log4j 2.11.1 16 August 2018, 20:34:57 UTC
dcdc490 iep 1.2.6 16 August 2018, 20:29:08 UTC
5e21cef spectator 0.74.2 16 August 2018, 20:21:34 UTC
cbd6730 fix serialization issues with StringMatcher (#869) When running on Spark it needs to be able to serialize the matchers if regex is used in an expression. 08 August 2018, 22:00:01 UTC
faac3f6 add step parameter to `DataSource` (#865) As part of enabling high resolution metrics for the streaming path, this commit adds a step parameter to `DataSource`. This is then used to configure the step in the metrics subscription. I tested this by running an lwcapi server locally and observing that the step listed in the response from `/api/v1/expressions` matched the overridden value. Note that this is an incremental step. For this to fully function, the step needs to be introduced into the `Flow` that groups and evaluates the datapoints. This will be done in a follow up commit. 03 August 2018, 21:41:35 UTC
a4c6b47 add jackson modules for jdk8 datatypes (#867) This is mainly for use-cases where the `java.time` types are used. 03 August 2018, 14:47:04 UTC
8a609c3 add test cases for Evaluator model objects (#866) Verify the equals/hashCode contracts are satisfied. Also check that DataSource and DataSources can be encoded and decoded from JSON correctly. Needed to consume for replay logging. 03 August 2018, 03:12:24 UTC
a874acb normalize variable style for legends (#864) The normalize endpoint will now ensure that variable in the legend pattern consistently used parenthesis. Fixes #863. 02 August 2018, 16:18:35 UTC
3ea3397 fix compiler warnings (#861) Fixes two compiler warnings: ``` Warning:(84, 35) private default argument in object StringMatcher is never used private def default(re: String, caseSensitive: Boolean = true): StringMatcher = { Warning:(306, 9) java: throttle(int,scala.concurrent.duration.FiniteDuration,int,akka.stream.ThrottleMode) in akka.stream.javadsl.Source has been deprecated ``` 26 July 2018, 03:29:03 UTC
8da814d make random operator deterministic (#860) The `:random` operator is mostly used for generating sample data that has some noise. However, in its current form the values will change every time it runs. When experimenting with expressions this makes it hard to reason about because the input is always changing. Now it will be based on a hash of the timestamp so it is reproducible. There is also now a seeded variant, `:srandom` that can be used if multiple sample lines are needed with different noise. Fixes #847. 26 July 2018, 03:15:08 UTC
741ae0b add timeRange helper function (#859) There are a number of internal libs that have this same logic of computing a time range based on parsed start and end times that can be relative to each other. Move to a helper function of Strings so it is easier to reuse. 25 July 2018, 15:02:38 UTC
28a40ce short circuit pattern matching with prefix check (#858) In the streaming execution, up to 25% of the CPU usage is checking regular expressions. This change improves the chances that checks will be able to quickly fail without needing regex by always checking the fixed prefix when known in the matches function. This wasn't done before because when evaluating with the index we already know the prefix matches before checking. 24 July 2018, 18:18:11 UTC
29caae5 additional logging for rejected datapoints (#857) Occasionally it is useful to sample this if the client is ignoring the response. 21 July 2018, 00:01:13 UTC
9597683 remove deprecated usage of Class.newInstance (#856) Fixes #834. 20 July 2018, 19:18:30 UTC
2f3dc44 add trace logging for input events (#855) This will make it easier to capture raw data coming from the server as well as the set of data sources that were being run on the evaluator. 20 July 2018, 18:27:56 UTC
3212798 fix hash code for LongIntHashMap (#854) Before it was computing the murmur3 hash and then ignoring the result and using `Long.hashCode`. This change moves the computation of the murmur3 hash to a helper function and now LongIntHashMap uses that value. 18 July 2018, 17:42:28 UTC
18f8352 update dependencies (#853) 18 July 2018, 14:27:38 UTC
96cd84f roaring bitmap 0.7.14 18 July 2018, 14:07:19 UTC
30a9996 equalsverifier 2.4.8 18 July 2018, 14:02:20 UTC
cb0ca94 iep 1.2.5 18 July 2018, 14:00:28 UTC
2ae8f66 aws-java-sdk 1.11.356 18 July 2018, 13:51:02 UTC
449e05c joda-convert 2.1.1 18 July 2018, 13:44:45 UTC
9a27ff9 spectator 0.72.0 18 July 2018, 13:43:42 UTC
da894a1 akka 2.5.14 Adds support for async DNS resolver. 18 July 2018, 13:40:02 UTC
f76ba2d handle monotonic values with multiple samples (#851) For cloudwatch if a monotonic value gets multiple samples within an interval it will cause a spike when looking at the sum. Use the max to see the largest sample within a given interval. Example metrics with this issue are the HSM network stats (InterfaceEth2OctetsInput). https://docs.aws.amazon.com/cloudhsm/latest/userguide/hsm-metrics-cw.html 11 July 2018, 15:49:28 UTC
49a05f2 record the total number of unique metrics as gauge (#850) The index stats now have provision for additional gauges that concern the index as a whole, not only key statistics. The first of such metrics is the total number of unique items, or metrics, that up to now has not been recorded. 11 July 2018, 02:33:16 UTC
c393edb config setting for window of time grouping (#849) Adds a config setting that can be used to set the number of buffers that will be maintained when grouping the datapoints into time buckets. The default is 1 which will flush the data as soon as data arrives for the next time frame. More buffers allows more time for data to accumulate, but means that it will take longer to emit data for a given time. 10 July 2018, 05:21:50 UTC
f702809 add cloudwatch rds FreeStorageSpace metric (#846) Fixes #845. 29 June 2018, 21:47:27 UTC
3287576 fix name for AuroraBinlogReplicaLag (#844) AWS is inconsistent in the casing for BinLog between the disk usage and replica lag metrics. 22 June 2018, 23:19:15 UTC
bac8e64 add mapping for RDS replica lag (#843) The value is the number of seconds of lag. 22 June 2018, 22:57:57 UTC
5c3617a add test case for `^*` behavior with matcher (#842) There was some inconsistency between the UI validation which uses the javascript regex library and the backend. Originally we suspected this was a bug and it was getting mapped to an IndexOf query, but that is not the case. The java regex engine has a slightly different interpretation. 21 June 2018, 20:53:39 UTC
95ffab7 dependency updates (#840) 18 June 2018, 17:05:04 UTC
2adacdd spectator 0.70.2 Minor change needed for test case because spectator will no longer force gauge updates inline. For more information see Netflix/spectator#562. 18 June 2018, 16:48:17 UTC
5f96692 aws-java-sdk 1.11.339 18 June 2018, 16:39:27 UTC
0b16cb7 akka-http 10.1.3 18 June 2018, 16:38:34 UTC
c9f8000 akka 2.5.13 18 June 2018, 15:54:01 UTC
3fd4cb7 jackson 2.9.6 Has some additional gadget security fixes. 18 June 2018, 15:52:25 UTC
a3a4ad1 move metered queue config out of reference.conf (#839) Makes it easier for us to do comparison performance tests with other implementations. It can be included with the application config when needed. 11 June 2018, 16:02:15 UTC
5799522 remove useless call (#836) The return value is never checked. 02 June 2018, 03:12:06 UTC
8de4f09 do not show lines below lower bound with log scale (#835) Fixes #832. Before values below the lower bound would get mapped to a 0 and look like a line along the lower bound. If it is below the bound, then it should not show. 02 June 2018, 03:10:48 UTC
000eac0 update travis to build on jdk10 (#833) Dropping jdk9 as there is no reason to use it over jdk10 at this point. One test case needed to be fixed because there is now a `java.version.date` system property and it was accessing `java.version` expecting a string instead of an object. The tests fail on OpenJDK because of font diffs. For more information see: http://mail.openjdk.java.net/pipermail/discuss/2017-November/004621.html Equals verifier is not yet compatible with jdk11 bytecode. Also some image diffs are present when using the early access OracleJDK 11. So for now The build will only run on OracleJDK 10. 01 June 2018, 22:53:26 UTC
2a75a48 fix state isolation for streaming execution (#831) If an expression has multiple equivalent stateful sub-expressions, then the they would store the state to the same place since the key is the stateful expr instance. This changes the map used to look at the identity when performing the state lookup, so separate instances will have isolated state. We'll probably need to refactor this more thoroughly long term and either memoize equivalent sub-expressions during the evaluation or lookup based on position. 31 May 2018, 22:48:44 UTC
63e338b honor legend flag for v2.json format image (#830) See #564 and #568 for more context. The included image would suppress the image. For some use-cases it is desirable to include it. The previous output can still be achieved by explicitly using `no_legend=1`. Main use-case right now is an explode view that shows the images, but has some dynamic filtering for outliers or missing data. This avoids the need to make multiple requests for the same data if the user requests to see the legends. 30 May 2018, 20:01:23 UTC
5984c7b dependency updates (#829) 23 May 2018, 03:33:30 UTC
1a4fa06 sbt 1.1.5 23 May 2018, 03:21:57 UTC
a9b9f5d sbt-jmh 0.3.4 23 May 2018, 03:11:18 UTC
85b98f4 akka 2.5.12 22 May 2018, 23:46:56 UTC
f7c436b RoaringBitmap 0.7.10 22 May 2018, 23:46:28 UTC
eb2863e equalsverifier 2.4.6 22 May 2018, 23:40:50 UTC
75534c7 scala-logging 3.9.0 22 May 2018, 23:35:25 UTC
3fc1601 spectator 0.68.0 and iep 1.2.3 22 May 2018, 23:26:39 UTC
31b329d scalafmt 1.5.1 22 May 2018, 23:10:14 UTC
16ed668 set dstype for polled cloudwatch metrics (#827) It was not set before so all would get treated as rate. This led to some confusion for some of the S3 metrics where it appeared there was a massive drop in the amount of data stored in s3 after a brief gap. This drop was because the consolidation averaged with 0 for the NaN values since the values were considered rates. 16 May 2018, 00:02:31 UTC
45e6520 update to scala 2.12.6 (#821) 30 April 2018, 19:50:12 UTC
c624dbf fix possible contract error for IndexStats (#820) If there are duplicates for the number of distinct values, then it is possible to get an error from the sort: ``` java.lang.IllegalArgumentException: Comparison method violates its general contract! at java.util.TimSort.mergeHi(TimSort.java:899) ~[?:1.8.0_162] at java.util.TimSort.mergeAt(TimSort.java:516) ~[?:1.8.0_162] at java.util.TimSort.mergeCollapse(TimSort.java:441) ~[?:1.8.0_162] at java.util.TimSort.sort(TimSort.java:245) ~[?:1.8.0_162] at java.util.Arrays.sort(Arrays.java:1438) ~[?:1.8.0_162] ``` This adds a test and fixes the comparison operation. 23 April 2018, 01:20:48 UTC
1a56948 add helper for tracking index stats (#819) This provides a quick summary of some key stats for the index to see what is contributing the most to the number of distinct strings. In most cases we just use hive queries for digging into this, but these stats can be used before data is in hive and are always scoped to the specific index. In some cases where we already have rollup policies the hive data is raw from before the additional policies are enabled. 22 April 2018, 19:29:16 UTC
1621357 Add :pow operator (#818) Allows the user to use `math.pow` on time series expressions. `a,b,:pow` will return a new time series where the values are `a` taken to the power of `b`. 19 April 2018, 00:15:01 UTC
995c807 switch to `skip in publish := true` (#817) The old no packaging hack is no longer needed on recent versions of sbt and sbt-bintray. 10 April 2018, 17:20:42 UTC
6bec417 iep 1.2.2 (#815) This is mostly just to trigger a change to verify the release. The previous attempt at 1.6.0-rc.10 failed because it was still trying to publish 1.6.0-rc.9. The theory is that this is because they were both tagging the same commit. 06 April 2018, 23:10:50 UTC
44e2f58 ensure batches are regularly pushed (#814) For smaller deployments it would take time to fill up the entire batch causing a significant delay in the publishing. Now it will flush based on the age even if the batch is not yet full. 04 April 2018, 16:13:40 UTC
6cb745b Collect maximumUsedTranactionIds from cloudwatch (#813) This will help detect Transaction ID Wraparound in postgresql databases. See: https://aws.amazon.com/blogs/database/implement-an-early-warning-system-for-transaction-id-wraparound-in-amazon-rds-for-postgresql/ for details 03 April 2018, 21:46:18 UTC
871daf1 reduce number of nodes in demo dataset (#812) This is used for test cases and docs. Reducing the number of nodes significantly improves the time for running tests or generating docs that use longer time ranges. 03 April 2018, 17:30:12 UTC
101260f update dependencies (#811) 02 April 2018, 22:54:59 UTC
a1e84d6 sbt-updates 0.3.4 02 April 2018, 22:27:23 UTC
53d309a sbt-release 1.0.8 02 April 2018, 22:16:14 UTC
0669a51 sbt-bintray 0.5.4 02 April 2018, 22:03:47 UTC
85b77f1 sbt 1.1.2 02 April 2018, 21:59:05 UTC
ce2d7ea jackson 2.9.5 02 April 2018, 21:49:48 UTC
back to top