Daniel Mitchell

Daniel Mitchell

SignBSL Year in Review 2021

End of a year, so time for a quick analysis of the year. SignBSL has been running since 2013 and has experienced growth every year. This year 23,433,479 searches were completed, an increase of just over 16% from last year. It is always fascinating to see what people search for. I have included the top 50 searches below. Search Query No.

Request does not contain domain name information but is derived from APIGatewayProxyFunction

Ingesting CloudWatch logs cost money ($0.57 per GB log data ingested), so removing log lines that are not useful will save you money. In my C# API project the logs are filled with this Warning: [Warning] Amazon.Lambda.AspNetCoreServer.AbstractAspNetCoreFunction: Request does not contain domain name information but is derived from APIGatewayProxyFunction. This warning comes from the code found in Amazon.Lambda.

Identify and monitor missing AWS S3 files using Athena

Like many websites and mobile apps, www.signbsl.com hosts its static media files using S3, which provides a reliable service without managing servers. The bucket currently holds more than 126,000 images and videos. On a self hosted solution to find missing files I would usually use the Apache Access Logs. But with S3 you need to use Server access logging to

Calling dotnet core Lambda API direct from PHP

Usually a API Gateway is placed in front of a Lambda to allow HTTP requests to be forwarded to a Lambda function. However even when using the HTTP API this still costs $1 per million invocations. To save costs I have setup the PHP website to call the Lambda function direct. Here is how to call the Lambda function and pass the request

SignBSL

A personal project of mine started in 2013 when my wife and I started learning sign language. An important part of learning any new language is building vocabulary. At the time there was just a handful of sites that provided a video dictionary, but the number of signs they contained was small meaning it often required searches across multiple sites, as each site