Skip to content

Commit

Permalink
Expose skip regex management in Emitter
Browse files Browse the repository at this point in the history
  • Loading branch information
jpmonettas committed May 2, 2024
1 parent 9853e52 commit 8b6c6cb
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 3 deletions.
11 changes: 11 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# Changelog

## master (unreleased)

### New Features

- Emitter now exposes setInstrumentationSkipRegex, removeInstrumentationSkipRegex and getInstrumentationSkipRegex

### Changes

### Bugs fixed
6 changes: 4 additions & 2 deletions src/clj/clojure/storm/repl.clj
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,12 @@
(println "ClojureStorm Help\n")
(println "ClojureStorm settings: \n")
(println (format " Instrumentation enable : %s" (Emitter/getInstrumentationEnable)))
(when-let [pref (Emitter/makePrefixesString (Emitter/getInstrumentationSkipPrefixes))]
(println (format " Instrument skip prefixes : %s" pref)))
(when-let [pref (Emitter/makePrefixesString (Emitter/getInstrumentationOnlyPrefixes))]
(println (format " Instrument only prefixes : %s" pref)))
(when-let [pref (Emitter/makePrefixesString (Emitter/getInstrumentationSkipPrefixes))]
(println (format " Instrument skip prefixes : %s" pref)))
(when-let [regex (Emitter/getInstrumentationSkipRegex)]
(println (format " Instrument skip regex : %s" (.pattern regex))))
(println)
(println "ClojureStorm Commands: \n")
(println " :inst - Enable instrumentation.")
Expand Down
14 changes: 13 additions & 1 deletion src/jvm/clojure/storm/Emitter.java
Original file line number Diff line number Diff line change
Expand Up @@ -157,7 +157,19 @@ public static void addInstrumentationOnlyPrefix(String prefix) {
public static void removeInstrumentationOnlyPrefix(String prefix) {
instrumentationOnlyPrefixes.remove(Compiler.munge(prefix));
}


public static void setInstrumentationSkipRegex(String regex) {
instrumentationSkipRegex = Pattern.compile(regex, Pattern.CASE_INSENSITIVE);
}

public static void removeInstrumentationSkipRegex() {
instrumentationSkipRegex = null;
}

public static Pattern getInstrumentationSkipRegex() {
return instrumentationSkipRegex;
}

public static boolean skipInstrumentation(String fqFnName) {

boolean instrument = false;
Expand Down

0 comments on commit 8b6c6cb

Please sign in to comment.