Skip to content

Commit 7fedb1d

Browse files
committed
feat: add debug util for printing build info
1 parent ebca3a8 commit 7fedb1d

1 file changed

Lines changed: 28 additions & 0 deletions

File tree

  • src/main/java/io/weaviate/client6/v1/internal

src/main/java/io/weaviate/client6/v1/internal/Debug.java

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package io.weaviate.client6.v1.internal;
22

3+
import java.util.function.Consumer;
4+
35
import com.google.protobuf.InvalidProtocolBufferException;
46
import com.google.protobuf.MessageOrBuilder;
57
import com.google.protobuf.util.JsonFormat;
@@ -24,4 +26,30 @@ private static final String proto2json(MessageOrBuilder proto) {
2426

2527
return out;
2628
}
29+
30+
/**
31+
* Write build info to an output. See {@link #printBuildInfo}.
32+
*
33+
* <p>
34+
* Usage:
35+
*
36+
* <pre>{@code
37+
* // Log to stdout
38+
* Debug.writeBuildInfo(System.out::println);
39+
*
40+
* // Write to custom logger
41+
* Debug.writeBuildInfo(mylog::info);
42+
* }</pre>
43+
*
44+
* @param writer Output writer.
45+
*/
46+
public static final void writeBuildInfo(Consumer<String> writer) {
47+
writer.accept("[io.weaviate.client6.v1.internal.BuildInfo] branch=%s commit_id=%s"
48+
.formatted(BuildInfo.BRANCH, BuildInfo.COMMIT_ID_ABBREV));
49+
}
50+
51+
/** Print build info to stdout. */
52+
public static final void printBuildInfo() {
53+
writeBuildInfo(System.out::println);
54+
}
2755
}

0 commit comments

Comments
 (0)