summaryrefslogtreecommitdiff
path: root/src/mongo/logger/rotatable_file_manager.cpp
diff options
context:
space:
mode:
authorSara Golemon <sara.golemon@mongodb.com>2020-07-20 16:07:10 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2020-08-18 23:05:40 +0000
commit749a0a172662baf99cf4487f97029bb2e29fb4f3 (patch)
tree6495ce2884ad42a2f29ced217ef6aee9a3a9ca7a /src/mongo/logger/rotatable_file_manager.cpp
parent30acdea3aa54dab658cb76908a8cd9bf35e7762f (diff)
downloadmongo-749a0a172662baf99cf4487f97029bb2e29fb4f3.tar.gz
SERVER-49768 Remove logv1 logger components, and make rotation a callback list
Diffstat (limited to 'src/mongo/logger/rotatable_file_manager.cpp')
-rw-r--r--src/mongo/logger/rotatable_file_manager.cpp81
1 files changed, 0 insertions, 81 deletions
diff --git a/src/mongo/logger/rotatable_file_manager.cpp b/src/mongo/logger/rotatable_file_manager.cpp
deleted file mode 100644
index ca5b1c3f745..00000000000
--- a/src/mongo/logger/rotatable_file_manager.cpp
+++ /dev/null
@@ -1,81 +0,0 @@
-/**
- * Copyright (C) 2018-present MongoDB, Inc.
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the Server Side Public License, version 1,
- * as published by MongoDB, Inc.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * Server Side Public License for more details.
- *
- * You should have received a copy of the Server Side Public License
- * along with this program. If not, see
- * <http://www.mongodb.com/licensing/server-side-public-license>.
- *
- * As a special exception, the copyright holders give permission to link the
- * code of portions of this program with the OpenSSL library under certain
- * conditions as described in each individual source file and distribute
- * linked combinations including the program with the OpenSSL library. You
- * must comply with the Server Side Public License in all respects for
- * all of the code used other than as permitted herein. If you modify file(s)
- * with this exception, you may extend this exception to your version of the
- * file(s), but you are not obligated to do so. If you do not wish to do so,
- * delete this exception statement from your version. If you delete this
- * exception statement from all source files in the program, then also delete
- * it in the license file.
- */
-
-#include "mongo/platform/basic.h"
-
-#include "mongo/logger/rotatable_file_manager.h"
-
-#include "mongo/logger/rotatable_file_writer.h"
-
-namespace mongo {
-namespace logger {
-
-RotatableFileManager::RotatableFileManager() {}
-
-RotatableFileManager::~RotatableFileManager() {
- for (WriterByNameMap::iterator iter = _writers.begin(); iter != _writers.end(); ++iter) {
- delete iter->second;
- }
-}
-
-StatusWithRotatableFileWriter RotatableFileManager::openFile(const std::string& fileName,
- bool append) {
- if (_writers.count(fileName) > 0) {
- return StatusWithRotatableFileWriter(ErrorCodes::FileAlreadyOpen,
- "File \"" + fileName + "\" already opened.");
- }
- std::unique_ptr<RotatableFileWriter> writer(new RotatableFileWriter);
- RotatableFileWriter::Use writerUse(writer.get());
- Status status = writerUse.setFileName(fileName, append);
- if (!status.isOK())
- return StatusWithRotatableFileWriter(status);
- _writers.insert(std::make_pair(fileName, writer.get()));
- return StatusWith<RotatableFileWriter*>(writer.release());
-}
-
-RotatableFileWriter* RotatableFileManager::getFile(const std::string& name) {
- auto iter = _writers.find(name);
- return iter == _writers.end() ? nullptr : iter->second;
-}
-
-RotatableFileManager::FileNameStatusPairVector RotatableFileManager::rotateAll(
- bool renameFiles, const std::string& renameTargetSuffix) {
- FileNameStatusPairVector badStatuses;
- for (WriterByNameMap::const_iterator iter = _writers.begin(); iter != _writers.end(); ++iter) {
- Status status = RotatableFileWriter::Use(iter->second)
- .rotate(renameFiles, iter->first + renameTargetSuffix);
- if (!status.isOK()) {
- badStatuses.push_back(std::make_pair(iter->first, status));
- }
- }
- return badStatuses;
-}
-
-} // namespace logger
-} // namespace mongo