62 Map<String, Object> options,
65 int responseHttpStatus,
67 long endTime = System.currentTimeMillis();
69 String httpStatus = String.valueOf(responseHttpStatus);
71 String formatString =
"";
72 if (format instanceof String) {
73 formatString = (String) format;
74 }
else if (format instanceof Map) {
75 formatString = mapToString((Map<String, Object>) format);
76 }
else if (format !=
null) {
77 formatString = format.toString();
85 String.valueOf(streaming),
86 String.valueOf(thinking),
88 safe(mapToString(options)),
91 double durationSeconds = (endTime - startTime) / 1000.0;
99 String.valueOf(streaming),
100 String.valueOf(thinking),
102 safe(mapToString(options)),
104 .observe(durationSeconds);
107 if (response !=
null) {
108 if (response instanceof Exception) {
109 response = Throwables.getStackTraceAsString((Throwable) response);
111 int size = response.toString().length();
112 responseSize.labels(endpoint, safe(model), safe(mapToString(options))).observe(size);