Developer Experience: Demand to support engineering teams has risen, and there is a shift from traditional DevOps to workflow improvements.
The future of AI-driven development. Join the discussion around insights on low code's and AI's roles in building mission-critical apps.
Joined Jan 2020
Stats
Reputation: | 631 |
Pageviews: | 149.8K |
Articles: | 8 |
Comments: | 7 |
Comments
Dec 13, 2020 · Gaurav Dhimate
Thanks Eline
Dec 10, 2020 · Gaurav Dhimate
Thanks Akshata
May 08, 2020 · Mike Gates
Thanks for help,
This library was the best I can get for my requirements (it did complete my 90% of requirements).
Though with static method i was able to get job done but i had to have access details hardcoded in method which i feel is not that possible way.
So i was thinking about the intial suggestion which you gave me of using roles , but i am not sure how it works so if you can give me some reference URL it will be really helpful.
May 07, 2020 · Mike Gates
Thanks for the solution.
When I use static method without any parameters it worked but same when i tried to do with paraneters it is not working.
working : com.aws.AWSClient.createClient
not working : com.aws.AWSClient.createClient("us-east-1","access-key","secret-key")
I tried escaping double quotes with " but still it gives me below error.
2020-05-07 18:57:12,348 com-kdgregory-aws-logwriter-log4j2-cloudwatch-1 ERROR failed to create client via configured factory: com.aws.AWSClient.createClient("us-east-1","access-key","secret-key") java.lang.NoSuchMethodException:
May 07, 2020 · Mike Gates
I did write a custom appender wherenin I could use the credentails as below
com.amazonaws.services.logs.AWSLogsClientBuilder.standard().withRegion(Regions.fromName(awsRegion)).withCredentials(new AWSStaticCredentialsProvider(new BasicAWSCredentials(this.awsAccessKey, this.awsAccessSecret))).build();
but then i started struggling with dynamic value for logGroup which i am not able to handle in my code and which your code is able to do.
So now i want to have combination of both. so can you help ?
Also I got one issue while trying to use your library not sure why.
org.mule.runtime.deployment.model.api.DeploymentException: Failed to deploy artifact [test-appender]
Caused by: java.lang.NoClassDefFoundError: com/amazonaws/services/logs/model/InvalidSequenceTokenException
at com.kdgregory.logging.aws.cloudwatch.CloudWatchWriterFactory.newLogWriter(CloudWatchWriterFactory.java:34) ~[?:?]
at com.kdgregory.logging.aws.cloudwatch.CloudWatchWriterFactory.newLogWriter(CloudWatchWriterFactory.java:28) ~[?:?]
at com.kdgregory.log4j2.aws.internal.AbstractAppender.startWriter(AbstractAppender.java:301) ~[?:?]
at com.kdgregory.log4j2.aws.internal.AbstractAppender.start(AbstractAppender.java:193) ~[?:?]
at org.apache.logging.log4j.core.config.AbstractConfiguration.start(AbstractConfiguration.java:265) ~[log4j-core-2.11.0.jar:2.11.0]
at org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:547) ~[log4j-core-2.11.0.jar:2.11.0]
at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:619) ~[log4j-core-2.11.0.jar:2.11.0]
at org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:636) ~[log4j-core-2.11.0.jar:2.11.0]
at org.mule.runtime.module.launcher.log4j2.MuleLoggerContext.reconfigure(MuleLoggerContext.java:91) ~[mule-module-launcher-4.2.2.jar:4.2.2]
at org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:231) ~[log4j-core-2.11.0.jar:2.11.0]
at org.mule.runtime.module.launcher.log4j2.LoggerContextCache.getLoggerContext(LoggerContextCache.java:121) ~[mule-module-launcher-4.2.2.jar:4.2.2]
at org.mule.runtime.module.launcher.log4j2.ArtifactAwareContextSelector.getContextWithResolvedContextClassLoader(ArtifactAwareContextSelector.java:82) ~[mule-module-launcher-4.2.2.jar:4.2.2]
at org.mule.runtime.module.launcher.log4j2.DispatchingLogger.resolveLogger(DispatchingLogger.java:107) ~[mule-module-launcher-4.2.2.jar:4.2.2]
at org.mule.runtime.module.launcher.log4j2.DispatchingLogger.getLogger(DispatchingLogger.java:92) ~[mule-module-launcher-4.2.2.jar:4.2.2]
at org.mule.runtime.module.launcher.log4j2.DispatchingLogger.getLogger(DispatchingLogger.java:76) ~[mule-module-launcher-4.2.2.jar:4.2.2]
at org.mule.runtime.module.launcher.log4j2.DispatchingLogger.isEnabled(DispatchingLogger.java:194) [mule-module-launcher-4.2.2.jar:4.2.2]
at org.apache.logging.slf4j.Log4jLogger.isTraceEnabled(Log4jLogger.java:84) [log4j-slf4j-impl-2.11.0.jar:2.11.0]
at org.mule.runtime.module.artifact.api.classloader.FilteringArtifactClassLoader.logClassloadingTrace(FilteringArtifactClassLoader.java:167) ~[mule-module-artifact-4.2.2.jar:4.2.2]
at org.mule.runtime.module.artifact.api.classloader.FilteringArtifactClassLoader.getResources(FilteringArtifactClassLoader.java:137) ~[mule-module-artifact-4.2.2.jar:4.2.2]
at org.mule.runtime.module.artifact.api.classloader.FineGrainedControlClassLoader.getResources(FineGrainedControlClassLoader.java:159) ~[mule-module-artifact-4.2.2.jar:4.2.2]
at org.mule.runtime.module.artifact.api.classloader.FineGrainedControlClassLoader.getResources(FineGrainedControlClassLoader.java:159) ~[mule-module-artifact-4.2.2.jar:4.2.2]
at org.mule.runtime.module.artifact.api.classloader.FineGrainedControlClassLoader.getResources(FineGrainedControlClassLoader.java:159) ~[mule-module-artifact-4.2.2.jar:4.2.2]
at java.util.ServiceLoader$LazyIterator.hasNextService(ServiceLoader.java:348) ~[?:1.8.0_241]
at java.util.ServiceLoader$LazyIterator.hasNext(ServiceLoader.java:393) ~[?:1.8.0_241]
at java.util.ServiceLoader$1.hasNext(ServiceLoader.java:474) ~[?:1.8.0_241]
at org.mule.runtime.core.api.registry.SpiServiceRegistry.doLookupProviders(SpiServiceRegistry.java:26) ~[mule-core-4.2.2.jar:4.2.2]
at org.mule.runtime.core.api.registry.AbstractServiceRegistry.lookupProviders(AbstractServiceRegistry.java:34) ~[mule-core-4.2.2.jar:4.2.2]
at org.mule.runtime.core.api.registry.AbstractServiceRegistry.lookupProvider(AbstractServiceRegistry.java:53) ~[mule-core-4.2.2.jar:4.2.2]
at org.mule.runtime.deployment.model.api.artifact.ArtifactConfigurationProcessor.discover(ArtifactConfigurationProcessor.java:29) ~[mule-module-deployment-model-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.impl.internal.artifact.ArtifactContextBuilder.lambda$build$2(ArtifactContextBuilder.java:432) ~[mule-module-deployment-model-impl-4.2.2.jar:4.2.2]
at org.mule.runtime.core.api.util.ExceptionUtils.tryExpecting(ExceptionUtils.java:227) ~[mule-core-4.2.2.jar:4.2.2]
at org.mule.runtime.core.api.util.ClassUtils.withContextClassLoader(ClassUtils.java:915) ~[mule-core-4.2.2.jar:4.2.2]
at org.mule.runtime.core.api.util.ClassUtils.withContextClassLoader(ClassUtils.java:879) ~[mule-core-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.impl.internal.artifact.ArtifactContextBuilder.build(ArtifactContextBuilder.java:409) ~[mule-module-deployment-model-impl-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.impl.internal.application.DefaultMuleApplication.doInit(DefaultMuleApplication.java:239) ~[mule-module-deployment-model-impl-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.impl.internal.application.DefaultMuleApplication.init(DefaultMuleApplication.java:207) ~[mule-module-deployment-model-impl-4.2.2.jar:4.2.2]
at org.mule.runtime.core.api.util.ClassUtils.lambda$withContextClassLoader$9(ClassUtils.java:860) ~[mule-core-4.2.2.jar:4.2.2]
at org.mule.runtime.core.api.util.ExceptionUtils.tryExpecting(ExceptionUtils.java:227) ~[mule-core-4.2.2.jar:4.2.2]
at org.mule.runtime.core.api.util.ClassUtils.withContextClassLoader(ClassUtils.java:915) ~[mule-core-4.2.2.jar:4.2.2]
at org.mule.runtime.core.api.util.ClassUtils.withContextClassLoader(ClassUtils.java:879) ~[mule-core-4.2.2.jar:4.2.2]
at org.mule.runtime.core.api.util.ClassUtils.withContextClassLoader(ClassUtils.java:859) ~[mule-core-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.impl.internal.artifact.DeployableArtifactWrapper.executeWithinArtifactClassLoader(DeployableArtifactWrapper.java:140) ~[mule-module-deployment-model-impl-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.impl.internal.artifact.DeployableArtifactWrapper.init(DeployableArtifactWrapper.java:83) ~[mule-module-deployment-model-impl-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.internal.DefaultArtifactDeployer.doInit(DefaultArtifactDeployer.java:63) ~[mule-module-deployment-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.internal.DefaultArtifactDeployer.deploy(DefaultArtifactDeployer.java:28) ~[mule-module-deployment-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.internal.DefaultArchiveDeployer.deployArtifact(DefaultArchiveDeployer.java:448) [mule-module-deployment-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.internal.DefaultArchiveDeployer.internalDeployPackagedArtifact(DefaultArchiveDeployer.java:530) [mule-module-deployment-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.internal.DefaultArchiveDeployer.deployOrRedeployPackagedArtifact(DefaultArchiveDeployer.java:495) [mule-module-deployment-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.internal.DefaultArchiveDeployer.deployPackagedArtifact(DefaultArchiveDeployer.java:377) [mule-module-deployment-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.internal.DefaultArchiveDeployer.deployPackagedArtifact(DefaultArchiveDeployer.java:53) [mule-module-deployment-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.internal.DeploymentDirectoryWatcher.deployPackedApps(DeploymentDirectoryWatcher.java:241) [mule-module-deployment-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.internal.DeploymentDirectoryWatcher.run(DeploymentDirectoryWatcher.java:312) [mule-module-deployment-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.internal.DeploymentDirectoryWatcher.start(DeploymentDirectoryWatcher.java:153) [mule-module-deployment-4.2.2.jar:4.2.2]
at org.mule.runtime.module.deployment.internal.MuleDeploymentService.start(MuleDeploymentService.java:143) [mule-module-deployment-4.2.2.jar:4.2.2]
at org.mule.runtime.module.launcher.MuleContainer.start(MuleContainer.java:252) [mule-module-launcher-4.2.2.jar:4.2.2]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_241]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_241]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_241]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_241]
at org.mule.runtime.module.reboot.internal.MuleContainerWrapper.start(MuleContainerWrapper.java:49) [mule-module-boot-ee-4.2.2.jar:4.2.2]
at org.tanukisoftware.wrapper.WrapperManager$11.run(WrapperManager.java:4429) [wrapper-3.5.37.jar:3.5.37]
Caused by: org.mule.runtime.module.artifact.api.classloader.exception.CompositeClassNotFoundException: Cannot load class 'com.amazonaws.services.logs.model.InvalidSequenceTokenException': [
com.amazonaws.services.logs.model.InvalidSequenceTokenException,
Cannot load class 'com.amazonaws.services.logs.model.InvalidSequenceTokenException': [
May 07, 2020 · Mike Gates
Property files are well encrypted and kept so the security is not any issue.
So if still i want to use the property then there is no way to do it with this library?
May 07, 2020 · Mike Gates
Where AWS access key and secret keys goes?.I dont see any property where I can assgin that