Есть ли какой-нибудь отладчик для Google Ads-скриптов?

#google-sheets-api #google-ads-api #google-ads-script

#google-sheets-api #google-ads-api #google-ads-script

Вопрос:

Я пишу свой первый *.gs файл Google Ads-script.

Есть ли какая-либо среда IDE или среда, в которой я могу добавлять точки останова или просматривать состояние переменных?

Я видел только печать регистратора, но с этим неэффективно работать.

Я попробовал ответить @Andrew, но не справился:

введите описание изображения здесь

Ответ №1:

Вы можете поместить точки рядом с номерами строк, а затем щелкнуть по маленькому значку ошибки, как показано на этом изображении.

введите описание изображения здесь

Откроется этот экран отладки:

введите описание изображения здесь

Комментарии:

1. Я имел в виду google-ads-script, а не google-apps-script. Исправлены теги. Откуда вы это запускаете?

2. Ах, никогда не работал с Google Ads script, но это все равно может работать, поскольку они также являются файлами .gs. Я всегда запускаю это, открывая электронную таблицу Google и переходя в меню Дополнительно> Редактор сценариев. Но вы можете просто найти его по адресу script.google.com .

3. Также не забудьте нажать значок отладки, а не значок запуска (кнопка, которая выглядит как ошибка, а не кнопка воспроизведения)

Ответ №2:

вы можете использовать эту функцию.

Например: MyLogger («тест»);

 function MyLogger(s,d=true,w=800,h=400,t=5) {
  const cs=CacheService.getScriptCache();
  const cached=cs.get("Logger");
  const ts=Utilities.formatDate(new Date(), SpreadsheetApp.getActive().getSpreadsheetTimeZone(), "MM|dd|HH:mm:ss")
  if(cached) {
    var v=Utilities.formatString('%s<br />[%s] - %s',cached,ts,s);   
  }else{
    var v=Utilities.formatString('[%s] - %s',ts,s);
  }
  cs.put("Logger",v,t);
  //allows logging without displaying.
  if(d) {
    const a='<br /><input type="button" value="Exit" onClick="google.script.host.close();" />';
    const b='<br /><input type="button" value="Exit" onClick="google.script.host.close();" /><br />';
    SpreadsheetApp.getUi().showModelessDialog(HtmlService.createHtmlOutput(b v a).setWidth(w).setHeight(h), 'My Logger');
  }
}
  

(Для просмотра журналов откройте электронную таблицу с помощью вашего скрипта)

Комментарии:

1. не уверен, чего не хватает: добавлен ваш метод (см. Исходный текст сообщения).

2. Cannot call SpreadsheetApp.getUi() from this context.