@breautek/storm 9.2.8 → 9.3.1
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.
- package/CHANGELOG.md +14 -0
- package/docs/assets/hierarchy.js +1 -1
- package/docs/assets/icons.js +1 -1
- package/docs/assets/icons.svg +1 -1
- package/docs/assets/navigation.js +1 -1
- package/docs/assets/search.js +1 -1
- package/docs/classes/Application.html +17 -17
- package/docs/classes/ConfigLoader.html +3 -3
- package/docs/classes/Database.html +2 -2
- package/docs/classes/DatabaseCastObject.html +2 -2
- package/docs/classes/DatabaseConnection.html +21 -21
- package/docs/classes/DatabaseQueryError.html +6 -6
- package/docs/classes/DeadLockError.html +6 -6
- package/docs/classes/DiskSpaceError.html +5 -5
- package/docs/classes/DropTemporaryTableQuery.html +7 -7
- package/docs/classes/DuplicateEntryError.html +5 -5
- package/docs/classes/EntityNotFoundError.html +5 -5
- package/docs/classes/ExpiredTokenError.html +5 -5
- package/docs/classes/ForbiddenError.html +44 -0
- package/docs/classes/GetMySQLVersion.html +7 -7
- package/docs/classes/Handler.html +2 -2
- package/docs/classes/IllegalStateError.html +5 -5
- package/docs/classes/InternalError.html +5 -5
- package/docs/classes/InvalidCredentialsError.html +5 -5
- package/docs/classes/InvalidValueError.html +5 -5
- package/docs/classes/LineString.html +2 -2
- package/docs/classes/LockWaitTimeoutError.html +6 -6
- package/docs/classes/ManagedDatabaseConnection.html +5 -5
- package/docs/classes/MetricStore.html +7 -0
- package/docs/classes/Middleware.html +2 -2
- package/docs/classes/MissingConfigError.html +5 -5
- package/docs/classes/MissingParameterError.html +5 -5
- package/docs/classes/MySQLConnection.html +25 -25
- package/docs/classes/MySQLDatabase.html +2 -2
- package/docs/classes/NotImplementedError.html +5 -5
- package/docs/classes/Point.html +2 -2
- package/docs/classes/Polygon.html +2 -2
- package/docs/classes/Query.html +7 -7
- package/docs/classes/RawError.html +5 -5
- package/docs/classes/RawQuery.html +7 -7
- package/docs/classes/Request.html +3 -3
- package/docs/classes/Response.html +2 -2
- package/docs/classes/ResponseData.html +3 -3
- package/docs/classes/ServiceProvider.html +2 -2
- package/docs/classes/ServiceResponse.html +2 -2
- package/docs/classes/SetSessionVariableQuery.html +7 -7
- package/docs/classes/StormError.html +5 -5
- package/docs/classes/TemporaryTableQuery.html +7 -7
- package/docs/classes/TimeoutError.html +5 -5
- package/docs/classes/Token.html +2 -2
- package/docs/classes/TokenManager.html +2 -2
- package/docs/classes/Transaction.html +2 -2
- package/docs/classes/UnauthorizedAccessError.html +5 -5
- package/docs/enums/ErrorCode.html +2 -2
- package/docs/enums/ExitCode.html +2 -2
- package/docs/enums/HTTPMethod.html +2 -2
- package/docs/enums/IsolationLevel.html +2 -2
- package/docs/enums/JWTError.html +2 -2
- package/docs/enums/StatusCode.html +2 -2
- package/docs/enums/TransactionAccessLevel.html +2 -2
- package/docs/functions/getInstance.html +1 -1
- package/docs/hierarchy.html +1 -1
- package/docs/index.html +1 -1
- package/docs/interfaces/IAdditionalErrorDetails.html +1 -1
- package/docs/interfaces/ICloudwatchConfig.html +2 -2
- package/docs/interfaces/ICloudwatchCredentials.html +2 -2
- package/docs/interfaces/ICloudwatchStreamConfig.html +2 -2
- package/docs/interfaces/IConfig.html +3 -3
- package/docs/interfaces/IDatabaseConfig.html +2 -2
- package/docs/interfaces/IDatabaseConnection.html +5 -5
- package/docs/interfaces/IDatabasePosition.html +2 -2
- package/docs/interfaces/IErrorResponse.html +2 -2
- package/docs/interfaces/IFormData.html +2 -2
- package/docs/interfaces/IGetMySQLVersionResult.html +2 -2
- package/docs/interfaces/IGetMySQLVersionRow.html +2 -2
- package/docs/interfaces/IInsertQueryResult.html +2 -2
- package/docs/interfaces/IJWTVerifyOptions.html +2 -2
- package/docs/interfaces/IOKPacket.html +2 -2
- package/docs/interfaces/IParameterMap.html +1 -1
- package/docs/interfaces/IQueryable.html +2 -2
- package/docs/interfaces/IRequestResponse.html +2 -2
- package/docs/interfaces/ISetSessionVariableQueryInput.html +2 -2
- package/docs/interfaces/IStormCLIArgs.html +2 -2
- package/docs/interfaces/ITemporaryTableQueryInput.html +2 -2
- package/docs/interfaces/IUpdateQueryResult.html +2 -2
- package/docs/interfaces/formidable.FileJSON.html +1 -1
- package/docs/interfaces/formidable.Part.html +1 -1
- package/docs/types/IDeleteQueryResult.html +1 -1
- package/docs/types/IStoredProcedureResult.html +1 -1
- package/docs/types/TCoordinate.html +1 -1
- package/docs/types/TExpiresIn.html +1 -1
- package/docs/types/TSerializableResponse.html +1 -1
- package/docs/types/TSupportedResponsePrimitives.html +1 -1
- package/docs/types/TSupportedResponseTypes.html +1 -1
- package/lib/Application.d.ts +1 -0
- package/lib/Application.js +5 -0
- package/lib/Application.js.map +1 -1
- package/lib/DatabaseConnection.js +1 -1
- package/lib/ForbiddenError.d.ts +10 -0
- package/lib/ForbiddenError.js +39 -0
- package/lib/ForbiddenError.js.map +1 -0
- package/lib/JWTVerifyOptionsParser.d.ts +1 -1
- package/lib/JWTVerifyOptionsParser.js +1 -3
- package/lib/JWTVerifyOptionsParser.js.map +1 -1
- package/lib/MetricStore.d.ts +12 -0
- package/lib/MetricStore.js +49 -0
- package/lib/MetricStore.js.map +1 -0
- package/lib/MySQLConnection.js +11 -20
- package/lib/MySQLConnection.js.map +1 -1
- package/lib/MySQLDatabase.js +2 -0
- package/lib/MySQLDatabase.js.map +1 -1
- package/lib/api.d.ts +2 -0
- package/lib/api.js +6 -2
- package/lib/api.js.map +1 -1
- package/lib/handlers/HealthHandler.d.ts +13 -0
- package/lib/handlers/HealthHandler.js +22 -0
- package/lib/handlers/HealthHandler.js.map +1 -0
- package/package.json +5 -5
- package/src/Application.ts +6 -0
- package/src/DatabaseConnection.ts +1 -1
- package/src/ForbiddenError.ts +41 -0
- package/src/JWTVerifyOptionsParser.ts +1 -3
- package/src/MetricStore.ts +61 -0
- package/src/MySQLConnection.ts +12 -21
- package/src/MySQLDatabase.ts +2 -1
- package/src/api.ts +2 -0
- package/src/handlers/HealthHandler.ts +37 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>TSupportedResponseTypes | @breautek/storm</title><meta name="description" content="Documentation for @breautek/storm"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@breautek/storm</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">TSupportedResponseTypes</a></li></ul><h1>Type Alias TSupportedResponseTypes</h1></div><div class="tsd-signature"><span class="tsd-kind-type-alias">TSupportedResponseTypes</span><span class="tsd-signature-symbol">:</span><br/> <span class="tsd-signature-symbol">|</span> <a href="TSupportedResponsePrimitives.html" class="tsd-signature-type tsd-kind-type-alias">TSupportedResponsePrimitives</a><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">Error</span><br/> <span class="tsd-signature-symbol">|</span> <a href="../classes/StormError.html" class="tsd-signature-type tsd-kind-class">StormError</a><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">Buffer</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ReadableStream</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">Stream.Readable</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/breautek/storm/blob/
|
|
1
|
+
<!DOCTYPE html><html class="default" lang="en" data-base="../"><head><meta charset="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>TSupportedResponseTypes | @breautek/storm</title><meta name="description" content="Documentation for @breautek/storm"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script defer src="../assets/main.js"></script><script async src="../assets/icons.js" id="tsd-icons-script"></script><script async src="../assets/search.js" id="tsd-search-script"></script><script async src="../assets/navigation.js" id="tsd-nav-script"></script><script async src="../assets/hierarchy.js" id="tsd-hierarchy-script"></script></head><body><script>document.documentElement.dataset.theme = localStorage.getItem("tsd-theme") || "os";document.body.style.display="none";setTimeout(() => window.app?app.showPage():document.body.style.removeProperty("display"),500)</script><header class="tsd-page-toolbar"><div class="tsd-toolbar-contents container"><a href="../index.html" class="title">@breautek/storm</a><div id="tsd-toolbar-links"></div><button id="tsd-search-trigger" class="tsd-widget" aria-label="Search"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-search"></use></svg></button><dialog id="tsd-search" aria-label="Search"><input role="combobox" id="tsd-search-input" aria-controls="tsd-search-results" aria-autocomplete="list" aria-expanded="true" autocapitalize="off" autocomplete="off" placeholder="Search the docs" maxLength="100"/><ul role="listbox" id="tsd-search-results"></ul><div id="tsd-search-status" aria-live="polite" aria-atomic="true"><div>Preparing search index...</div></div></dialog><a href="#" class="tsd-widget menu" id="tsd-toolbar-menu-trigger" data-toggle="menu" aria-label="Menu"><svg width="16" height="16" viewBox="0 0 16 16" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-menu"></use></svg></a></div></header><div class="container container-main"><div class="col-content"><div class="tsd-page-title"><ul class="tsd-breadcrumb" aria-label="Breadcrumb"><li><a href="" aria-current="page">TSupportedResponseTypes</a></li></ul><h1>Type Alias TSupportedResponseTypes</h1></div><div class="tsd-signature"><span class="tsd-kind-type-alias">TSupportedResponseTypes</span><span class="tsd-signature-symbol">:</span><br/> <span class="tsd-signature-symbol">|</span> <a href="TSupportedResponsePrimitives.html" class="tsd-signature-type tsd-kind-type-alias">TSupportedResponsePrimitives</a><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">Error</span><br/> <span class="tsd-signature-symbol">|</span> <a href="../classes/StormError.html" class="tsd-signature-type tsd-kind-class">StormError</a><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">Buffer</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">ReadableStream</span><br/> <span class="tsd-signature-symbol">|</span> <span class="tsd-signature-type">Stream.Readable</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/breautek/storm/blob/1730c85c03f72ff31a0783cfb16124f7b5c82a69/src/Response.ts#L62">src/Response.ts:62</a></li></ul></aside></div><div class="col-sidebar"><div class="page-menu"><div class="tsd-navigation settings"><details class="tsd-accordion"><summary class="tsd-accordion-summary"><svg width="20" height="20" viewBox="0 0 24 24" fill="none" aria-hidden="true"><use href="../assets/icons.svg#icon-chevronDown"></use></svg><h3>Settings</h3></summary><div class="tsd-accordion-details"><div class="tsd-filter-visibility"><span class="settings-label">Member Visibility</span><ul id="tsd-filter-options"><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-protected" name="protected"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Protected</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-inherited" name="inherited" checked/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>Inherited</span></label></li><li class="tsd-filter-item"><label class="tsd-filter-input"><input type="checkbox" id="tsd-filter-external" name="external"/><svg width="32" height="32" viewBox="0 0 32 32" aria-hidden="true"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></svg><span>External</span></label></li></ul></div><div class="tsd-theme-toggle"><label class="settings-label" for="tsd-theme">Theme</label><select id="tsd-theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></div></div></details></div></div><div class="site-menu"><nav class="tsd-navigation"><a href="../index.html">@breautek/storm</a><ul class="tsd-small-nested-navigation" id="tsd-nav-container"><li>Loading...</li></ul></nav></div></div></div><footer><p class="tsd-generator">Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></footer><div class="overlay"></div></body></html>
|
package/lib/Application.d.ts
CHANGED
|
@@ -71,6 +71,7 @@ export declare abstract class Application<TConfig extends IConfig = IConfig, TAu
|
|
|
71
71
|
* The maximum size limit for incoming requests that this service needs to handle.
|
|
72
72
|
*/
|
|
73
73
|
getRequestSizeLimit(): number;
|
|
74
|
+
private $attachHandlers;
|
|
74
75
|
/**
|
|
75
76
|
*
|
|
76
77
|
* @param path The URL API path. E.g. /api/myService/myCommand/
|
package/lib/Application.js
CHANGED
|
@@ -31,6 +31,7 @@ const http = tslib_1.__importStar(require("http"));
|
|
|
31
31
|
const Path = tslib_1.__importStar(require("path"));
|
|
32
32
|
const logger_1 = require("@arashi/logger");
|
|
33
33
|
const StormError_1 = require("./StormError");
|
|
34
|
+
const HealthHandler_1 = require("./handlers/HealthHandler");
|
|
34
35
|
const TAG = 'Application';
|
|
35
36
|
/**
|
|
36
37
|
* Main entry point for the Application. Should be extended and have the abstract methods implemented.
|
|
@@ -104,6 +105,7 @@ class Application extends events_1.EventEmitter {
|
|
|
104
105
|
limit: this.getRequestSizeLimit()
|
|
105
106
|
}));
|
|
106
107
|
this.$getLogger().trace(TAG, 'Attaching handlers...');
|
|
108
|
+
await this.$attachHandlers();
|
|
107
109
|
await this._attachHandlers();
|
|
108
110
|
await this._onBeforeReadyAsync();
|
|
109
111
|
await new Promise((resolve, reject) => {
|
|
@@ -243,6 +245,9 @@ class Application extends events_1.EventEmitter {
|
|
|
243
245
|
getRequestSizeLimit() {
|
|
244
246
|
return this.getConfig().request_size_limit;
|
|
245
247
|
}
|
|
248
|
+
async $attachHandlers() {
|
|
249
|
+
this.attachHandler('/_health', new HealthHandler_1.HealthHandler(this));
|
|
250
|
+
}
|
|
246
251
|
/**
|
|
247
252
|
*
|
|
248
253
|
* @param path The URL API path. E.g. /api/myService/myCommand/
|
package/lib/Application.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Application.js","sourceRoot":"","sources":["../src/Application.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Application.js","sourceRoot":"","sources":["../src/Application.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.DatabaseConnection = exports.DEFAULT_QUERY_TIMEOUT = exports.LINGER_WARNING = void 0;
|
|
19
19
|
const instance_1 = require("./instance");
|
|
20
|
-
exports.LINGER_WARNING =
|
|
20
|
+
exports.LINGER_WARNING = 60000;
|
|
21
21
|
exports.DEFAULT_QUERY_TIMEOUT = 3600000;
|
|
22
22
|
const TAG = 'DatabaseConnection';
|
|
23
23
|
/**
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { StormError } from './StormError';
|
|
2
|
+
import { ErrorCode } from './ErrorCode';
|
|
3
|
+
import { StatusCode } from './StatusCode';
|
|
4
|
+
export declare class ForbiddenError extends StormError {
|
|
5
|
+
constructor();
|
|
6
|
+
getMessage(): string;
|
|
7
|
+
getCode(): ErrorCode;
|
|
8
|
+
getHTTPCode(): StatusCode;
|
|
9
|
+
getLocaleCode(): string;
|
|
10
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/*
|
|
3
|
+
Copyright 2017-2026 Norman Breau
|
|
4
|
+
|
|
5
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
6
|
+
you may not use this file except in compliance with the License.
|
|
7
|
+
You may obtain a copy of the License at
|
|
8
|
+
|
|
9
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
+
|
|
11
|
+
Unless required by applicable law or agreed to in writing, software
|
|
12
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
13
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
14
|
+
See the License for the specific language governing permissions and
|
|
15
|
+
limitations under the License.
|
|
16
|
+
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.ForbiddenError = void 0;
|
|
19
|
+
const StormError_1 = require("./StormError");
|
|
20
|
+
const StatusCode_1 = require("./StatusCode");
|
|
21
|
+
class ForbiddenError extends StormError_1.StormError {
|
|
22
|
+
constructor() {
|
|
23
|
+
super();
|
|
24
|
+
}
|
|
25
|
+
getMessage() {
|
|
26
|
+
return `Access Denied.`;
|
|
27
|
+
}
|
|
28
|
+
getCode() {
|
|
29
|
+
return 0;
|
|
30
|
+
}
|
|
31
|
+
getHTTPCode() {
|
|
32
|
+
return StatusCode_1.StatusCode.ERR_FORBIDDEN;
|
|
33
|
+
}
|
|
34
|
+
getLocaleCode() {
|
|
35
|
+
return '@breautek/storm/ForbiddenError/message';
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
exports.ForbiddenError = ForbiddenError;
|
|
39
|
+
//# sourceMappingURL=ForbiddenError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ForbiddenError.js","sourceRoot":"","sources":["../src/ForbiddenError.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;EAcE;;;AAEF,6CAAwC;AAExC,6CAAwC;AAExC,MAAa,cAAe,SAAQ,uBAAU;IAC1C;QACI,KAAK,EAAE,CAAC;IACZ,CAAC;IAEM,UAAU;QACb,OAAO,gBAAgB,CAAC;IAC5B,CAAC;IAEM,OAAO;QACV,OAAO,CAAC,CAAC;IACb,CAAC;IAEM,WAAW;QACd,OAAO,uBAAU,CAAC,aAAa,CAAC;IACpC,CAAC;IAEe,aAAa;QACzB,OAAO,wCAAwC,CAAC;IACpD,CAAC;CACJ;AApBD,wCAoBC"}
|
|
@@ -17,9 +17,7 @@
|
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
18
|
exports.JWTVerifyOptionsParser = void 0;
|
|
19
19
|
class JWTVerifyOptionsParser {
|
|
20
|
-
constructor() {
|
|
21
|
-
throw new Error('JWTVerifyOptionsParser is an static class.');
|
|
22
|
-
}
|
|
20
|
+
constructor() { }
|
|
23
21
|
// Parses IJWTVerifyOptions to jwt options
|
|
24
22
|
static parse(options) {
|
|
25
23
|
let opts = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"JWTVerifyOptionsParser.js","sourceRoot":"","sources":["../src/JWTVerifyOptionsParser.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;EAcE;;;AAIF,MAAa,sBAAsB;IAC/B
|
|
1
|
+
{"version":3,"file":"JWTVerifyOptionsParser.js","sourceRoot":"","sources":["../src/JWTVerifyOptionsParser.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;EAcE;;;AAIF,MAAa,sBAAsB;IAC/B,gBAAuB,CAAC;IAExB,0CAA0C;IACnC,MAAM,CAAC,KAAK,CAAC,OAA0B;QAC1C,IAAI,IAAI,GAAQ,EAAE,CAAC;QAEnB,IAAI,OAAO,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACzC,IAAI,CAAC,gBAAgB,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC;QACtD,CAAC;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAbD,wDAaC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type TSupportedMetricStoreValues = string | number | boolean;
|
|
2
|
+
export declare class MetricStore {
|
|
3
|
+
private static $instance;
|
|
4
|
+
private $data;
|
|
5
|
+
private constructor();
|
|
6
|
+
static getInstance(): MetricStore;
|
|
7
|
+
purge(): void;
|
|
8
|
+
set(key: string, value: TSupportedMetricStoreValues): void;
|
|
9
|
+
get(key: string): TSupportedMetricStoreValues | null;
|
|
10
|
+
increment(key: string): void;
|
|
11
|
+
decrement(key: string): void;
|
|
12
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MetricStore = void 0;
|
|
4
|
+
class MetricStore {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.$data = {};
|
|
7
|
+
}
|
|
8
|
+
static getInstance() {
|
|
9
|
+
if (!MetricStore.$instance) {
|
|
10
|
+
MetricStore.$instance = new MetricStore();
|
|
11
|
+
}
|
|
12
|
+
return MetricStore.$instance;
|
|
13
|
+
}
|
|
14
|
+
purge() {
|
|
15
|
+
this.$data = {};
|
|
16
|
+
}
|
|
17
|
+
set(key, value) {
|
|
18
|
+
this.$data[key] = value;
|
|
19
|
+
}
|
|
20
|
+
get(key) {
|
|
21
|
+
let value = this.$data[key];
|
|
22
|
+
if (value === undefined)
|
|
23
|
+
return null;
|
|
24
|
+
return value;
|
|
25
|
+
}
|
|
26
|
+
increment(key) {
|
|
27
|
+
let value = this.get(key);
|
|
28
|
+
if (!value) {
|
|
29
|
+
value = 0;
|
|
30
|
+
}
|
|
31
|
+
if (typeof value !== 'number') {
|
|
32
|
+
this.set(key, 0);
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
value++;
|
|
36
|
+
this.set(key, value);
|
|
37
|
+
}
|
|
38
|
+
decrement(key) {
|
|
39
|
+
let value = this.get(key);
|
|
40
|
+
if (value === null || value === undefined || typeof value !== 'number') {
|
|
41
|
+
this.set(key, 0);
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
value--;
|
|
45
|
+
this.set(key, value);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.MetricStore = MetricStore;
|
|
49
|
+
//# sourceMappingURL=MetricStore.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MetricStore.js","sourceRoot":"","sources":["../src/MetricStore.ts"],"names":[],"mappings":";;;AAGA,MAAa,WAAW;IAKpB;QACI,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IACpB,CAAC;IAEM,MAAM,CAAC,WAAW;QACrB,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;YACzB,WAAW,CAAC,SAAS,GAAG,IAAI,WAAW,EAAE,CAAC;QAC9C,CAAC;QAED,OAAO,WAAW,CAAC,SAAS,CAAC;IACjC,CAAC;IAEM,KAAK;QACR,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;IACpB,CAAC;IAEM,GAAG,CAAC,GAAW,EAAE,KAAkC;QACtD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IAC5B,CAAC;IAEM,GAAG,CAAC,GAAW;QAClB,IAAI,KAAK,GAAgC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACzD,IAAI,KAAK,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACrC,OAAO,KAAK,CAAC;IACjB,CAAC;IAEM,SAAS,CAAC,GAAW;QACxB,IAAI,KAAK,GAAgC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEvD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,KAAK,GAAG,CAAC,CAAC;QACd,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACjB,OAAO;QACX,CAAC;QAED,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;IAEM,SAAS,CAAC,GAAW;QACxB,IAAI,KAAK,GAAgC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACvD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;YACjB,OAAO;QACX,CAAC;QAED,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACzB,CAAC;CACJ;AAzDD,kCAyDC"}
|
package/lib/MySQLConnection.js
CHANGED
|
@@ -35,6 +35,7 @@ const GetProcessList_1 = require("./private/GetProcessList");
|
|
|
35
35
|
const GetMySQLVersion_1 = require("./GetMySQLVersion");
|
|
36
36
|
const GetPrimaryPositionQuery_1 = require("./private/GetPrimaryPositionQuery");
|
|
37
37
|
const queryFormatter_1 = require("./mysql/queryFormatter");
|
|
38
|
+
const MetricStore_1 = require("./MetricStore");
|
|
38
39
|
const DEFAULT_HIGH_WATERMARK = 512; // in number of result objects
|
|
39
40
|
const TAG = 'MySQLConnection';
|
|
40
41
|
const SQL_FORMATTING_OPTIONS = {
|
|
@@ -281,33 +282,23 @@ class MySQLConnection extends DatabaseConnection_1.DatabaseConnection {
|
|
|
281
282
|
});
|
|
282
283
|
});
|
|
283
284
|
}
|
|
284
|
-
_close(forceClose) {
|
|
285
|
+
async _close(forceClose) {
|
|
285
286
|
if (!forceClose && this.isTransaction()) {
|
|
286
287
|
return Promise.reject(new Error('Cannot close a connection while there is an active transaction. Use commit or rollback first.'));
|
|
287
288
|
}
|
|
288
289
|
this.$opened = false;
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
rollbackPromise = this.rollback();
|
|
290
|
+
if (forceClose) {
|
|
291
|
+
if (this.isTransaction()) {
|
|
292
|
+
try {
|
|
293
|
+
await this.rollback();
|
|
294
294
|
}
|
|
295
|
-
|
|
296
|
-
|
|
295
|
+
catch (ex) {
|
|
296
|
+
(0, instance_1.getInstance)().getLogger().error(TAG, ex);
|
|
297
297
|
}
|
|
298
298
|
}
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
rollbackPromise.then(() => {
|
|
303
|
-
this.getAPI().release();
|
|
304
|
-
resolve();
|
|
305
|
-
}).catch((error) => {
|
|
306
|
-
(0, instance_1.getInstance)().getLogger().error(TAG, error);
|
|
307
|
-
this.getAPI().release();
|
|
308
|
-
resolve();
|
|
309
|
-
});
|
|
310
|
-
});
|
|
299
|
+
}
|
|
300
|
+
this.getAPI().release();
|
|
301
|
+
MetricStore_1.MetricStore.getInstance().decrement('mysql.active_connections');
|
|
311
302
|
}
|
|
312
303
|
}
|
|
313
304
|
exports.MySQLConnection = MySQLConnection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MySQLConnection.js","sourceRoot":"","sources":["../src/MySQLConnection.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;EAcE;;;;AAEF,6DAAwD;AACxD,6DAAwD;AACxD,yCAAuC;AAGvC,2EAAwE;AACxE,uDAAoD;AACpD,2DAAwD;AACxD,oEAA8C;AAE9C,mDAA4C;AAE5C,mDAAgD;AAEhD,6EAAwE;AACxE,iEAA8D;AAG9D,2EAAwE;AACxE,6EAA0E;AAE1E,qEAAkE;AAClE,6DAAiF;AACjF,uDAA4E;AAC5E,+EAA4E;AAC5E,2DAAwD;
|
|
1
|
+
{"version":3,"file":"MySQLConnection.js","sourceRoot":"","sources":["../src/MySQLConnection.ts"],"names":[],"mappings":"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"}
|
package/lib/MySQLDatabase.js
CHANGED
|
@@ -22,6 +22,7 @@ const MySQLConnection_1 = require("./MySQLConnection");
|
|
|
22
22
|
const MySQL = tslib_1.__importStar(require("mysql2"));
|
|
23
23
|
const instance_1 = require("./instance");
|
|
24
24
|
const ConnectionReplicationWaiter_1 = require("./private/ConnectionReplicationWaiter");
|
|
25
|
+
const MetricStore_1 = require("./MetricStore");
|
|
25
26
|
const TAG = 'MySQLDatabase';
|
|
26
27
|
class MySQLDatabase extends Database_1.Database {
|
|
27
28
|
constructor() {
|
|
@@ -59,6 +60,7 @@ class MySQLDatabase extends Database_1.Database {
|
|
|
59
60
|
reject(error);
|
|
60
61
|
return;
|
|
61
62
|
}
|
|
63
|
+
MetricStore_1.MetricStore.getInstance().increment('mysql.active_connections');
|
|
62
64
|
resolve(new MySQLConnection_1.MySQLConnection(connection, instantationStack, !requireWriteAccess));
|
|
63
65
|
});
|
|
64
66
|
});
|
package/lib/MySQLDatabase.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MySQLDatabase.js","sourceRoot":"","sources":["../src/MySQLDatabase.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;EAcE;;;;AAEF,yCAAoC;AACpC,uDAAkD;AAClD,sDAAgC;AAChC,yCAAuC;AAEvC,uFAAoF;
|
|
1
|
+
{"version":3,"file":"MySQLDatabase.js","sourceRoot":"","sources":["../src/MySQLDatabase.ts"],"names":[],"mappings":"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"}
|
package/lib/api.d.ts
CHANGED
|
@@ -22,6 +22,7 @@ export { TransactionAccessLevel } from './TransactionAccessLevel';
|
|
|
22
22
|
export { GetMySQLVersion, IGetMySQLVersionResult, IGetMySQLVersionRow } from './GetMySQLVersion';
|
|
23
23
|
export { ErrorCode } from './ErrorCode';
|
|
24
24
|
export { RawError } from './RawError';
|
|
25
|
+
export { ForbiddenError } from './ForbiddenError';
|
|
25
26
|
export { StormError, IErrorResponse, IAdditionalErrorDetails } from './StormError';
|
|
26
27
|
export { TimeoutError } from './TimeoutError';
|
|
27
28
|
export { JWTError } from './JWTError';
|
|
@@ -61,6 +62,7 @@ export { IDatabasePosition } from './IDatabasePosition';
|
|
|
61
62
|
export { Token } from './Token';
|
|
62
63
|
export { TokenManager, TExpiresIn } from './TokenManager';
|
|
63
64
|
export { ExitCode } from './ExitCode';
|
|
65
|
+
export { MetricStore } from './MetricStore';
|
|
64
66
|
export { TCoordinate } from './TCoordinate';
|
|
65
67
|
export { DatabaseCastObject } from './DatabaseCastObject';
|
|
66
68
|
export { Point } from './Point';
|
package/lib/api.js
CHANGED
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
limitations under the License.
|
|
16
16
|
*/
|
|
17
17
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
-
exports.
|
|
19
|
-
exports.Command = exports.formidable = exports.Polygon = exports.LineString = exports.Point = void 0;
|
|
18
|
+
exports.ExitCode = exports.TokenManager = exports.Token = exports.ServiceResponse = exports.HTTPMethod = exports.ServiceProvider = exports.Handler = exports.ResponseData = exports.Response = exports.Request = exports.Middleware = exports.StatusCode = exports.IllegalStateError = exports.LockWaitTimeoutError = exports.DeadLockError = exports.NotImplementedError = exports.DatabaseQueryError = exports.MissingConfigError = exports.DuplicateEntryError = exports.DiskSpaceError = exports.EntityNotFoundError = exports.UnauthorizedAccessError = exports.InvalidValueError = exports.ExpiredTokenError = exports.InternalError = exports.InvalidCredentialsError = exports.MissingParameterError = exports.JWTError = exports.TimeoutError = exports.StormError = exports.ForbiddenError = exports.RawError = exports.ErrorCode = exports.GetMySQLVersion = exports.TransactionAccessLevel = exports.Transaction = exports.IsolationLevel = exports.SetSessionVariableQuery = exports.RawQuery = exports.DropTemporaryTableQuery = exports.TemporaryTableQuery = exports.Query = exports.ManagedDatabaseConnection = exports.MySQLConnection = exports.MySQLDatabase = exports.DatabaseConnection = exports.Database = exports.ConfigLoader = exports.Application = exports.getInstance = void 0;
|
|
19
|
+
exports.Command = exports.formidable = exports.Polygon = exports.LineString = exports.Point = exports.DatabaseCastObject = exports.MetricStore = void 0;
|
|
20
20
|
const tslib_1 = require("tslib");
|
|
21
21
|
// Application
|
|
22
22
|
var instance_1 = require("./instance");
|
|
@@ -60,6 +60,8 @@ var ErrorCode_1 = require("./ErrorCode");
|
|
|
60
60
|
Object.defineProperty(exports, "ErrorCode", { enumerable: true, get: function () { return ErrorCode_1.ErrorCode; } });
|
|
61
61
|
var RawError_1 = require("./RawError");
|
|
62
62
|
Object.defineProperty(exports, "RawError", { enumerable: true, get: function () { return RawError_1.RawError; } });
|
|
63
|
+
var ForbiddenError_1 = require("./ForbiddenError");
|
|
64
|
+
Object.defineProperty(exports, "ForbiddenError", { enumerable: true, get: function () { return ForbiddenError_1.ForbiddenError; } });
|
|
63
65
|
var StormError_1 = require("./StormError");
|
|
64
66
|
Object.defineProperty(exports, "StormError", { enumerable: true, get: function () { return StormError_1.StormError; } });
|
|
65
67
|
var TimeoutError_1 = require("./TimeoutError");
|
|
@@ -123,6 +125,8 @@ Object.defineProperty(exports, "TokenManager", { enumerable: true, get: function
|
|
|
123
125
|
// Utils
|
|
124
126
|
var ExitCode_1 = require("./ExitCode");
|
|
125
127
|
Object.defineProperty(exports, "ExitCode", { enumerable: true, get: function () { return ExitCode_1.ExitCode; } });
|
|
128
|
+
var MetricStore_1 = require("./MetricStore");
|
|
129
|
+
Object.defineProperty(exports, "MetricStore", { enumerable: true, get: function () { return MetricStore_1.MetricStore; } });
|
|
126
130
|
var DatabaseCastObject_1 = require("./DatabaseCastObject");
|
|
127
131
|
Object.defineProperty(exports, "DatabaseCastObject", { enumerable: true, get: function () { return DatabaseCastObject_1.DatabaseCastObject; } });
|
|
128
132
|
var Point_1 = require("./Point");
|
package/lib/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;EAcE;;;;;AAEF,cAAc;AACd,uCAAuC;AAA/B,uGAAA,WAAW,OAAA;AACnB,6CAGuB;AAFnB,0GAAA,WAAW,OAAA;AAIf,SAAS;AACT,+CAA4C;AAApC,4GAAA,YAAY,OAAA;AAEpB,WAAW;AACX,uCAAoC;AAA5B,oGAAA,QAAQ,OAAA;AAChB,2DAAwD;AAAhD,wHAAA,kBAAkB,OAAA;AAC1B,iDAA8C;AAAtC,8GAAA,aAAa,OAAA;AACrB,qDAAkD;AAA1C,kHAAA,eAAe,OAAA;AACvB,yEAAsE;AAA9D,sIAAA,yBAAyB,OAAA;AACjC,iCAA8B;AAAtB,8FAAA,KAAK,OAAA;AACb,6DAAqF;AAA7E,0HAAA,mBAAmB,OAAA;AAC3B,qEAAkE;AAA1D,kIAAA,uBAAuB,OAAA;AAC/B,uCAAoC;AAA5B,oGAAA,QAAQ,OAAA;AAIhB,qEAAiG;AAAzF,kIAAA,uBAAuB,OAAA;AAC/B,mDAAgD;AAAxC,gHAAA,cAAc,OAAA;AACtB,6CAA0C;AAAlC,0GAAA,WAAW,OAAA;AAGnB,mEAAgE;AAAxD,gIAAA,sBAAsB,OAAA;AAC9B,qDAA+F;AAAvF,kHAAA,eAAe,OAAA;AAEvB,SAAS;AACT,yCAAsC;AAA9B,sGAAA,SAAS,OAAA;AACjB,uCAAoC;AAA5B,oGAAA,QAAQ,OAAA;AAChB,2CAIsB;AAHlB,wGAAA,UAAU,OAAA;AAId,+CAA4C;AAApC,4GAAA,YAAY,OAAA;AACpB,uCAAoC;AAA5B,oGAAA,QAAQ,OAAA;AAChB,iEAA8D;AAAtD,8HAAA,qBAAqB,OAAA;AAC7B,qEAAkE;AAA1D,kIAAA,uBAAuB,OAAA;AAC/B,iDAA8C;AAAtC,8GAAA,aAAa,OAAA;AACrB,yDAAsD;AAA9C,sHAAA,iBAAiB,OAAA;AACzB,yDAAsD;AAA9C,sHAAA,iBAAiB,OAAA;AACzB,qEAAkE;AAA1D,kIAAA,uBAAuB,OAAA;AAC/B,6DAA0D;AAAlD,0HAAA,mBAAmB,OAAA;AAC3B,mDAAgD;AAAxC,gHAAA,cAAc,OAAA;AACtB,6DAA0D;AAAlD,0HAAA,mBAAmB,OAAA;AAC3B,2DAAwD;AAAhD,wHAAA,kBAAkB,OAAA;AAC1B,2DAAwD;AAAhD,wHAAA,kBAAkB,OAAA;AAC1B,6DAA0D;AAAlD,0HAAA,mBAAmB,OAAA;AAC3B,iDAA8C;AAAtC,8GAAA,aAAa,OAAA;AACrB,+DAA4D;AAApD,4HAAA,oBAAoB,OAAA;AAC5B,yDAAsD;AAA9C,sHAAA,iBAAiB,OAAA;AAEzB,OAAO;AACP,2CAAwC;AAAhC,wGAAA,UAAU,OAAA;AAClB,2CAAwC;AAAhC,wGAAA,UAAU,OAAA;AAClB,qCAAiD;AAAzC,kGAAA,OAAO,OAAA;AACf,uCAAkH;AAA1G,oGAAA,QAAQ,OAAA;AAChB,+CAA4C;AAApC,4GAAA,YAAY,OAAA;AACpB,qCAAkC;AAA1B,kGAAA,OAAO,OAAA;AACf,qDAAkD;AAA1C,kHAAA,eAAe,OAAA;AACvB,2CAAwC;AAAhC,wGAAA,UAAU,OAAA;AAClB,qDAAkD;AAA1C,kHAAA,eAAe,OAAA;AAkBvB,QAAQ;AACR,iCAA8B;AAAtB,8FAAA,KAAK,OAAA;AACb,+CAAwD;AAAhD,4GAAA,YAAY,OAAA;AAEpB,QAAQ;AACR,uCAAoC;AAA5B,oGAAA,QAAQ,OAAA;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { IAuthTokenData } from '@arashi/token';
|
|
2
|
+
import { Application } from '../Application';
|
|
3
|
+
import { Handler } from '../Handler';
|
|
4
|
+
import { Request } from '../Request';
|
|
5
|
+
export interface IHealthHandlerMySQLStats {
|
|
6
|
+
activeConnections: number;
|
|
7
|
+
}
|
|
8
|
+
export interface IHealthHandlerOutput {
|
|
9
|
+
mysql: IHealthHandlerMySQLStats;
|
|
10
|
+
}
|
|
11
|
+
export declare class HealthHandler extends Handler<Application, void, IHealthHandlerOutput> {
|
|
12
|
+
protected _get(request: Request<void, IAuthTokenData>): Promise<IHealthHandlerOutput>;
|
|
13
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.HealthHandler = void 0;
|
|
4
|
+
const Handler_1 = require("../Handler");
|
|
5
|
+
const MetricStore_1 = require("../MetricStore");
|
|
6
|
+
const ForbiddenError_1 = require("../ForbiddenError");
|
|
7
|
+
class HealthHandler extends Handler_1.Handler {
|
|
8
|
+
async _get(request) {
|
|
9
|
+
if (request.getIP() !== '127.0.0.1') {
|
|
10
|
+
throw new ForbiddenError_1.ForbiddenError();
|
|
11
|
+
}
|
|
12
|
+
let metrics = MetricStore_1.MetricStore.getInstance();
|
|
13
|
+
let out = {
|
|
14
|
+
mysql: {
|
|
15
|
+
activeConnections: metrics.get('mysql.active_connections')
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
return out;
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
exports.HealthHandler = HealthHandler;
|
|
22
|
+
//# sourceMappingURL=HealthHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HealthHandler.js","sourceRoot":"","sources":["../../src/handlers/HealthHandler.ts"],"names":[],"mappings":";;;AAGA,wCAAmC;AAEnC,gDAA6C;AAC7C,sDAAmD;AAUnD,MAAa,aAAc,SAAQ,iBAIlC;IACsB,KAAK,CAAC,IAAI,CAAC,OAAsC;QAEhE,IAAI,OAAO,CAAC,KAAK,EAAE,KAAK,WAAW,EAAE,CAAC;YAClC,MAAM,IAAI,+BAAc,EAAE,CAAC;QAC/B,CAAC;QAED,IAAI,OAAO,GAAgB,yBAAW,CAAC,WAAW,EAAE,CAAC;QACrD,IAAI,GAAG,GAAyB;YAC5B,KAAK,EAAE;gBACH,iBAAiB,EAAE,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAW;aACvE;SACJ,CAAC;QAEF,OAAO,GAAG,CAAC;IACf,CAAC;CACJ;AApBD,sCAoBC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@breautek/storm",
|
|
3
|
-
"version": "9.
|
|
3
|
+
"version": "9.3.1",
|
|
4
4
|
"description": "Object-Oriented REST API framework",
|
|
5
5
|
"main": "lib/api.js",
|
|
6
6
|
"types": "lib/api.d.ts",
|
|
@@ -53,14 +53,14 @@
|
|
|
53
53
|
"@types/mysql": "2.15.27",
|
|
54
54
|
"@types/node": "24.10.1",
|
|
55
55
|
"ajv": "8.17.1",
|
|
56
|
-
"body-parser": "2.2.
|
|
56
|
+
"body-parser": "2.2.2",
|
|
57
57
|
"commander": "14.0.2",
|
|
58
58
|
"express": "5.2.1",
|
|
59
59
|
"form-data": "4.0.5",
|
|
60
60
|
"formidable": "3.5.4",
|
|
61
61
|
"jsonwebtoken": "9.0.3",
|
|
62
|
-
"mysql2": "3.
|
|
63
|
-
"sql-formatter": "15.
|
|
62
|
+
"mysql2": "3.16.1",
|
|
63
|
+
"sql-formatter": "15.7.0",
|
|
64
64
|
"tslib": "2.8.1",
|
|
65
65
|
"uuid": "11.1.0"
|
|
66
66
|
},
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
"jest-jasmine2": "30.2.0",
|
|
81
81
|
"ts-jest": "29.4.6",
|
|
82
82
|
"ts-node": "10.9.2",
|
|
83
|
-
"typedoc": "0.28.
|
|
83
|
+
"typedoc": "0.28.16",
|
|
84
84
|
"typedoc-plugin-markdown": "4.9.0",
|
|
85
85
|
"typescript": "5.9.3"
|
|
86
86
|
}
|
package/src/Application.ts
CHANGED
|
@@ -37,6 +37,7 @@ import {
|
|
|
37
37
|
BaseLogger
|
|
38
38
|
} from '@arashi/logger';
|
|
39
39
|
import { StormError } from './StormError';
|
|
40
|
+
import { HealthHandler } from './handlers/HealthHandler';
|
|
40
41
|
|
|
41
42
|
export interface IStormCLIArgs {
|
|
42
43
|
bind?: string;
|
|
@@ -175,6 +176,7 @@ export abstract class Application
|
|
|
175
176
|
}));
|
|
176
177
|
|
|
177
178
|
this.$getLogger().trace(TAG, 'Attaching handlers...');
|
|
179
|
+
await this.$attachHandlers();
|
|
178
180
|
await this._attachHandlers();
|
|
179
181
|
|
|
180
182
|
await this._onBeforeReadyAsync();
|
|
@@ -347,6 +349,10 @@ export abstract class Application
|
|
|
347
349
|
return this.getConfig().request_size_limit;
|
|
348
350
|
}
|
|
349
351
|
|
|
352
|
+
private async $attachHandlers(): Promise<void> {
|
|
353
|
+
this.attachHandler('/_health', new HealthHandler(this));
|
|
354
|
+
}
|
|
355
|
+
|
|
350
356
|
/**
|
|
351
357
|
*
|
|
352
358
|
* @param path The URL API path. E.g. /api/myService/myCommand/
|
|
@@ -24,7 +24,7 @@ import { IConfig } from './IConfig';
|
|
|
24
24
|
import { IsolationLevel } from './IsolationLevel';
|
|
25
25
|
import { IDatabasePosition } from './IDatabasePosition';
|
|
26
26
|
|
|
27
|
-
export const LINGER_WARNING: number =
|
|
27
|
+
export const LINGER_WARNING: number = 60000;
|
|
28
28
|
export const DEFAULT_QUERY_TIMEOUT: number = 3600000;
|
|
29
29
|
const TAG: string = 'DatabaseConnection';
|
|
30
30
|
|