public Mono getContainerLog()

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);
            }
        });
    }