Comments (5)
Hi @benjstern,
Good afternoon.
Thanks for posting guidance question. The Amazon.Extensions.Configuration.SystemsManager extends the Microsoft's configuration system by extending the interfaces such as IConfigurationBuilder interface. The AddSystemsManager adds the SystemsManagerConfigurationSource
(derived from IConfigurationSource
) to the IConfigurationBuilder
. When the configuration is built, the configuration source(s) are queried one by one to fetch the parameters from the configuration sources. With it SystemsManagerConfigurationSource
, it retrieves the parameters using GetParametersByPathAsync or GetParameterAsync. SystemsManagerProcessor. GetDataAsync() determines whether to get a particular parameter or get parameters by path.
For more details on how Microsoft's configuration system works, please refer Configuration in ASP.NET Core. This provides good overview of built in configuration providers and how custom configuration provider(s) work.
Hope this helps.
Thanks,
Ashish
from aws-dotnet-extensions-configuration.
Thank you @ashishdhingra ,
Correct me if I am wrong, but SystemsManagerProcessor.GetDataAsync() seems to indicate that if it's evaluated as a path contained in the AWS Secret Manager then it would query them one by one.
But even as an AWS Parameter Store value, there could be multiple queries with each internally calling AmazonSimpleSystemsManagementClient.GetParametersByPathAsync (GetParametersByPathRequest, CancellationToken) so if an exception is thrown no processing will occur even if there were multiple requests made due to the provided NextToken.
Though as far as I can tell there is no way of knowing what the default Max Results are, could be anything.
Is there any event we can latch onto at the beginning of the processing of the data?
from aws-dotnet-extensions-configuration.
Thank you @ashishdhingra ,
Correct me if I am wrong, but SystemsManagerProcessor.GetDataAsync() seems to indicate that if it's evaluated as a path contained in the AWS Secret Manager then it would query them one by one.
But even as an AWS Parameter Store value, there could be multiple queries with each internally calling AmazonSimpleSystemsManagementClient.GetParametersByPathAsync (GetParametersByPathRequest, CancellationToken) so if an exception is thrown no processing will occur even if there were multiple requests made due to the provided NextToken.
Though as far as I can tell there is no way of knowing what the default Max Results are, could be anything.
Is there any event we can latch onto at the beginning of the processing of the data?
@benjstern Yes you are correct. If the exception occurs, then as per
If you refer, the BeforeRequestEvent
is fired via assignment impl.BeforeRequestEvent += ServiceClientAppender.ServiceClientBeforeRequestEvent
. I'm not sure if you could latch on to event at the beginning of the request.
from aws-dotnet-extensions-configuration.
Thanks for your prompt replies and assistance, it is greatly appreciated.
from aws-dotnet-extensions-configuration.
⚠️ COMMENT VISIBILITY WARNING⚠️
Comments on closed issues are hard for our team to see.
If you need more assistance, please either tag a team member or open a new issue that references this one.
If you wish to keep having a conversation with other community members under this issue feel free to do so.
from aws-dotnet-extensions-configuration.
Related Issues (20)
- Configuring a Dictionary HOT 3
- AppConfigProcessor to expose LastConfigVersion as part of the GetDataAsync HOT 5
- ssm:GetParametersByPath permission is required HOT 2
- Unable to load params from AWS Param Store HOT 7
- "AddSystemsManager" method doesn't work with DI and .Net 6 HOT 6
- Missing documentation for loading Secret Manager secrets as SSM parameters HOT 3
- AddSystemsManager Takes 1+ Minutes to Complete HOT 3
- JsonParameterProcessor::ProcessParameters fails when different objects share property names HOT 4
- Loading AppConfig feature flags into strong-type options HOT 7
- Support for the AWS Lambda Extension HOT 4
- NotImplementedException - application/json; charset=utf-8 HOT 6
- AddSystemsManager with SecretsManager path resolves parameters with ':' prefix HOT 4
- Missing dependency AWSSDK.SecurityToken ? HOT 5
- Duplicate SSM parameter with different Case cause the whole SSM parameter fail to load HOT 10
- 5.1.1 breaks existing application using StringList HOT 6
- Config path expected: , Resource temporarily unavailable while running the app in EKS HOT 2
- SSO Credential Support - does not recognize SSO Tokens in AWS Credentials file HOT 7
- Config reload not occuring HOT 11
- Is there a dev mode that works with local config? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aws-dotnet-extensions-configuration.