mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 13:50:03 +00:00 
			
		
		
		
	Remove the telemetry (#45)
* remove the telemetry except from the renderers as I'm not being capable to remove it from there
* remove the telemetry except from the renderers as I'm not being capable to remove it from there
* Remove remainder of non-functional Telemetry and Citra Web Services
Squashed commit of the following:
commit f6dd4d4579c91db323877f0d08b9c01c82e1bb32
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 14:02:26 2024 -0600
    gl_driver.h: add back missing functions
commit 8f14384e7a7b763c3f2ccb3af6b5a59df641d9ee
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 13:56:16 2024 -0600
    gl_driver.cpp: add back missing functions
commit 5c802524b01a6eb05952d88ccf9dd78d63baee0a
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 13:39:46 2024 -0600
    apply clang-format
commit e8f62a7d3ee8a3da885a28bce21bcfcb84f13a84
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 13:16:22 2024 -0600
    remove web_tab
commit ced7f1e4909ae7b2714a96e3c3fa0500e8c62968
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 13:13:47 2024 -0600
    remove unused call?
commit f10e05da887e4570853fae2bd55a71087b4bcc77
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 13:03:47 2024 -0600
    fix build errors
commit 0489c1770b4b48d51f626145ae9235d3c81029fc
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 12:54:35 2024 -0600
    Remove deleted files
commit b2eb56f5a1f01663cc9874d99fe77ee64b48622b
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 12:43:17 2024 -0600
    Remove ConfigureWeb
commit b96f7c724006b2c5ee2272becaa70584fe90d012
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 11:49:51 2024 -0600
    remove unused DebugHandler
commit 91ddf16f63f9ae07b0cb2768171728dc878d1653
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 11:41:31 2024 -0600
    remove CollectToolingInfo() reference
commit 3909ac0502f23f8fb54944b53d5072b6986f8ffd
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 11:33:39 2024 -0600
    Fix "clean renderer_vulkan.cpp"
    This reverts commit 8a882658da9fabca40d71d73bfaf3bb5702acd72.
commit f4a10c4e4f27471b0a263ac363a6fa2abc9d6dc9
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 11:25:12 2024 -0600
    remove Core() references
commit 5593b8484e7c9f525ea218902dd2c13148d86b37
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 11:09:26 2024 -0600
    clean core/core.cpp
commit 55bbd8ad283297ef79db11e19ca6303fdfba6626
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 11:03:45 2024 -0600
    apply clang-format
commit 3707a0b2705dd415876130c9c90b0916bdea11db
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 11:02:16 2024 -0600
    citra_qt/main.h
commit ddbdea9be4d8179a333e04e7c302e215868715a9
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 11:01:30 2024 -0600
    clean common/detached_tasks.h
commit b513ba3b91ebc81bddd634b5690b6434824e1c7a
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:58:51 2024 -0600
    clean android/app/src/main/jni/default_ini.h
commit b6ba7d7cd730393883fdca294c651a4186727b55
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:58:14 2024 -0600
    clean android/app/src/main/jni/native.cpp
commit 2351305bb24b005920af0f3f7bb6bbb5bb3124bd
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:56:59 2024 -0600
    network/network_settings.h
commit 5b4c1ebb97c7fad5daf7789e1d3640041c2412fb
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:55:53 2024 -0600
    clean citra_qt/configuration/configure_web.ui
commit 9526d5122995c2e9c52b4d93b6e836a2ea4c80ef
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:54:53 2024 -0600
    citra_qt/configuration/config.cpp
commit ec6fe57412ce97e06096fc07f8b86dd080b7b944
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:53:50 2024 -0600
    clean citra/default_ini.h
commit acba1cf7e94de2fa87174e9f6d7c7c4554146352
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:52:47 2024 -0600
    clean citra/config.cpp
commit 02888777590d4e4bf1423e168a672ca0c5e140e5
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:50:42 2024 -0600
    clean vk_instance.cpp
commit eae451d5825b3601382c3a6dd08a3bde5c7a9460
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:48:53 2024 -0600
    clean vk_instanch.h
commit 8a882658da9fabca40d71d73bfaf3bb5702acd72
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:47:11 2024 -0600
    clean renderer_vulkan.cpp
commit ea6df111bc447913d2999acd86de984acced7eeb
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:45:51 2024 -0600
    clean renderer_opengl.cpp
commit 6b1bea0ef8cf8831c520d1c4e90b9d73d421c764
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:44:17 2024 -0600
    clean pica_to_gl.h
commit c12e984045a430cb10500241ada68701f73c85ac
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:42:48 2024 -0600
    clean gl_driver.h
commit ca3fe7801fff125a1ab8706bfc3998ca2928bded
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:40:14 2024 -0600
    clean gl_driver.cpp
commit d57381c38b217a423a7039bc7b413d79f59c2ff1
Author: Reg Tiangha <rtiangha@users.noreply.github.com>
Date:   Fri Mar 29 10:38:44 2024 -0600
    delete telemetry files
commit 1af826d1a045c5568a0d9ef4ca423514f298aee2
Author: Miguel <81558772+Miguel-hrvs@users.noreply.github.com>
Date:   Wed Mar 27 16:17:58 2024 +0100
    remove the telemetry except from the renderers as I'm not being capable to remove it from there
* rebase renderer_vulkan
* clean up renderer_vulkan
* bring back vulkan gpu logging
* clang-format vk_instance.h
* fix-formatting
---------
Co-authored-by: Reg Tiangha <rtiangha@users.noreply.github.com>
			
			
This commit is contained in:
		
							parent
							
								
									a442389a60
								
							
						
					
					
						commit
						8e35df1a6c
					
				
					 62 changed files with 49 additions and 4395 deletions
				
			
		|  | @ -2,8 +2,6 @@ add_library(web_service STATIC | |||
|     announce_room_json.cpp | ||||
|     announce_room_json.h | ||||
|     precompiled_headers.h | ||||
|     telemetry_json.cpp | ||||
|     telemetry_json.h | ||||
|     verify_login.cpp | ||||
|     verify_login.h | ||||
|     verify_user_jwt.cpp | ||||
|  |  | |||
|  | @ -1,130 +0,0 @@ | |||
| // Copyright 2017 Citra Emulator Project
 | ||||
| // Licensed under GPLv2 or any later version
 | ||||
| // Refer to the license.txt file included.
 | ||||
| 
 | ||||
| #include <json.hpp> | ||||
| #include "common/detached_tasks.h" | ||||
| #include "common/web_result.h" | ||||
| #include "web_service/telemetry_json.h" | ||||
| #include "web_service/web_backend.h" | ||||
| 
 | ||||
| namespace WebService { | ||||
| 
 | ||||
| namespace Telemetry = Common::Telemetry; | ||||
| 
 | ||||
| struct TelemetryJson::Impl { | ||||
|     Impl(std::string host, std::string username, std::string token) | ||||
|         : host{std::move(host)}, username{std::move(username)}, token{std::move(token)} {} | ||||
| 
 | ||||
|     nlohmann::json& TopSection() { | ||||
|         return sections[static_cast<u8>(Telemetry::FieldType::None)]; | ||||
|     } | ||||
| 
 | ||||
|     const nlohmann::json& TopSection() const { | ||||
|         return sections[static_cast<u8>(Telemetry::FieldType::None)]; | ||||
|     } | ||||
| 
 | ||||
|     template <class T> | ||||
|     void Serialize(Telemetry::FieldType type, const std::string& name, T value) { | ||||
|         sections[static_cast<u8>(type)][name] = value; | ||||
|     } | ||||
| 
 | ||||
|     void SerializeSection(Telemetry::FieldType type, const std::string& name) { | ||||
|         TopSection()[name] = sections[static_cast<unsigned>(type)]; | ||||
|     } | ||||
| 
 | ||||
|     nlohmann::json output; | ||||
|     std::array<nlohmann::json, 7> sections; | ||||
|     std::string host; | ||||
|     std::string username; | ||||
|     std::string token; | ||||
| }; | ||||
| 
 | ||||
| TelemetryJson::TelemetryJson(std::string host, std::string username, std::string token) | ||||
|     : impl{std::make_unique<Impl>(std::move(host), std::move(username), std::move(token))} {} | ||||
| TelemetryJson::~TelemetryJson() = default; | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<bool>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<double>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<float>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<u8>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<u16>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<u32>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<u64>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<s8>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<s16>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<s32>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<s64>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<std::string>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<const char*>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), std::string(field.GetValue())); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Visit(const Telemetry::Field<std::chrono::microseconds>& field) { | ||||
|     impl->Serialize(field.GetType(), field.GetName(), field.GetValue().count()); | ||||
| } | ||||
| 
 | ||||
| void TelemetryJson::Complete() { | ||||
|     impl->SerializeSection(Telemetry::FieldType::App, "App"); | ||||
|     impl->SerializeSection(Telemetry::FieldType::Session, "Session"); | ||||
|     impl->SerializeSection(Telemetry::FieldType::Performance, "Performance"); | ||||
|     impl->SerializeSection(Telemetry::FieldType::UserConfig, "UserConfig"); | ||||
|     impl->SerializeSection(Telemetry::FieldType::UserSystem, "UserSystem"); | ||||
| 
 | ||||
|     auto content = impl->TopSection().dump(); | ||||
|     // Send the telemetry async but don't handle the errors since they were written to the log
 | ||||
|     Common::DetachedTasks::AddTask([host{impl->host}, content]() { | ||||
|         Client{host, "", ""}.PostJson("/telemetry", content, true); | ||||
|     }); | ||||
| } | ||||
| 
 | ||||
| bool TelemetryJson::SubmitTestcase() { | ||||
|     impl->SerializeSection(Telemetry::FieldType::App, "App"); | ||||
|     impl->SerializeSection(Telemetry::FieldType::Session, "Session"); | ||||
|     impl->SerializeSection(Telemetry::FieldType::UserFeedback, "UserFeedback"); | ||||
|     impl->SerializeSection(Telemetry::FieldType::UserSystem, "UserSystem"); | ||||
| 
 | ||||
|     auto content = impl->TopSection().dump(); | ||||
|     Client client(impl->host, impl->username, impl->token); | ||||
|     auto value = client.PostJson("/gamedb/testcase", content, false); | ||||
| 
 | ||||
|     return value.result_code == Common::WebResult::Code::Success; | ||||
| } | ||||
| 
 | ||||
| } // namespace WebService
 | ||||
|  | @ -1,46 +0,0 @@ | |||
| // Copyright 2017 Citra Emulator Project
 | ||||
| // Licensed under GPLv2 or any later version
 | ||||
| // Refer to the license.txt file included.
 | ||||
| 
 | ||||
| #pragma once | ||||
| 
 | ||||
| #include <chrono> | ||||
| #include <string> | ||||
| #include "common/announce_multiplayer_room.h" | ||||
| #include "common/telemetry.h" | ||||
| 
 | ||||
| namespace WebService { | ||||
| 
 | ||||
| /**
 | ||||
|  * Implementation of VisitorInterface that serialized telemetry into JSON, and submits it to the | ||||
|  * Citra web service | ||||
|  */ | ||||
| class TelemetryJson : public Common::Telemetry::VisitorInterface { | ||||
| public: | ||||
|     TelemetryJson(std::string host, std::string username, std::string token); | ||||
|     ~TelemetryJson() override; | ||||
| 
 | ||||
|     void Visit(const Common::Telemetry::Field<bool>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<double>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<float>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<u8>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<u16>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<u32>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<u64>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<s8>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<s16>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<s32>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<s64>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<std::string>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<const char*>& field) override; | ||||
|     void Visit(const Common::Telemetry::Field<std::chrono::microseconds>& field) override; | ||||
| 
 | ||||
|     void Complete() override; | ||||
|     bool SubmitTestcase() override; | ||||
| 
 | ||||
| private: | ||||
|     struct Impl; | ||||
|     std::unique_ptr<Impl> impl; | ||||
| }; | ||||
| 
 | ||||
| } // namespace WebService
 | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue