diff --git a/build.gradle b/build.gradle index d09dabf..a42e224 100644 --- a/build.gradle +++ b/build.gradle @@ -24,7 +24,7 @@ repositories { } group = 'com.newrelic.instrumentation' -version = '2.1' +version = '2.1.2' dependencies { // Agent and Weave API jars: diff --git a/src/main/java/com/newrelic/fit/javax/servlet/http/TransactionNamer.java b/src/main/java/com/newrelic/fit/javax/servlet/http/TransactionNamer.java index 3c2ef26..fc62287 100644 --- a/src/main/java/com/newrelic/fit/javax/servlet/http/TransactionNamer.java +++ b/src/main/java/com/newrelic/fit/javax/servlet/http/TransactionNamer.java @@ -97,8 +97,8 @@ public void setType(String ptype) { } } - private LinkedHashMap parametersToAppend = new LinkedHashMap(); - private LinkedHashMap obfuscationPatterns = new LinkedHashMap(); + private Map parametersToAppend = new LinkedHashMap(); + private Map obfuscationPatterns = new LinkedHashMap(); private LinkedList groupingPatterns = new LinkedList(); private static final Logger LOGGER = NewRelic.getAgent().getLogger(); @@ -166,8 +166,7 @@ public String groupURI(String URI) { private void initGroupings(Config nrConfig) { LOGGER.log(Level.FINER, "HTTPServlet-transaction-namer - Name Grouper - initializing grouping patterns."); - LOGGER.log(Level.FINER, "HTTPServlet-transaction-namer - Name Obfuscator - initializing obfuscation patterns."); - List txnPatterns = Utilities.getStringList(nrConfig.getValue("httpservlet_transaction_namer.name_obfuscator.patterns")); + List txnPatterns = Utilities.getStringList(nrConfig.getValue("httpservlet_transaction_namer.name_grouper.patterns")); if (txnPatterns == null) { LOGGER.log(Level.FINER, "HTTPServlet-transaction-namer - Name Grouper - grouping patterns not defined."); LOGGER.log(Level.FINER, "HTTPServlet-transaction-namer - Name Grouper - use \"patterns:\" in newrelic.yml with patterns in an indented list, or a space-delimited string."); @@ -179,6 +178,7 @@ private void initGroupings(Config nrConfig) { Pattern thisGrouping = Pattern.compile(thisPattern); if (!groupingPatterns.contains(thisGrouping)) { groupingPatterns.add(thisGrouping); + LOGGER.log(Level.FINER, "HTTPServlet-transaction-namer - Name Grouper - added pattern: " + thisPattern); } } catch (Exception e) { LOGGER.log(Level.FINER, "HTTPServlet-transaction-namer - Name Grouper - invalid pattern: " + thisPattern); @@ -239,7 +239,7 @@ private void initAppendParameters(Config nrConfig) { } for (Object thisParamObj : (List) paramsObj) { if ((thisParamObj != null) && (thisParamObj instanceof Map)) { - LinkedHashMap thisParamMap = (LinkedHashMap) thisParamObj; + Map thisParamMap = (Map) thisParamObj; if ((thisParamMap != null) && thisParamMap.containsKey("name") && thisParamMap.containsKey("type")) { String name = thisParamMap.get("name"); String type = thisParamMap.get("type"); @@ -348,9 +348,15 @@ public void instrumentRequest( Transaction transaction ) throws ServletException, IOException { LOGGER.log(Level.FINER, "HTTPServlet-transaction-namer - Activated for this request."); - String txnAppend = ""; String URI = request.getRequestURI(); + if(isParameterAppendingEnabled()) { + String txnAppend = appendParameters(request); + if (!txnAppend.isEmpty()) { + URI += "/" + txnAppend; + } + } + if(isGroupingEnabled()) { URI = groupURI(URI); } @@ -374,22 +380,11 @@ public void instrumentRequest( } } - if(isParameterAppendingEnabled()) { - txnAppend = appendParameters(request); - } - if (URI != null && !URI.isEmpty()) { - if(txnAppend == null || txnAppend.isEmpty()) { - LOGGER.log(Level.FINER, - "HTTPServlet-transaction-namer - setting transaction name to: " + URI); - transaction.setTransactionName(TransactionNamePriority.CUSTOM_HIGH, - false, "HTTPServlet", URI); - } else { - LOGGER.log(Level.FINER, - "HTTPServlet-transaction-namer - setting transaction name to: " + URI + "/" + txnAppend); - transaction.setTransactionName(TransactionNamePriority.CUSTOM_HIGH, - false, "HTTPServlet", URI, txnAppend); - } + LOGGER.log(Level.FINER, + "HTTPServlet-transaction-namer - setting transaction name to: " + URI); + transaction.setTransactionName(TransactionNamePriority.CUSTOM_HIGH, + false, "HTTPServlet", URI); } } }