summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--storage/src/vespa/storage/storageserver/CMakeLists.txt1
-rw-r--r--storage/src/vespa/storage/storageserver/distributornode.cpp2
-rw-r--r--storage/src/vespa/storage/storageserver/opslogger.cpp144
-rw-r--r--storage/src/vespa/storage/storageserver/opslogger.h51
-rw-r--r--storage/src/vespa/storage/storageserver/servicelayernode.cpp2
5 files changed, 0 insertions, 200 deletions
diff --git a/storage/src/vespa/storage/storageserver/CMakeLists.txt b/storage/src/vespa/storage/storageserver/CMakeLists.txt
index 009f8170669..1ef670f96ac 100644
--- a/storage/src/vespa/storage/storageserver/CMakeLists.txt
+++ b/storage/src/vespa/storage/storageserver/CMakeLists.txt
@@ -14,7 +14,6 @@ vespa_add_library(storage_storageserver OBJECT
documentapiconverter.cpp
fnet_metrics_wrapper.cpp
mergethrottler.cpp
- opslogger.cpp
priorityconverter.cpp
rpcrequestwrapper.cpp
service_layer_error_listener.cpp
diff --git a/storage/src/vespa/storage/storageserver/distributornode.cpp b/storage/src/vespa/storage/storageserver/distributornode.cpp
index ab80381f5d4..431dd89b613 100644
--- a/storage/src/vespa/storage/storageserver/distributornode.cpp
+++ b/storage/src/vespa/storage/storageserver/distributornode.cpp
@@ -3,7 +3,6 @@
#include "distributornode.h"
#include "bouncer.h"
#include "communicationmanager.h"
-#include "opslogger.h"
#include "statemanager.h"
#include <vespa/storage/common/hostreporter/hostinfo.h>
#include <vespa/storage/common/i_storage_chain_builder.h>
@@ -96,7 +95,6 @@ DistributorNode::createChain(IStorageChainBuilder &builder)
std::unique_ptr<StateManager> stateManager(releaseStateManager());
builder.add(std::make_unique<Bouncer>(dcr, _configUri));
- builder.add(std::make_unique<OpsLogger>(dcr, _configUri));
// Distributor instance registers a host info reporter with the state
// manager, which is safe since the lifetime of said state manager
// extends to the end of the process.
diff --git a/storage/src/vespa/storage/storageserver/opslogger.cpp b/storage/src/vespa/storage/storageserver/opslogger.cpp
deleted file mode 100644
index dcf7ddf4a92..00000000000
--- a/storage/src/vespa/storage/storageserver/opslogger.cpp
+++ /dev/null
@@ -1,144 +0,0 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-
-#include "opslogger.h"
-#include <vespa/storageframework/generic/clock/clock.h>
-#include <vespa/storageapi/message/persistence.h>
-#include <vespa/config/helper/configfetcher.hpp>
-#include <vespa/config/subscription/configuri.h>
-#include <sstream>
-
-#include <vespa/log/log.h>
-LOG_SETUP(".operationslogger");
-
-namespace storage {
-
-OpsLogger::OpsLogger(StorageComponentRegister& compReg,
- const config::ConfigUri & configUri)
- : StorageLink("Operations logger"),
- _lock(),
- _fileName(),
- _targetFile(nullptr),
- _component(compReg, "opslogger"),
- _configFetcher(std::make_unique<config::ConfigFetcher>(configUri.getContext()))
-{
- _configFetcher->subscribe<vespa::config::content::core::StorOpsloggerConfig>(configUri.getConfigId(), this);
- _configFetcher->start();
-}
-
-OpsLogger::~OpsLogger()
-{
- closeNextLink();
- LOG(debug, "Deleting link %s.", toString().c_str());
-
- if (_targetFile) {
- fclose(_targetFile);
- }
-}
-
-void
-OpsLogger::onClose()
-{
- // Avoid getting config during shutdown
- _configFetcher->close();
-}
-
-void
-OpsLogger::configure(std::unique_ptr<vespa::config::content::core::StorOpsloggerConfig> config)
-{
- std::lock_guard lock(_lock);
- // If no change in state, ignore
- if (config->targetfile == _fileName) return;
- // If a change we need to close old handle if open
- if (_targetFile != nullptr) {
- fclose(_targetFile);
- _targetFile = nullptr;
- }
- // Set up the new operations log file
- _fileName = config->targetfile;
- if (_fileName.length() > 0) {
- _targetFile = fopen(_fileName.c_str(), "a+b");
-
- if (!_targetFile) {
- LOG(warning, "Could not open file %s for operations logging",
- _fileName.c_str());
- }
- }
-}
-
-void
-OpsLogger::print(std::ostream& out, bool verbose,
- const std::string& indent) const
-{
- (void) verbose; (void) indent;
- out << "OpsLogger()";
-}
-
-bool
-OpsLogger::onPutReply(const std::shared_ptr<api::PutReply>& msg)
-{
- if (_targetFile == nullptr) return false;
- std::ostringstream ost;
- ost << vespalib::to_string(_component.getClock().getSystemTime())
- << "\tPUT\t" << msg->getDocumentId() << "\t"
- << msg->getResult() << "\n";
- {
- std::lock_guard lock(_lock);
- if (_targetFile == nullptr) return false;
- fwrite(ost.str().c_str(), ost.str().length(), 1, _targetFile);
- fflush(_targetFile);
- }
- return false;
-}
-
-bool
-OpsLogger::onUpdateReply(const std::shared_ptr<api::UpdateReply>& msg)
-{
- if (_targetFile == nullptr) return false;
- std::ostringstream ost;
- ost << vespalib::to_string(_component.getClock().getSystemTime())
- << "\tUPDATE\t" << msg->getDocumentId() << "\t"
- << msg->getResult() << "\n";
- {
- std::lock_guard lock(_lock);
- if (_targetFile == nullptr) return false;
- fwrite(ost.str().c_str(), ost.str().length(), 1, _targetFile);
- fflush(_targetFile);
- }
- return false;
-}
-
-bool
-OpsLogger::onRemoveReply(const std::shared_ptr<api::RemoveReply>& msg)
-{
- if (_targetFile == nullptr) return false;
- std::ostringstream ost;
- ost << vespalib::to_string(_component.getClock().getSystemTime())
- << "\tREMOVE\t" << msg->getDocumentId() << "\t"
- << msg->getResult() << "\n";
- {
- std::lock_guard lock(_lock);
- if (_targetFile == nullptr) return false;
- fwrite(ost.str().c_str(), ost.str().length(), 1, _targetFile);
- fflush(_targetFile);
- }
- return false;
-}
-
-bool
-OpsLogger::onGetReply(const std::shared_ptr<api::GetReply>& msg)
-{
- if (_targetFile == nullptr) return false;
- std::ostringstream ost;
- ost << vespalib::to_string(_component.getClock().getSystemTime())
- << "\tGET\t" << msg->getDocumentId() << "\t"
- << msg->getResult() << "\n";
- {
- std::lock_guard lock(_lock);
- if (_targetFile == nullptr) return false;
- fwrite(ost.str().c_str(), ost.str().length(), 1, _targetFile);
- fflush(_targetFile);
- }
- return false;
-}
-
-} // storage
diff --git a/storage/src/vespa/storage/storageserver/opslogger.h b/storage/src/vespa/storage/storageserver/opslogger.h
deleted file mode 100644
index 039cb72969e..00000000000
--- a/storage/src/vespa/storage/storageserver/opslogger.h
+++ /dev/null
@@ -1,51 +0,0 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-
-/**
- * \class storage::OpsLogger
- *
- * \brief Storage link that can be configured to log all storage operations to
- * a file.
-*/
-#pragma once
-
-#include <vespa/storage/common/storagelink.h>
-#include <vespa/storage/common/storagecomponent.h>
-#include <vespa/storageapi/messageapi/storagemessage.h>
-#include <vespa/storageapi/message/state.h>
-#include <vespa/storage/config/config-stor-opslogger.h>
-#include <vespa/config/helper/ifetchercallback.h>
-
-namespace config {
- class ConfigUri;
- class ConfigFetcher;
-}
-
-namespace storage {
-
-class OpsLogger : public StorageLink,
- public config::IFetcherCallback<vespa::config::content::core::StorOpsloggerConfig> {
-public:
- explicit OpsLogger(StorageComponentRegister&,
- const config::ConfigUri & configUri);
- ~OpsLogger() override;
-
- void onClose() override;
- void print(std::ostream& out, bool verbose, const std::string& indent) const override;
- bool onPutReply(const std::shared_ptr<api::PutReply>& msg) override;
- bool onUpdateReply(const std::shared_ptr<api::UpdateReply>& msg) override;
- bool onRemoveReply(const std::shared_ptr<api::RemoveReply>& msg) override;
- bool onGetReply(const std::shared_ptr<api::GetReply>& msg) override;
-
- /** Ignore all replies on the way down the storage chain. */
- bool onDown(const std::shared_ptr<api::StorageMessage>&) override { return false; };
- void configure(std::unique_ptr<vespa::config::content::core::StorOpsloggerConfig> config) override;
-private:
- std::mutex _lock;
- std::string _fileName;
- FILE * _targetFile;
- framework::Component _component;
-
- std::unique_ptr<config::ConfigFetcher> _configFetcher;
-};
-
-}
diff --git a/storage/src/vespa/storage/storageserver/servicelayernode.cpp b/storage/src/vespa/storage/storageserver/servicelayernode.cpp
index 65615bea2dd..846d6ed09bf 100644
--- a/storage/src/vespa/storage/storageserver/servicelayernode.cpp
+++ b/storage/src/vespa/storage/storageserver/servicelayernode.cpp
@@ -5,7 +5,6 @@
#include "communicationmanager.h"
#include "changedbucketownershiphandler.h"
#include "mergethrottler.h"
-#include "opslogger.h"
#include "statemanager.h"
#include "priorityconverter.h"
#include "service_layer_error_listener.h"
@@ -167,7 +166,6 @@ ServiceLayerNode::createChain(IStorageChainBuilder &builder)
_communicationManager = communication_manager.get();
builder.add(std::move(communication_manager));
builder.add(std::make_unique<Bouncer>(compReg, _configUri));
- builder.add(std::make_unique<OpsLogger>(compReg, _configUri));
auto merge_throttler_up = std::make_unique<MergeThrottler>(_configUri, compReg);
auto merge_throttler = merge_throttler_up.get();
builder.add(std::move(merge_throttler_up));