Skip to content

Commit 0941251

Browse files
authored
[wpilib] Add usage reporting for loggers (#7450)
1 parent 7d17861 commit 0941251

File tree

7 files changed

+55
-0
lines changed

7 files changed

+55
-0
lines changed

hal/src/generate/Instances.txt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,3 +68,10 @@ kDashboard_LabVIEW = 6
6868
kDashboard_AdvantageScope = 7
6969
kDashboard_QFRCDashboard = 8
7070
kDashboard_FRCWebComponents = 9
71+
kDataLogLocation_Onboard = 1
72+
kDataLogLocation_USB = 2
73+
kLoggingFramework_Other = 1
74+
kLoggingFramework_Epilogue = 2
75+
kLoggingFramework_Monologue = 3
76+
kLoggingFramework_AdvantageKit = 4
77+
kLoggingFramework_DogLog = 5

hal/src/generate/ResourceType.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,3 +115,5 @@ kResourceType_Redux_future5 = 113
115115
kResourceType_RevSparkFlexCAN = 114
116116
kResourceType_RevSparkFlexPWM = 115
117117
kResourceType_BangBangController = 116
118+
kResourceType_DataLogManager = 117
119+
kResourceType_LoggingFramework = 118

hal/src/generated/main/java/edu/wpi/first/hal/FRCNetComm.java

Lines changed: 18 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

hal/src/generated/main/native/include/hal/FRCUsageReporting.h

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

hal/src/generated/main/native/include/hal/UsageReporting.h

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

wpilibc/src/main/native/cpp/DataLogManager.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
#include <vector>
1414

1515
#include <fmt/chrono.h>
16+
#include <hal/FRCUsageReporting.h>
1617
#include <networktables/NetworkTableInstance.h>
1718
#include <wpi/DataLog.h>
1819
#include <wpi/DataLogBackgroundWriter.h>
@@ -78,13 +79,17 @@ static std::string MakeLogDir(std::string_view dir) {
7879
(s.permissions() & fs::perms::others_write) != fs::perms::none) {
7980
fs::create_directory("/u/logs", ec);
8081
return "/u/logs";
82+
HAL_Report(HALUsageReporting::kResourceType_DataLogManager,
83+
HALUsageReporting::kDataLogLocation_USB);
8184
}
8285
if (RobotBase::GetRuntimeType() == kRoboRIO) {
8386
FRC_ReportWarning(
8487
"DataLogManager: Logging to RoboRIO 1 internal storage is "
8588
"not recommended! Plug in a FAT32 formatted flash drive!");
8689
}
8790
fs::create_directory("/home/lvuser/logs", ec);
91+
HAL_Report(HALUsageReporting::kResourceType_DataLogManager,
92+
HALUsageReporting::kDataLogLocation_Onboard);
8893
return "/home/lvuser/logs";
8994
#else
9095
std::string logDir = filesystem::GetOperatingDirectory() + "/logs";

wpilibj/src/main/java/edu/wpi/first/wpilibj/DataLogManager.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@
44

55
package edu.wpi.first.wpilibj;
66

7+
import edu.wpi.first.hal.FRCNetComm.tInstances;
8+
import edu.wpi.first.hal.FRCNetComm.tResourceType;
9+
import edu.wpi.first.hal.HAL;
710
import edu.wpi.first.networktables.NetworkTableInstance;
811
import edu.wpi.first.util.FileLogger;
912
import edu.wpi.first.util.WPIUtilJNI;
@@ -244,6 +247,7 @@ private static String makeLogDir(String dir) {
244247
if (!new File("/u/logs").mkdir()) {
245248
// ignored
246249
}
250+
HAL.report(tResourceType.kResourceType_DataLogManager, tInstances.kDataLogLocation_USB);
247251
return "/u/logs";
248252
}
249253
} catch (IOException ex) {
@@ -258,6 +262,7 @@ private static String makeLogDir(String dir) {
258262
if (!new File("/home/lvuser/logs").mkdir()) {
259263
// ignored
260264
}
265+
HAL.report(tResourceType.kResourceType_DataLogManager, tInstances.kDataLogLocation_Onboard);
261266
return "/home/lvuser/logs";
262267
}
263268
String logDir = Filesystem.getOperatingDirectory().getAbsolutePath() + "/logs";

0 commit comments

Comments
 (0)