Update (Sep 2026): I had since improved the scripts by adding another one to also ping me if the AC charger was disconnected (useful to know if it accidentally fell off or lost connection to electricity, and nice confirmation if I deliberately removed it), and this month I upgraded the warning system to combine the two into a single LaunchAgent triggered script, which I have now pushed to a GitHub repo .
After picking up bits and pieces over the Internet, here I have the complete guide for my particular setup. My Amazon AWS Elastic Beanstalk (ELB or EBS) is as follows: 64bit Amazon Linux 2016.03 v2.1.1 running Tomcat 8 Java 8 Java/JSP application on Apache Tomcat Maven Build How to get it done: First, configure your EBS instance: Go to Configuration and click the gear on Load Balancing. Under Load Balancer, set the following options: Listener port: 80 Protocol: HTTP Secure listener port: 443 Protocol: HTTPS SSL certificate ID: Choose the cert ID that goes with your server. If you don't have one, you can use Certificate Manager to create one. Apply and save this configuration. Let the server health be OK. Test it by accessing your application web page through both HTTP and HTTPS: HTTP should load the page unsecurely. HTTPS should load the page securely. No port number should be added after the domain name in either case. Then, add a configuration file ...