Поиск bigquery для messageid из моей учетной записи Gmail - PullRequest
1 голос
/ 23 марта 2020

Я хочу найти в журнале больших запросов gmail конкретное сообщение из моей учетной записи электронной почты.

function myFunction() {
  // Get the first message in the first thread of your inbox
  var message = GmailApp.getInboxThreads(0, 1)[0].getMessages()[0];
  // Get its ID
  var messageId = message.getId();
  // Now fetch the same message using that ID.
  var messageById = GmailApp.getMessageById(messageId);
  // Should always log true as they should be the same message
  var messageIdRFC2822 = message.getHeader("Message-ID");
  // Get RFC 2822 message ID
  var subject = message.getSubject();
  Logger.log(subject);
  Logger.log(messageIdRFC2822);

  // input RFC2822 message id and subject to query BigQuery
  var projectId = 'gmail-gsuite-logs';
  var request = {
    query: 'SELECT message_info.subject, message_info.rfc2822_message_id, message_info.connection_info.spf_pass, m.name as domain, message_info.connection_info.is_internal FROM `gmail-gsuite-logs.gmail_logs_dataset.daily_20200304`, UNNEST(message_info.connection_info.authenticated_domain) as m WHERE message_info.rfc2822_message_id=messageIdRFC2822 LIMIT 10;',
    useLegacySql: false
  }
  var jobResult = BigQuery.Jobs.query(request, "gmail-gsuite-logs");
  var jobId = jobResult.jobReference.jobId;
  Logger.log(jobId);
}

Как видно из приведенного выше кода, я получаю сообщение об ошибке для следующей части запроса. Есть ли способ сделать эту работу? Короче говоря, я хочу запросить bigquery для указанного c messageID. "message_info.rfc2822_message_id = messageIdRFC2822"

Ошибка, которую я получаю: GoogleJsonResponseException: API-вызов bigquery.jobs.query завершился ошибкой: нераспознанное имя: messageIdRFC2822

1 Ответ

2 голосов
/ 23 марта 2020

Предложение WHERE в вашем запросе должно выглядеть следующим образом:

WHERE message_info.rfc2822_message_id="<messageIdRFC2822>"   

с <messageIdRFC2822> для замены действительным значением messageIdRFC2822, которое вы вычислили в своем коде

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