aboutsummaryrefslogtreecommitdiff
path: root/toolsrc/src/vcpkg.cpp
diff options
context:
space:
mode:
authorRobert Schumacher <roschuma@microsoft.com>2017-11-13 21:36:29 -0800
committerRobert Schumacher <roschuma@microsoft.com>2017-11-13 21:49:11 -0800
commit415789b42e5fd43ac984902cd72848f6ef6b450a (patch)
tree6262849933cc31b67f0081897fbcad2f800812bf /toolsrc/src/vcpkg.cpp
parent1ea060d6fa9925dd9146f71b8c73a04bfcc5caf4 (diff)
downloadvcpkg-415789b42e5fd43ac984902cd72848f6ef6b450a.tar.gz
vcpkg-415789b42e5fd43ac984902cd72848f6ef6b450a.zip
[vcpkg-metrics] Replace SQM with MAC hash.
Diffstat (limited to 'toolsrc/src/vcpkg.cpp')
-rw-r--r--toolsrc/src/vcpkg.cpp59
1 files changed, 37 insertions, 22 deletions
diff --git a/toolsrc/src/vcpkg.cpp b/toolsrc/src/vcpkg.cpp
index 2a73c5b0f..5642f937c 100644
--- a/toolsrc/src/vcpkg.cpp
+++ b/toolsrc/src/vcpkg.cpp
@@ -157,6 +157,7 @@ static void load_config()
CoTaskMemFree(localappdatapath);
}
+ std::string user_id, user_time, user_mac;
try
{
auto maybe_pghs = Paragraphs::get_paragraphs(Files::get_real_filesystem(), localappdata / "vcpkg" / "config");
@@ -173,39 +174,54 @@ static void load_config()
keys.insert(p);
}
- auto user_id = keys["User-Id"];
- auto user_time = keys["User-Since"];
- if (!user_id.empty() && !user_time.empty())
- {
- Metrics::g_metrics.lock()->set_user_information(user_id, user_time);
- return;
- }
+ user_id = keys["User-Id"];
+ user_time = keys["User-Since"];
+ user_mac = keys["Mac-Hash"];
}
}
catch (...)
{
}
+ bool write_config = false;
+
// config file not found, could not be read, or invalid
- std::string user_id, user_time;
+ if (user_id.empty() || user_time.empty())
{
- auto locked_metrics = Metrics::g_metrics.lock();
- locked_metrics->init_user_information(user_id, user_time);
- locked_metrics->set_user_information(user_id, user_time);
+ ::vcpkg::Metrics::Metrics::init_user_information(user_id, user_time);
+ write_config = true;
}
- try
+
+ if (user_mac.empty())
{
- std::error_code ec;
- auto& fs = Files::get_real_filesystem();
- fs.create_directory(localappdata / "vcpkg", ec);
- fs.write_contents(localappdata / "vcpkg" / "config",
- Strings::format("User-Id: %s\n"
- "User-Since: %s\n",
- user_id,
- user_time));
+ user_mac = Metrics::get_MAC_user();
+ write_config = true;
}
- catch (...)
+
{
+ auto locked_metrics = Metrics::g_metrics.lock();
+ locked_metrics->set_user_information(user_id, user_time);
+ locked_metrics->track_property("user_mac", user_mac);
+ }
+
+ if (write_config)
+ {
+ try
+ {
+ std::error_code ec;
+ auto& fs = Files::get_real_filesystem();
+ fs.create_directory(localappdata / "vcpkg", ec);
+ fs.write_contents(localappdata / "vcpkg" / "config",
+ Strings::format("User-Id: %s\n"
+ "User-Since: %s\n"
+ "Mac-Hash: %s\n",
+ user_id,
+ user_time,
+ user_mac));
+ }
+ catch (...)
+ {
+ }
}
#endif
}
@@ -259,7 +275,6 @@ int main(const int argc, const char* const* const argv)
#endif
}
load_config();
- Metrics::g_metrics.lock()->track_property("sqmuser", Metrics::get_SQM_user());
const VcpkgCmdArguments args = VcpkgCmdArguments::create_from_command_line(argc, argv);