in src/main/java/com/epam/aidial/kubernetes/KubernetesClient.java [175:198]
public Mono<String> getContainerLog(String namespace, String pod, String container) {
return Mono.create(sink -> {
CoreV1Api coreV1Api = new CoreV1Api(apiClient);
log.info("Retrieving pod {} container {} logs", pod, container);
try {
coreV1Api.readNamespacedPodLog(pod, namespace)
.container(container)
.executeAsync(new NoProgressApiCallback<>() {
@Override
public void onFailure(ApiException e, int i, Map<String, List<String>> map) {
sink.error(e);
}
@Override
public void onSuccess(String logs, int i, Map<String, List<String>> map) {
log.info("Retrieved pod {} container {} logs", pod, container);
sink.success(logs);
}
});
} catch (ApiException e) {
sink.error(e);
}
});
}