[
https://issues.apache.org/jira/browse/METRON-562?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15658369#comment-15658369
]
ASF GitHub Bot commented on METRON-562:
---------------------------------------
Github user cestella commented on a diff in the pull request:
https://github.com/apache/incubator-metron/pull/352#discussion_r87669635
--- Diff:
metron-analytics/metron-profiler/src/main/java/org/apache/metron/profiler/bolt/ProfileBuilderBolt.java
---
@@ -243,8 +244,18 @@ private void flush(Tuple tickTuple) {
measurement.setValue(result);
emit(measurement, tickTuple);
+ // Execute the update with the old state
+ Map<String, String> tickUpdate = profileConfig.getTickUpdate();
+ Map<String, Object> state = executor.getState();
+ if(tickUpdate != null) {
+ tickUpdate.forEach((var, expr) -> executor.assign(var, expr,
executor.getState()));
--- End diff --
Ok, I'm confused. When we do the update on a per-tuple basis,
`executor.assign` is called on every expression that will be updated in the
config. Let's say my expression is `"s" : "STATS_ADD(s, value)"` Now,
obviously, within context there is data from my message (`value`) and message
from the existing state (the `s` variable). In the case of a tick update, I'd
like to have available just the variables from the existing state (e.g. the `s`
variable in my example above). How would I go about accomplishing that? I
assumed that `s` would be held in the `executor.getState()`, but maybe not.
> Add rudimentary statistical outlier detection
> ---------------------------------------------
>
> Key: METRON-562
> URL: https://issues.apache.org/jira/browse/METRON-562
> Project: Metron
> Issue Type: New Feature
> Reporter: Casey Stella
> Assignee: Casey Stella
> Original Estimate: 48h
> Remaining Estimate: 48h
>
> With the advent of the profiler, we can now capture state. Furthermore, with
> Stellar, we can capture statistical summaries. We should provide rudimentary
> outlier detection functionality in the form of Stellar functions that can
> operate on captured state from the profiler.
> To begin, we should enable simple outlier tests using distance from a central
> measure such as Median Absolute Deviation (see
> http://www.itl.nist.gov/div898/handbook/eda/section3/eda35h.htm).
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)