Skip to content

Commit cf1073e

Browse files
authored
sentry: move make_client_id to ApplicationInfo (#2365)
1 parent e49e1d2 commit cf1073e

File tree

6 files changed

+17
-13
lines changed

6 files changed

+17
-13
lines changed

cmd/sentry.cpp

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
#include <grpcpp/grpcpp.h>
2424

2525
#include <silkworm/buildinfo.h>
26+
#include <silkworm/infra/common/application_info.hpp>
2627
#include <silkworm/infra/common/log.hpp>
2728
#include <silkworm/infra/concurrency/awaitable_wait_for_one.hpp>
2829
#include <silkworm/infra/grpc/client/client_context_pool.hpp>
@@ -41,7 +42,7 @@ Settings sentry_parse_cli_settings(int argc, char* argv[]) {
4142
CLI::App cli{"Sentry - P2P proxy"};
4243

4344
Settings settings;
44-
settings.client_id = Sentry::make_client_id(*silkworm_get_buildinfo());
45+
settings.client_id = make_client_id_from_build_info(*silkworm_get_buildinfo());
4546

4647
add_logging_options(cli, settings.log_settings);
4748
add_option_data_dir(cli, settings.data_dir_path);

cmd/silkworm.cpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@
3434
#include <silkworm/infra/concurrency/awaitable_wait_for_one.hpp>
3535
#include <silkworm/infra/grpc/client/client_context_pool.hpp>
3636
#include <silkworm/node/node.hpp>
37-
#include <silkworm/sentry/sentry.hpp>
3837

3938
#include "common/common.hpp"
4039
#include "common/db_checklist.hpp"
@@ -195,7 +194,7 @@ void parse_silkworm_command_line(CLI::App& cli, int argc, char* argv[], node::Se
195194
snapshot_settings.bittorrent_settings.repository_path = snapshot_settings.repository_dir;
196195

197196
// sentry::Settings
198-
settings.sentry_settings.client_id = sentry::Sentry::make_client_id(*build_info);
197+
settings.sentry_settings.client_id = node_settings.build_info.client_id;
199198
settings.sentry_settings.data_dir_path = node_settings.data_directory->path();
200199
settings.sentry_settings.network_id = node_settings.network_id;
201200
}

silkworm/infra/common/application_info.cpp

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@
2121
namespace silkworm {
2222

2323
std::string get_node_name_from_build_info(const buildinfo* info) {
24-
std::string node_name{"silkworm/"};
24+
std::string node_name = info->project_name;
25+
node_name.append("/");
2526
node_name.append(info->git_branch);
2627
node_name.append(info->project_version);
2728
node_name.append("/");
@@ -37,6 +38,13 @@ std::string get_node_name_from_build_info(const buildinfo* info) {
3738
return node_name;
3839
}
3940

41+
std::string make_client_id_from_build_info(const buildinfo& info) {
42+
return std::string(info.project_name) +
43+
"/v" + info.project_version +
44+
"/" + info.system_name + "-" + info.system_processor +
45+
"/" + info.compiler_id + "-" + info.compiler_version;
46+
}
47+
4048
std::string get_description_from_build_info(const buildinfo* info) {
4149
std::string description{"version: "};
4250
description.append(info->git_branch);
@@ -60,6 +68,7 @@ ApplicationInfo make_application_info(const buildinfo* info) {
6068
.commit_hash = info->git_commit_hash,
6169
.build_description = get_description_from_build_info(info),
6270
.node_name = get_node_name_from_build_info(info),
71+
.client_id = make_client_id_from_build_info(*info),
6372
};
6473
}
6574

silkworm/infra/common/application_info.hpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,15 @@ struct ApplicationInfo {
3030
std::string commit_hash; // Extracted from version control system
3131
std::string build_description; // Containing compiler and platform
3232
std::string node_name; // Complete node name with identifier and build info
33+
std::string client_id; // P2P RLPx clientId
3334
};
3435

3536
//! Assemble the complete node name using the Cable build information
3637
std::string get_node_name_from_build_info(const buildinfo* info);
3738

39+
//! P2P RLPx clientId from the Cable build information
40+
std::string make_client_id_from_build_info(const buildinfo& info);
41+
3842
//! Assemble the build description using the Cable build information
3943
std::string get_description_from_build_info(const buildinfo* info);
4044

silkworm/sentry/sentry.cpp

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -313,13 +313,6 @@ Task<void> SentryImpl::run_grpc_server() {
313313
}
314314
}
315315

316-
std::string Sentry::make_client_id(const buildinfo& info) {
317-
return std::string(info.project_name) +
318-
"/v" + info.project_version +
319-
"/" + info.system_name + "-" + info.system_processor +
320-
"/" + info.compiler_id + "-" + info.compiler_version;
321-
}
322-
323316
std::string SentryImpl::client_id() const {
324317
return settings_.client_id;
325318
}

silkworm/sentry/sentry.hpp

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,6 @@ class Sentry final : public api::SentryClient {
4747
void on_disconnect(std::function<Task<void>()> callback) override;
4848
Task<void> reconnect() override;
4949

50-
static std::string make_client_id(const buildinfo& info);
51-
5250
private:
5351
std::unique_ptr<SentryImpl> p_impl_;
5452
};

0 commit comments

Comments
 (0)