Преобразовать тип CreationTimeStamp в строку - PullRequest
0 голосов
/ 05 февраля 2020

Я получаю время от pod.CreationTimeStamp и пытаюсь сохранить его в переменной. Как я могу сохранить время в строке.

 tmp := json_format{}
 pods, _ := clientset.CoreV1().Pods(namespace).List(v1.ListOptions{LabelSelector:app_name})

 for _, pod := range pods.Items {
     tmp.Creation_Time = append(tmp.Creation_Time,pod.CreationTimestamp) 
}

Это дает эту ошибку: cannot convert pod.ObjectMeta.CreationTimestamp (type "k8s.io/apimachinery/pkg/apis/meta/v1".Time) to type string

type json_format struct{
Creation_Time string
}

1 Ответ

1 голос
/ 05 февраля 2020

Для преобразования CreationTimestamp в строку вы можете использовать метод String().

Пример:

timeInString := pod.CreationTimestamp.String()

Ваш код:

tmp := json_format{}
 pods, _ := clientset.CoreV1().Pods(namespace).List(v1.ListOptions{LabelSelector:app_name})

 for _, pod := range pods.Items {
     tmp.Creation_Time = append(tmp.Creation_Time,pod.CreationTimestamp.String()) 
}

Еще одно исправление request:

Поле Creatio_Time должно быть слайсом (то есть строкой []), а не одной строкой.

type json_format struct{
Creation_Time []string
}
...