@appland/appmap 3.16.1 → 3.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/built/appmap.html +1 -1
  3. package/built/main.js.map +1 -1
  4. package/built/package.json +1 -1
  5. package/built/src/cmds/agentInstaller/agentInstaller.js.map +1 -1
  6. package/built/src/cmds/agentInstaller/agentInstallerProcedure.js +1 -4
  7. package/built/src/cmds/agentInstaller/agentInstallerProcedure.js.map +1 -1
  8. package/built/src/cmds/agentInstaller/commandStruct.js +10 -1
  9. package/built/src/cmds/agentInstaller/commandStruct.js.map +1 -1
  10. package/built/src/cmds/agentInstaller/gradleInstaller.js +0 -7
  11. package/built/src/cmds/agentInstaller/gradleInstaller.js.map +1 -1
  12. package/built/src/cmds/agentInstaller/javaScriptAgentInstaller.js +0 -12
  13. package/built/src/cmds/agentInstaller/javaScriptAgentInstaller.js.map +1 -1
  14. package/built/src/cmds/agentInstaller/mavenInstaller.js +0 -7
  15. package/built/src/cmds/agentInstaller/mavenInstaller.js.map +1 -1
  16. package/built/src/cmds/agentInstaller/pythonAgentInstaller.js +0 -12
  17. package/built/src/cmds/agentInstaller/pythonAgentInstaller.js.map +1 -1
  18. package/built/src/cmds/agentInstaller/rubyAgentInstaller.js +0 -6
  19. package/built/src/cmds/agentInstaller/rubyAgentInstaller.js.map +1 -1
  20. package/built/src/cmds/open/openers.js +12 -4
  21. package/built/src/cmds/open/openers.js.map +1 -1
  22. package/built/src/cmds/open/showAppMap.js +13 -1
  23. package/built/src/cmds/open/showAppMap.js.map +1 -1
  24. package/built/src/cmds/record/configureRemainingRequestOptions.js +1 -2
  25. package/built/src/cmds/record/configureRemainingRequestOptions.js.map +1 -1
  26. package/built/src/cmds/record/confirmProcessCharacteristics.js +13 -8
  27. package/built/src/cmds/record/confirmProcessCharacteristics.js.map +1 -1
  28. package/built/src/cmds/record/createRecording.js +7 -1
  29. package/built/src/cmds/record/createRecording.js.map +1 -1
  30. package/built/src/cmds/record/record.js +3 -1
  31. package/built/src/cmds/record/record.js.map +1 -1
  32. package/built/src/fingerprint/canonicalize/info.js +2 -2
  33. package/built/src/fingerprint/canonicalize/info.js.map +1 -1
  34. package/built/src/fingerprint/canonicalize/sqlNormalized.js +2 -2
  35. package/built/src/fingerprint/canonicalize/sqlNormalized.js.map +1 -1
  36. package/built/src/fingerprint/canonicalize/sqlTables.js +2 -2
  37. package/built/src/fingerprint/canonicalize/sqlTables.js.map +1 -1
  38. package/built/src/fingerprint/canonicalize/trace.js +3 -3
  39. package/built/src/fingerprint/canonicalize/trace.js.map +1 -1
  40. package/built/src/fingerprint/canonicalize/update.js +3 -3
  41. package/built/src/fingerprint/canonicalize/update.js.map +1 -1
  42. package/built/src/functionStats.js +3 -3
  43. package/built/src/functionStats.js.map +1 -1
  44. package/built/src/search/matchSpec.js +5 -5
  45. package/built/src/search/matchSpec.js.map +1 -1
  46. package/built/src/search/trigram.js +2 -2
  47. package/built/src/search/trigram.js.map +1 -1
  48. package/package.json +2 -2
  49. package/built/src/database.js +0 -172
  50. package/built/src/database.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /* eslint-disable class-methods-use-this */
3
- const { analyzeQuery, obfuscate } = require('../../database');
3
+ const { analyzeSQL, normalizeSQL } = require('@appland/models');
4
4
  const EventTree = require('./eventTree');
5
5
  /**
6
6
  * At UPDATE level, the order of events is not important, and the amount of data
@@ -14,7 +14,7 @@ class Canonicalize extends EventTree {
14
14
  * @param {Event} event
15
15
  */
16
16
  sql(event) {
17
- const analyzedQuery = analyzeQuery(event.sql);
17
+ const analyzedQuery = analyzeSQL(event.sqlQuery);
18
18
  if (typeof analyzedQuery === 'string') {
19
19
  const sqlLower = event.sqlQuery.toLowerCase();
20
20
  if (sqlLower.indexOf('insert') !== -1 ||
@@ -22,7 +22,7 @@ class Canonicalize extends EventTree {
22
22
  return {
23
23
  kind: 'sql',
24
24
  sql: {
25
- normalized_query: obfuscate(event.sqlQuery, event.sql.database_type),
25
+ normalized_query: normalizeSQL(event.sqlQuery, event.sql.database_type),
26
26
  },
27
27
  };
28
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/fingerprint/canonicalize/update.js"],"names":[],"mappings":";AAAA,2CAA2C;AAC3C,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;AAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAEzC;;;;;GAKG;AACH,MAAM,YAAa,SAAQ,SAAS;IAClC;;;OAGG;IACH,GAAG,CAAC,KAAK;QACP,MAAM,aAAa,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9C,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;YACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC9C,IACE,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACjC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EACjC;gBACA,OAAO;oBACL,IAAI,EAAE,KAAK;oBACX,GAAG,EAAE;wBACH,gBAAgB,EAAE,SAAS,CACzB,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,GAAG,CAAC,aAAa,CACxB;qBACF;iBACF,CAAC;aACH;SACF;aAAM,IAAI,aAAa,IAAI,aAAa,CAAC,OAAO,EAAE;YACjD,IACE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACxC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAClC,EACD;gBACA,OAAO;oBACL,IAAI,EAAE,KAAK;oBACX,GAAG,EAAE;wBACH,cAAc,EAAE,aAAa;qBAC9B;iBACF,CAAC;aACH;SACF;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iBAAiB,CAAC,KAAK;QACrB,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,KAAK,CAAC,kBAAkB;gBACnC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,WAAW;gBACtC,CAAC,CAAC,IAAI;SACT,CAAC;IACJ,CAAC;IAED,iBAAiB,CAAC,KAAK;QACrB,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,KAAK,CAAC,kBAAkB;gBACnC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,WAAW;gBACtC,CAAC,CAAC,IAAI;SACT,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,KAAK;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC/D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QAED,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,MAAM;SACP,CAAC;IACJ,CAAC;CACF;AAED,MAAM,CAAC,OAAO,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"update.js","sourceRoot":"","sources":["../../../../src/fingerprint/canonicalize/update.js"],"names":[],"mappings":";AAAA,2CAA2C;AAC3C,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAChE,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAEzC;;;;;GAKG;AACH,MAAM,YAAa,SAAQ,SAAS;IAClC;;;OAGG;IACH,GAAG,CAAC,KAAK;QACP,MAAM,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACjD,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;YACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;YAC9C,IACE,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACjC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EACjC;gBACA,OAAO;oBACL,IAAI,EAAE,KAAK;oBACX,GAAG,EAAE;wBACH,gBAAgB,EAAE,YAAY,CAC5B,KAAK,CAAC,QAAQ,EACd,KAAK,CAAC,GAAG,CAAC,aAAa,CACxB;qBACF;iBACF,CAAC;aACH;SACF;aAAM,IAAI,aAAa,IAAI,aAAa,CAAC,OAAO,EAAE;YACjD,IACE,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACxC,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAClC,EACD;gBACA,OAAO;oBACL,IAAI,EAAE,KAAK;oBACX,GAAG,EAAE;wBACH,cAAc,EAAE,aAAa;qBAC9B;iBACF,CAAC;aACH;SACF;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iBAAiB,CAAC,KAAK;QACrB,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,KAAK,CAAC,kBAAkB;gBACnC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,WAAW;gBACtC,CAAC,CAAC,IAAI;SACT,CAAC;IACJ,CAAC;IAED,iBAAiB,CAAC,KAAK;QACrB,OAAO;YACL,IAAI,EAAE,qBAAqB;YAC3B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,KAAK,CAAC,kBAAkB;gBACnC,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,WAAW;gBACtC,CAAC,CAAC,IAAI;SACT,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,KAAK;QAChB,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC/D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC;SACb;QAED,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,MAAM;SACP,CAAC;IACJ,CAAC;CACF;AAED,MAAM,CAAC,OAAO,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  // @ts-nocheck
3
- const { analyzeQuery, obfuscate } = require('./database');
3
+ const { analyzeSQL, normalizeSQL } = require('@appland/models');
4
4
  const { formatValue, formatHttpServerRequest } = require('./utils');
5
5
  /** @typedef {import('./search/types').Trigram} Trigram */
6
6
  /**
@@ -70,7 +70,7 @@ class FunctionStats {
70
70
  ...new Set(this.eventMatches
71
71
  .map((e) => [e.event].concat(e.descendants).filter((d) => d.sql))
72
72
  .flat()
73
- .map((e) => obfuscate(e.sqlQuery, e.sql.database_type))),
73
+ .map((e) => normalizeSQL(e.sqlQuery, e.sql.database_type))),
74
74
  ].sort();
75
75
  }
76
76
  get sqlTables() {
@@ -78,7 +78,7 @@ class FunctionStats {
78
78
  ...new Set(this.eventMatches
79
79
  .map((e) => [e.event].concat(e.descendants).filter((d) => d.sql))
80
80
  .flat()
81
- .map((e) => analyzeQuery(e.sql))
81
+ .map((e) => analyzeSQL(e.sqlQuery))
82
82
  .filter((e) => typeof e === 'object')
83
83
  .map((sql) => sql.tables)
84
84
  .flat()),
@@ -1 +1 @@
1
- {"version":3,"file":"functionStats.js","sourceRoot":"","sources":["../../src/functionStats.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"functionStats.js","sourceRoot":"","sources":["../../src/functionStats.js"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  /* eslint-disable max-classes-per-file */
3
- const { analyzeQuery, obfuscate } = require('../database');
3
+ const { analyzeSQL, normalizeSQL } = require('@appland/models');
4
4
  /**
5
5
  * @typedef {import('./types').CodeObject} CodeObject
6
6
  * @typedef {(codeObject: CodeObject) => boolean} MatchFn
@@ -70,9 +70,9 @@ function matchQuery(expectedQuery) {
70
70
  }
71
71
  // TODO: Brute force is probably not a good idea.
72
72
  // Need to store the database type on the codeObject.
73
- return (obfuscate(codeObject.name, 'mysql') === expectedQuery ||
74
- obfuscate(codeObject.name, 'postgres') === expectedQuery ||
75
- obfuscate(codeObject.name, 'sqlite') === expectedQuery);
73
+ return (normalizeSQL(codeObject.name, 'mysql') === expectedQuery ||
74
+ normalizeSQL(codeObject.name, 'postgres') === expectedQuery ||
75
+ normalizeSQL(codeObject.name, 'sqlite') === expectedQuery);
76
76
  };
77
77
  fn.toJSON = () => `query ${expectedQuery}`;
78
78
  return fn;
@@ -86,7 +86,7 @@ function matchTable(tableName) {
86
86
  if (codeObject.type !== 'query') {
87
87
  return false;
88
88
  }
89
- const queryInfo = /** @type {SQLInfo} */ analyzeQuery({
89
+ const queryInfo = /** @type {SQLInfo} */ analyzeSQL({
90
90
  sql: codeObject.name,
91
91
  database_type: codeObject.database_type,
92
92
  });
@@ -1 +1 @@
1
- {"version":3,"file":"matchSpec.js","sourceRoot":"","sources":["../../../src/search/matchSpec.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"matchSpec.js","sourceRoot":"","sources":["../../../src/search/matchSpec.js"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  "use strict";
2
- const { obfuscate } = require('../database');
2
+ const { normalizeSQL } = require('@appland/models');
3
3
  /** @typedef {import('./types').CodeObject} CodeObject */
4
4
  /** @typedef {import('./types').Event} Event */
5
5
  const normalizeId = (
6
6
  /** @type {CodeObject} */ co,
7
7
  /** @type {Event} */ evt) => {
8
8
  if (co && co.type === 'query') {
9
- return obfuscate(evt.sqlQuery, evt.sql.database_type);
9
+ return normalizeSQL(evt.sqlQuery, evt.sql.database_type);
10
10
  }
11
11
  return co.id;
12
12
  };
@@ -1 +1 @@
1
- {"version":3,"file":"trigram.js","sourceRoot":"","sources":["../../../src/search/trigram.js"],"names":[],"mappings":";AAAA,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;AAE7C,yDAAyD;AACzD,+CAA+C;AAE/C,MAAM,WAAW,GAAG;AAClB,yBAAyB,CAAC,EAAE;AAC5B,oBAAoB,CAAC,GAAG,EACxB,EAAE;IACF,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,EAAE;QAC7B,OAAO,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;KACvD;IAED,OAAO,EAAE,CAAC,EAAE,CAAC;AACf,CAAC,CAAC;AAEF,MAAM,OAAO;IACX;;;;;;OAMG;IACH,YAAY,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY;QAC7C,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,IAAI,EAAE;QACJ,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxE,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1C,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACd,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,EAAE,EAAE;YACN,OAAO,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;SACpC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,IAAI,QAAQ;QACV,MAAM,EAAE,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,EAAE,EAAE;YACN,OAAO,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SACrC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,WAAW,EAAE,KAAK,EAAE,WAAW;IACpD,4CAA4C;IAC5C,MAAM,YAAY,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC5D,4CAA4C;IAC5C,MAAM,OAAO,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9D,4CAA4C;IAC5C,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,EAAE;QACxB,IAAI,CAAC,GAAG,EAAE;YACR,OAAO,IAAI,CAAC;SACb;QAED,MAAM,WAAW,GAAG,CAAC,yBAAyB,CAAC,UAAU,EAAE,EAAE;YAC3D,IAAI,UAAU,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;gBACvD,OAAO,UAAU,CAAC;aACnB;YAED,OAAO,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACxC,CAAC,CAAC;QACF,OAAO,WAAW,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACrC,CAAC,CAAC;IAEF,OAAO;QACL,eAAe,EAAE,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,YAAY,CAAC;QAC3E,YAAY,EAAE,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC;QACnE,cAAc,EAAE,IAAI,OAAO,CAAC,WAAW,EAAE,KAAK,EAAE,WAAW,EAAE,SAAS,CAAC;KACxE,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,OAAO,GAAG,aAAa,CAAC"}
1
+ {"version":3,"file":"trigram.js","sourceRoot":"","sources":["../../../src/search/trigram.js"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@appland/appmap",
3
- "version": "3.16.1",
3
+ "version": "3.18.0",
4
4
  "description": "",
5
5
  "bin": "built/src/cli.js",
6
6
  "publishConfig": {
@@ -66,7 +66,7 @@
66
66
  "vuex"
67
67
  ],
68
68
  "dependencies": {
69
- "@appland/components": "1.21.0",
69
+ "@appland/components": "1.23.0",
70
70
  "@appland/diagrams": "1.5.1",
71
71
  "@appland/models": "^1.8.1",
72
72
  "@sidvind/better-ajv-errors": "^0.9.1",
@@ -1,172 +0,0 @@
1
- "use strict";
2
- // @ts-ignore
3
- const { normalizeSQL } = require('@appland/models');
4
- // https://github.com/newrelic/newrelic-ruby-agent/blob/dev/lib/new_relic/agent/database/obfuscation_helpers.rb
5
- // License: https://github.com/newrelic/newrelic-ruby-agent/blob/main/LICENSE
6
- // Apache License 2.0
7
- const COMPONENTS_REGEXP_MAP = {
8
- single_quotes: /'(?:[^']|'')*?(?:\\'.*|'(?!'))/g,
9
- double_quotes: /"(?:[^"]|"")*?(?:\\".*|"(?!"))/g,
10
- dollar_quotes: /(\$(?!\d)[^$]*?\$).*?(?:\1|$)/g,
11
- uuids: /\{?(?:[0-9a-fA-F]-*){32}\}?/g,
12
- numeric_literals: /-?\b(?:[0-9]+\.)?[0-9]+([eE][+-]?[0-9]+)?\b/g,
13
- boolean_literals: /\b(?:true|false|null)\b/gi,
14
- hexadecimal_literals: /0x[0-9a-fA-F]+/g,
15
- comments: /(?:#|--).*?(?=\r|\n|$)/gi,
16
- multi_line_comments: /\/\*(?:[^/]|\/[^*])*?(?:\*\/|\/\*.*)/g,
17
- oracle_quoted_strings: /q'\[.*?(?:\]'|$)|q'\{.*?(?:\}'|$)|q'<.*?(?:>'|$)|q'\(.*?(?:\)'|$)/g,
18
- };
19
- // We use these to check whether the query contains any quote characters
20
- // after obfuscation. If so, that's a good indication that the original
21
- // query was malformed, and so our obfuscation can't reliably find
22
- // literals. In such a case, we'll replace the entire query with a
23
- // placeholder.
24
- const CLEANUP_REGEXP = {
25
- mysql: /'|"|\/\*|\*\//,
26
- mysql2: /'|"|\/\*|\*\//,
27
- postgres: /'|\/\*|\*\/|\$(?!\?)/,
28
- sqlite: /'|\/\*|\*\//,
29
- cassandra: /'|\/\*|\*\//,
30
- oracle: /'|\/\*|\*\//,
31
- oracle_enhanced: /'|\/\*|\*\//,
32
- };
33
- /**
34
- * @type {{string: string[]}}
35
- */
36
- const DIALECT_COMPONENTS = {
37
- // @ts-ignore
38
- fallback: Object.keys(COMPONENTS_REGEXP_MAP),
39
- mysql: [
40
- 'single_quotes',
41
- 'double_quotes',
42
- 'numeric_literals',
43
- 'boolean_literals',
44
- 'hexadecimal_literals',
45
- 'comments',
46
- 'multi_line_comments',
47
- ],
48
- postgres: [
49
- 'single_quotes',
50
- 'dollar_quotes',
51
- 'uuids',
52
- 'numeric_literals',
53
- 'boolean_literals',
54
- 'comments',
55
- 'multi_line_comments',
56
- ],
57
- sqlite: [
58
- 'single_quotes',
59
- 'numeric_literals',
60
- 'boolean_literals',
61
- 'hexadecimal_literals',
62
- 'comments',
63
- 'multi_line_comments',
64
- ],
65
- oracle: [
66
- 'single_quotes',
67
- 'oracle_quoted_strings',
68
- 'numeric_literals',
69
- 'comments',
70
- 'multi_line_comments',
71
- ],
72
- cassandra: [
73
- 'single_quotes',
74
- 'uuids',
75
- 'numeric_literals',
76
- 'boolean_literals',
77
- 'hexadecimal_literals',
78
- 'comments',
79
- 'multi_line_comments',
80
- ],
81
- };
82
- const PLACEHOLDER = '?';
83
- function obfuscateSingleQuoteLiterals(sql) {
84
- if (!COMPONENTS_REGEXP_MAP.single_quotes.test(sql)) {
85
- return sql;
86
- }
87
- return sql.gsub(COMPONENTS_REGEXP_MAP.single_quotes, PLACEHOLDER);
88
- }
89
- /**
90
- * @param {string} dialect
91
- * @returns {RegExp[]}
92
- */
93
- function generateRegexp(dialect) {
94
- const components = DIALECT_COMPONENTS[dialect];
95
- // No Regexp.union in JS
96
- return components.map((component) => COMPONENTS_REGEXP_MAP[component]);
97
- }
98
- const MYSQL_COMPONENTS_REGEXP = generateRegexp('mysql');
99
- const POSTGRES_COMPONENTS_REGEXP = generateRegexp('postgres');
100
- const SQLITE_COMPONENTS_REGEXP = generateRegexp('sqlite');
101
- const ORACLE_COMPONENTS_REGEXP = generateRegexp('oracle');
102
- const CASSANDRA_COMPONENTS_REGEXP = generateRegexp('cassandra');
103
- const FALLBACK_REGEXP = generateRegexp('fallback');
104
- function detectUnmatchedPairs(obfuscated, adapter) {
105
- if (CLEANUP_REGEXP[adapter]) {
106
- return CLEANUP_REGEXP[adapter].test(obfuscated);
107
- }
108
- return CLEANUP_REGEXP.mysql.test(obfuscated);
109
- }
110
- const FAILED_TO_OBFUSCATE_MESSAGE = 'Failed to obfuscate SQL query - quote characters remained after obfuscation';
111
- /**
112
- * Replaces literal query parameters with parameter symbols (e.g. '?');
113
- *
114
- * @param {string} sql
115
- * @param {string} adapter
116
- * @returns {string}
117
- */
118
- function obfuscate(sql, adapter) {
119
- /** @type {RegExp[]} */ let regexp;
120
- switch (adapter) {
121
- case 'mysql':
122
- case 'mysql2':
123
- regexp = MYSQL_COMPONENTS_REGEXP;
124
- break;
125
- case 'postgres':
126
- regexp = POSTGRES_COMPONENTS_REGEXP;
127
- break;
128
- case 'sqlite':
129
- regexp = SQLITE_COMPONENTS_REGEXP;
130
- break;
131
- case 'oracle':
132
- case 'oracle_enhanced':
133
- regexp = ORACLE_COMPONENTS_REGEXP;
134
- break;
135
- case 'cassandra':
136
- regexp = CASSANDRA_COMPONENTS_REGEXP;
137
- break;
138
- default:
139
- regexp = FALLBACK_REGEXP;
140
- }
141
- let obfuscated = sql;
142
- // eslint-disable-next-line no-return-assign
143
- regexp.forEach((re) => (obfuscated = obfuscated.replace(re, PLACEHOLDER)));
144
- if (detectUnmatchedPairs(obfuscated, adapter)) {
145
- obfuscated = FAILED_TO_OBFUSCATE_MESSAGE;
146
- }
147
- return obfuscated;
148
- }
149
- const QUERY_CACHE = {};
150
- function analyzeQuery(
151
- /** @type {import('./search/types').SQL | string} */ query) {
152
- if (typeof query === 'string') {
153
- // This is a problem because we don't know what SQL dialect to apply.
154
- console.warn(`No database_type available for ${query}`);
155
- return normalizeSQL(query);
156
- }
157
- const { sql, database_type: databaseType } = query;
158
- if (sql && databaseType) {
159
- const obfuscatedSQL = obfuscate(sql, databaseType);
160
- const cachedResult = QUERY_CACHE[obfuscatedSQL];
161
- if (cachedResult) {
162
- return cachedResult;
163
- }
164
- const result = normalizeSQL(obfuscatedSQL);
165
- QUERY_CACHE[obfuscatedSQL] = result;
166
- return result;
167
- }
168
- console.warn(`sql or database_type not available for ${JSON.stringify(query)}`);
169
- return normalizeSQL(sql);
170
- }
171
- module.exports = { analyzeQuery, obfuscate, obfuscateSingleQuoteLiterals };
172
- //# sourceMappingURL=database.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/database.js"],"names":[],"mappings":"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"}