@@ -43,21 +43,33 @@ public Statistics() {
4343 startTime = Instant .now ();
4444 }
4545
46- private void logIt (Logger logger , Level logLevel , String msg , Duration duration ) {
46+ /**
47+ * Log a message with duration using provided logger if the supplied log level is active.
48+ * @param logger logger instance
49+ * @param logLevel log level
50+ * @param msg message string
51+ * @param duration duration to report
52+ * @return whether logging was performed
53+ */
54+ private boolean logIt (Logger logger , Level logLevel , String msg , Duration duration ) {
4755 if (logger .isLoggable (logLevel )) {
4856 String timeStr = StringUtils .getReadableTime (duration .toMillis ());
4957 logger .log (logLevel , String .format ("%s (took %s)" , msg , timeStr ));
58+ return true ;
5059 }
60+
61+ return false ;
5162 }
5263
5364 /**
5465 * Log a message along with how much time it took since the constructor was called.
5566 * @param logger logger instance
5667 * @param logLevel log level
5768 * @param msg message string
69+ * @return whether logging was performed
5870 */
59- public void report (Logger logger , Level logLevel , String msg ) {
60- logIt (logger , logLevel , msg , Duration .between (startTime , Instant .now ()));
71+ public boolean report (Logger logger , Level logLevel , String msg ) {
72+ return logIt (logger , logLevel , msg , Duration .between (startTime , Instant .now ()));
6173 }
6274
6375 /**
@@ -68,9 +80,10 @@ public void report(Logger logger, Level logLevel, String msg) {
6880 * @param msg message string
6981 * @param meterName name of the meter
7082 * @see Metrics#getRegistry()
83+ * @return whether logging was performed
7184 */
72- public void report (Logger logger , Level logLevel , String msg , String meterName ) {
73- report (logger , logLevel , msg , meterName , new String []{});
85+ public boolean report (Logger logger , Level logLevel , String msg , String meterName ) {
86+ return report (logger , logLevel , msg , meterName , new String []{});
7487 }
7588
7689 /**
@@ -82,11 +95,12 @@ public void report(Logger logger, Level logLevel, String msg, String meterName)
8295 * @param meterName name of the meter
8396 * @param tags array of tags for the meter
8497 * @see Metrics#getRegistry()
98+ * @return whether logging was performed
8599 */
86- public void report (Logger logger , Level logLevel , String msg , String meterName , String [] tags ) {
100+ public boolean report (Logger logger , Level logLevel , String msg , String meterName , String [] tags ) {
87101 Duration duration = Duration .between (startTime , Instant .now ());
88102
89- logIt (logger , logLevel , msg , duration );
103+ boolean ret = logIt (logger , logLevel , msg , duration );
90104
91105 MeterRegistry registry = Metrics .getRegistry ();
92106 if (registry != null ) {
@@ -95,6 +109,8 @@ public void report(Logger logger, Level logLevel, String msg, String meterName,
95109 register (registry ).
96110 record (duration );
97111 }
112+
113+ return ret ;
98114 }
99115
100116 /**
@@ -104,18 +120,20 @@ public void report(Logger logger, Level logLevel, String msg, String meterName,
104120 * @param logger logger instance
105121 * @param msg message string
106122 * @param meterName name of the meter
123+ * @return whether logging was performed
107124 */
108- public void report (Logger logger , String msg , String meterName ) {
109- report (logger , Level .INFO , msg , meterName );
125+ public boolean report (Logger logger , String msg , String meterName ) {
126+ return report (logger , Level .INFO , msg , meterName );
110127 }
111128
112129 /**
113130 * log a message along with how much time it took since the constructor was called.
114131 * The log level is {@code INFO}.
115132 * @param logger logger instance
116133 * @param msg message string
134+ * @return whether logging was performed
117135 */
118- public void report (Logger logger , String msg ) {
119- report (logger , Level .INFO , msg );
136+ public boolean report (Logger logger , String msg ) {
137+ return report (logger , Level .INFO , msg );
120138 }
121139}
0 commit comments