Всем привет!
Есть функция (написана на Go) в AWS lambda. Пытаюсь выполнять HTTPS-запрос к ресурсу, сначала была ошибка "
TLS handshake timeout", указал кастомные настройки транспорта, при выполнении стало падать с ошибкой "
dial tcp ip:443: i/o timeout;", поднял таймаут для http клиента, теперь падает с ошибкой "
context deadline exceeded (Client.Timeout exceeded while awaiting headers);" и теперь я немного в замешательстве, непонятно, куда дальше копать.
HTTP-клиент инициализирую так:
t := &http.Transport{
Proxy: http.ProxyFromEnvironment,
TLSHandshakeTimeout: 10 * time.Second,
TLSClientConfig: &tls.Config{
CipherSuites: []uint16{tls.TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384},
},
}
client := http.Client{Transport: t, Timeout: time.Second * 10}
UPD
Функция не добавлена в VPC, в настройках лямбды установлен лимит памяти 128 MB, 20 секунд таймаута. Логи в Cloud watch такие:
2020-06-27T22:27:20.663+07:00 START RequestId: ae444070-b2bb-4651-9257-e67989c5bad3 Version: $LATEST
2020-06-27T22:27:20.663+07:00 Error: Post "https://api.dtf.ru/v1.8/entry/create": context deadline exceeded (Client.Timeout exceeded while awaiting headers);
END RequestId: ae444070-b2bb-4651-9257-e67989c5bad3
2020-06-27T22:27:20.665+07:00 REPORT RequestId: ae444070-b2bb-4651-9257-e67989c5bad3 Duration: 0.76 ms Billed Duration: 100 ms Memory Size: 128 MB Max Memory Used: 37 MB