diff options
Diffstat (limited to 'src/core/telemetry_session.cpp')
-rw-r--r-- | src/core/telemetry_session.cpp | 69 |
1 files changed, 7 insertions, 62 deletions
diff --git a/src/core/telemetry_session.cpp b/src/core/telemetry_session.cpp index 69aa7a7be..7e4584fc2 100644 --- a/src/core/telemetry_session.cpp +++ b/src/core/telemetry_session.cpp @@ -2,34 +2,16 @@ // Licensed under GPLv2 or any later version // Refer to the license.txt file included. -#include <cstring> - #include "common/assert.h" +#include "common/common_types.h" #include "common/file_util.h" -#include "common/scm_rev.h" -#ifdef ARCHITECTURE_x86_64 -#include "common/x64/cpu_detect.h" -#endif + #include "core/core.h" #include "core/settings.h" #include "core/telemetry_session.h" namespace Core { -#ifdef ARCHITECTURE_x86_64 -static const char* CpuVendorToStr(Common::CPUVendor vendor) { - switch (vendor) { - case Common::CPUVendor::INTEL: - return "Intel"; - case Common::CPUVendor::AMD: - return "Amd"; - case Common::CPUVendor::OTHER: - return "Other"; - } - UNREACHABLE(); -} -#endif - static u64 GenerateTelemetryId() { u64 telemetry_id{}; return telemetry_id; @@ -112,48 +94,11 @@ TelemetrySession::TelemetrySession() { } // Log application information - const bool is_git_dirty{std::strstr(Common::g_scm_desc, "dirty") != nullptr}; - AddField(Telemetry::FieldType::App, "Git_IsDirty", is_git_dirty); - AddField(Telemetry::FieldType::App, "Git_Branch", Common::g_scm_branch); - AddField(Telemetry::FieldType::App, "Git_Revision", Common::g_scm_rev); - AddField(Telemetry::FieldType::App, "BuildDate", Common::g_build_date); - AddField(Telemetry::FieldType::App, "BuildName", Common::g_build_name); - -// Log user system information -#ifdef ARCHITECTURE_x86_64 - AddField(Telemetry::FieldType::UserSystem, "CPU_Model", Common::GetCPUCaps().cpu_string); - AddField(Telemetry::FieldType::UserSystem, "CPU_BrandString", - Common::GetCPUCaps().brand_string); - AddField(Telemetry::FieldType::UserSystem, "CPU_Vendor", - CpuVendorToStr(Common::GetCPUCaps().vendor)); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_AES", Common::GetCPUCaps().aes); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_AVX", Common::GetCPUCaps().avx); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_AVX2", Common::GetCPUCaps().avx2); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_BMI1", Common::GetCPUCaps().bmi1); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_BMI2", Common::GetCPUCaps().bmi2); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_FMA", Common::GetCPUCaps().fma); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_FMA4", Common::GetCPUCaps().fma4); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_SSE", Common::GetCPUCaps().sse); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_SSE2", Common::GetCPUCaps().sse2); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_SSE3", Common::GetCPUCaps().sse3); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_SSSE3", - Common::GetCPUCaps().ssse3); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_SSE41", - Common::GetCPUCaps().sse4_1); - AddField(Telemetry::FieldType::UserSystem, "CPU_Extension_x64_SSE42", - Common::GetCPUCaps().sse4_2); -#else - AddField(Telemetry::FieldType::UserSystem, "CPU_Model", "Other"); -#endif -#ifdef __APPLE__ - AddField(Telemetry::FieldType::UserSystem, "OsPlatform", "Apple"); -#elif defined(_WIN32) - AddField(Telemetry::FieldType::UserSystem, "OsPlatform", "Windows"); -#elif defined(__linux__) || defined(linux) || defined(__linux) - AddField(Telemetry::FieldType::UserSystem, "OsPlatform", "Linux"); -#else - AddField(Telemetry::FieldType::UserSystem, "OsPlatform", "Unknown"); -#endif + Telemetry::AppendBuildInfo(field_collection); + + // Log user system information + Telemetry::AppendCPUInfo(field_collection); + Telemetry::AppendOSInfo(field_collection); // Log user configuration information AddField(Telemetry::FieldType::UserConfig, "Core_UseCpuJit", Settings::values.use_cpu_jit); |