import { useCurrentStateAndParams } from '@uirouter/react';
import { useContainer } from '@/react/docker/containers/queries/useContainer';
import {
streamContainerLogs,
StreamLogsParams,
} from '@/react/docker/containers/containers.service';
import { ContainerDetailsViewModel } from '@/docker/models/containerDetails';
import { trimContainerName } from '@/docker/filters/utils';
import { InformationPanel } from '@@/InformationPanel';
import { TextTip } from '@@/Tip/TextTip';
import { Link } from '@@/Link';
import { LogViewer } from '@@/LogViewer';
export function LogView() {
const {
params: { endpointId: environmentId, id: containerId, nodeName },
} = useCurrentStateAndParams();
const containerQuery = useContainer(
{ environmentId, containerId, nodeName },
{
select: (c) => new ContainerDetailsViewModel(c),
}
);
if (!containerQuery.data || containerQuery.isLoading) {
return null;
}
const container = containerQuery.data;
const logsEnabled =
container.HostConfig?.LogConfig?.Type && // if a portion of the object path doesn't exist, logging is likely disabled
container.HostConfig.LogConfig.Type !== 'none'; // if type === none logging is disabled
if (!logsEnabled) {
return