index.js 906 B

123456789101112131415161718192021222324
  1. import { VERSION } from "./version";
  2. /**
  3. * @param octokit Octokit instance
  4. * @param options Options passed to Octokit constructor
  5. */
  6. export function requestLog(octokit) {
  7. octokit.hook.wrap("request", (request, options) => {
  8. octokit.log.debug("request", options);
  9. const start = Date.now();
  10. const requestOptions = octokit.request.endpoint.parse(options);
  11. const path = requestOptions.url.replace(options.baseUrl, "");
  12. return request(options)
  13. .then(response => {
  14. octokit.log.info(`${requestOptions.method} ${path} - ${response.status} in ${Date.now() - start}ms`);
  15. return response;
  16. })
  17. .catch(error => {
  18. octokit.log.info(`${requestOptions.method} ${path} - ${error.status} in ${Date.now() -
  19. start}ms`);
  20. throw error;
  21. });
  22. });
  23. }
  24. requestLog.VERSION = VERSION;