aws / apprunner-roadmap

This is the public roadmap for AWS App Runner.
https://aws.amazon.com/apprunner/
Other
298 stars 14 forks source link

Provide service and instance metadata at runtime via environment variables #202

Open nebbles opened 1 year ago

nebbles commented 1 year ago

Community Note

Tell us about your request What do you want us to build?

It would be incredibly useful for an instance to identify basic metadata about itself, i.e. the service name, ID, and instance ID.

Most importantly, the instance ID gives the instance a means to identify itself uniquely alongside other instances when connecting to a 3rd party service.

In my use case, this would be connecting to AWS IoT Core MQTT Broker with a unique client ID that is easily correlated to a running instance.

In Heroku, there are a number of metadata environment variables that are available to 'dynos' (instances) to help it identify itself. See https://devcenter.heroku.com/articles/dyno-metadata#dyno-metadata

These environment variables are also useful for logging purposes, as well as identifying when the code is being run in a hosted environment.

Describe alternatives you've considered

I'm still trying to come up with alternatives to the techniques we've used with Heroku environment variables, in hopes that we can migrate to App Runner.

Additional context Anything else we should know?

Attachments If you think you might have additional information that you'd like to include via an attachment, please do - we'll take a look. (Remember to remove any personally-identifiable information.)

TuureKaunisto commented 1 year ago

You can add environment variables in the Service settings > Environment variables > Add environment variable. However, there are a couple of caveats:

nebbles commented 1 year ago

Thanks for both of these links as they are useful links - however I what I mean by my description is having metadata about the instance provided by App Runner through environment variables, like Heroku does: https://devcenter.heroku.com/articles/dyno-metadata#dyno-metadata