Не могу понять, как форматировать значения для циклической распечатки - PullRequest
0 голосов
/ 15 июня 2019

Я пытаюсь изменить вывод подкоманды для плагина CLI, но изо всех сил пытаюсь заставить его работать правильно. В настоящее время он показывает ужасный печатный список; Я хочу отформатировать его в хорошую таблицу, которую легче читать. Без стола все работает нормально ... выглядит просто некрасиво. Добавление в таблицу разбивает его, говоря «.... используется как значение».

Я попытался объявить строку как строковый массив без удачи. Я что-то упустил и не уверен, что.

    for {
            select {
            case <-ticker.C:
                stats, _ := ccclient.AppStats(app.Metadata.GUID)
                table := ui.Table([]string{"Sample Time", "Instance ID", "CPU %", "Memory (MB)", "Disk (MB)", "Cell IP:port"})
                for key, value := range stats {
                    tickerObject := []string{time.Now().Format(time.RFC3339), key}
                    //ui.Say(fmt.Sprintf("%s, %s, %s, %s, %s, %s", time.Now().Format(time.RFC3339), key, fmt.Sprintf("%f", value.Stats.Usage.CPU), fmt.Sprintf("%f", (value.Stats.Usage.Mem/1024/1024)), fmt.Sprintf("%f", (value.Stats.Usage.Disk/1024/1024)), value.Stats.Host+":"+strconv.Itoa(value.Stats.Port)))}
                    table.Add(tickerObject)
                    table.Print()
                }
            case <-quit:
                ticker.Stop()
            }
        }

Я ожидаю отформатированный вывод, который выглядит чище, вместо этого я получаю -

cannot use tickerObject (type []string) as type string in argument to table.Add

Токовый выход (используя закомментированную строку ui.Say), не совпадает:

Сбор статистики по задачам приложений в космосе. Функции Dev Testing Ctrl-C, чтобы остановить сбор статистики

Время выборки, номер экземпляра,% процессора, память (МБ), диск (МБ), ip: порт ячейки 2019-06-14T23: 33: 42-05: 00, 0, 0,004659, 38,492188, 205,914062, 169.61.179.187:61440 2019-06-14T23: 33: 47-05: 00, 0, 0.004659, 38.492188, 205.914062, 169.61.179.187:61440 2019-06-14T23: 33: 52-05: 00, 0, 0.004659, 38,492188, 205,914062, 169,61,179,187:61440 2019-06-14T23: 33: 57-05: 00, 0, 0,006533, 38,492188, 205,914062, 169.61.179.187:61440

Я не думаю, проблема в таблице, я думаю, что мне просто не хватает чего-то смехотворно простого в том, как хранятся данные. Я думаю, что таблица может только отображать строку (или, по крайней мере, все примеры, которые я нашел в нашей внутренней документации, только строки вызова).

1 Ответ

0 голосов
/ 15 июня 2019

Решено с помощью tabWriter благодаря Питеру

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...