|
@@ -163,39 +163,42 @@ export default class Logs extends Component<PropsType, StateType> {
|
|
|
|
|
|
|
|
componentDidMount() {
|
|
componentDidMount() {
|
|
|
let { selectedPod } = this.props;
|
|
let { selectedPod } = this.props;
|
|
|
- let status = this.getPodStatus(selectedPod?.status)
|
|
|
|
|
|
|
+ let status = this.getPodStatus(selectedPod?.status);
|
|
|
if (status == "failed" || status == "pending" || status == "waiting") {
|
|
if (status == "failed" || status == "pending" || status == "waiting") {
|
|
|
api
|
|
api
|
|
|
- .getPodEvents(
|
|
|
|
|
- "<token>",
|
|
|
|
|
- {
|
|
|
|
|
- cluster_id: this.context.currentCluster.id,
|
|
|
|
|
- },
|
|
|
|
|
- {
|
|
|
|
|
- name: selectedPod?.metadata?.name,
|
|
|
|
|
- namespace: selectedPod?.metadata?.namespace,
|
|
|
|
|
- id: this.context.currentProject.id,
|
|
|
|
|
- }
|
|
|
|
|
- )
|
|
|
|
|
- .then((res) => {
|
|
|
|
|
- let logs = [] as Anser.AnserJsonEntry[][]
|
|
|
|
|
- // TODO: column view
|
|
|
|
|
- // logs.push(Anser.ansiToJson("\u001b[33;5;196mEvent Type\u001b[0m \t || \t \u001b[43m\u001b[34m\tReason\t\u001b[0m \t ||\tMessage"))
|
|
|
|
|
-
|
|
|
|
|
- res.data.items.forEach((evt: any) => {
|
|
|
|
|
- let ansiEvtType = evt.type == "Warning" ? "\u001b[31m" : "\u001b[32m"
|
|
|
|
|
- let ansiLog = Anser.ansiToJson(`${ansiEvtType}${evt.type}\u001b[0m \t \u001b[43m\u001b[34m\t${evt.reason} \u001b[0m \t ${evt.message}`);
|
|
|
|
|
- logs.push(ansiLog)
|
|
|
|
|
|
|
+ .getPodEvents(
|
|
|
|
|
+ "<token>",
|
|
|
|
|
+ {
|
|
|
|
|
+ cluster_id: this.context.currentCluster.id,
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ name: selectedPod?.metadata?.name,
|
|
|
|
|
+ namespace: selectedPod?.metadata?.namespace,
|
|
|
|
|
+ id: this.context.currentProject.id,
|
|
|
|
|
+ }
|
|
|
|
|
+ )
|
|
|
|
|
+ .then((res) => {
|
|
|
|
|
+ let logs = [] as Anser.AnserJsonEntry[][];
|
|
|
|
|
+ // TODO: column view
|
|
|
|
|
+ // logs.push(Anser.ansiToJson("\u001b[33;5;196mEvent Type\u001b[0m \t || \t \u001b[43m\u001b[34m\tReason\t\u001b[0m \t ||\tMessage"))
|
|
|
|
|
+
|
|
|
|
|
+ res.data.items.forEach((evt: any) => {
|
|
|
|
|
+ let ansiEvtType =
|
|
|
|
|
+ evt.type == "Warning" ? "\u001b[31m" : "\u001b[32m";
|
|
|
|
|
+ let ansiLog = Anser.ansiToJson(
|
|
|
|
|
+ `${ansiEvtType}${evt.type}\u001b[0m \t \u001b[43m\u001b[34m\t${evt.reason} \u001b[0m \t ${evt.message}`
|
|
|
|
|
+ );
|
|
|
|
|
+ logs.push(ansiLog);
|
|
|
|
|
+ });
|
|
|
|
|
+ this.setState({ logs: logs });
|
|
|
|
|
+ console.log(res);
|
|
|
})
|
|
})
|
|
|
- this.setState({logs: logs})
|
|
|
|
|
- console.log(res)
|
|
|
|
|
- })
|
|
|
|
|
- .catch((err) => {
|
|
|
|
|
- console.log(err)
|
|
|
|
|
- });
|
|
|
|
|
|
|
+ .catch((err) => {
|
|
|
|
|
+ console.log(err);
|
|
|
|
|
+ });
|
|
|
return;
|
|
return;
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
this.setupWebsocket();
|
|
this.setupWebsocket();
|
|
|
this.scrollToBottom(false);
|
|
this.scrollToBottom(false);
|
|
|
}
|
|
}
|