43 lines
1.4 KiB
JavaScript
43 lines
1.4 KiB
JavaScript
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.ProfilingLevelOperation = void 0;
|
|
const bson_1 = require("../bson");
|
|
const responses_1 = require("../cmap/wire_protocol/responses");
|
|
const error_1 = require("../error");
|
|
const command_1 = require("./command");
|
|
class ProfilingLevelResponse extends responses_1.MongoDBResponse {
|
|
get was() {
|
|
return this.get('was', bson_1.BSONType.int, true);
|
|
}
|
|
}
|
|
/** @internal */
|
|
class ProfilingLevelOperation extends command_1.CommandOperation {
|
|
constructor(db, options) {
|
|
super(db, options);
|
|
this.SERVER_COMMAND_RESPONSE_TYPE = ProfilingLevelResponse;
|
|
this.options = options;
|
|
}
|
|
get commandName() {
|
|
return 'profile';
|
|
}
|
|
buildCommandDocument(_connection) {
|
|
return { profile: -1 };
|
|
}
|
|
handleOk(response) {
|
|
if (response.ok === 1) {
|
|
const was = response.was;
|
|
if (was === 0)
|
|
return 'off';
|
|
if (was === 1)
|
|
return 'slow_only';
|
|
if (was === 2)
|
|
return 'all';
|
|
throw new error_1.MongoUnexpectedServerResponseError(`Illegal profiling level value ${was}`);
|
|
}
|
|
else {
|
|
throw new error_1.MongoUnexpectedServerResponseError('Error with profile command');
|
|
}
|
|
}
|
|
}
|
|
exports.ProfilingLevelOperation = ProfilingLevelOperation;
|
|
//# sourceMappingURL=profiling_level.js.map
|