Question: ResourceConflictException: … An update is in progress for resource: …

"After deploying (update) a Lambda for about 150 times in an automated way using CI, this suddenly fails since in eu-west-1 since 2021-09-14 ~16:17 CET.ResourceConflictException: The operation cannot be performed at this time. An update is in progress for resource: arn:aws:lambda:eu-west-1:NNNNNNNN:function:XXXXXXXX  The last successful deploy was 2021-09-14 ~16:17 CET.The 2 last successful deploys now fail too, with the same error.Details are described and followed-up in [claudia/issues/226](https://github.com/claudiajs/claudia/issues/226).The closest issue comparable to what I see is [Terraform aws_lambda_function ResourceConflictException due to a concurrent update operation #5154](https://github.com/hashicorp/terraform-provider-aws/issues/5154#issuecomment-423912491), where it says, in 2018,OK, I've figured out what's happening here based on a comment here: AWS has some sort of limit on how many concurrentmodifications you can make to a Lambda function.I am pretty sure now that something changed on the side of AWS, either in general, in for this instance.Does anybody have any clue? Did something change? How can this be mitigated?FollowComment"

Answer: "0This could be related to https://forums.aws.amazon.com/thread.jspa?messageID=949152&#949152CommentSharejandecaanswered 2 years ago0I'm having this same problem. It started yesterday and it only happens with one lambda function. Other lambda functions are deployed just fine.I also noticed that the ci/cd tool is using an old version of the AWS SDK (1.11.834), and if I deploy the code using AWS CLI (2.2.37) it works. Could this be related?Edited by: raulbarreto-delivion on Sep 16, 2021 7:11 AMCommentShareraulbarreto-delivionanswered 2 years ago0AWS are rolling out this changehttps://aws.amazon.com/blogs/compute/coming-soon-expansion-of-aws-lambda-states-to-all-functions/You need to put a check for the function state in between the update_function_code and the publish version callsMake sure the state is active before proceedinghttps://docs.aws.amazon.com/lambda/latest/dg/functions-states.htmlCommentShareStuartanswered 2 years ago"


Question: Does S3 Object Replication trigger ObjectCreated event?

"Does S3 trigger ObjectCreated event on destination buckets after replication is succeeded?Checked the event notification documentation and quickly skimmed through the replication documentation but I found nothing explicitly statedSaw this question with a similar inquiry which suggests that it does, but I want to be sureFollowComment"

Answer: "1Accepted AnswerYes there will be an ObjectCreated:Put event generated.  Here is an example of the event created from the destination bucket when an object is replicated to it:{  "Records": [    {      "eventVersion": "2.1",      "eventSource": "aws:s3",      "awsRegion": "us-east-1",      "eventTime": "2022-10-26T14:07:48.018Z",      "eventName": "ObjectCreated:Put",      "userIdentity": {        "principalId": "AWS:xxxxxxxxxxxxxxxxxxx:xxxxxxxxxxxxxxxx"      },      "requestParameters": {        "sourceIPAddress": "x.x.x.x"      },      "responseElements": {        "x-amz-request-id": "xxxxxxxxxxxxxxxxxx",        "x-amz-id-2": "xxxxxxxxxxxxxxxxxxxxxxxxxx"      },      "s3": {        "s3SchemaVersion": "1.0",        "configurationId": "test",        "bucket": {          "name": "dstBucket",          "ownerIdentity": {            "principalId": "xxxxxxxxxxxxxx"          },          "arn": "arn:aws:s3:::dstBucket"        },        "object": {          "key": "FILE.JPG",          "size": 79896,          "eTag": "xxxxxxxxxxxxxxxxxxxx",          "versionId": "xxxxxxxxxxxxxxxxx",          "sequencer": "xxxxxxxxxxxxxxxxx"        }      }    }  ]}CommentShareEXPERTMatt-Banswered 7 months agorePost-User-1267709 7 months agoThank you!Share"


Question: How to delete Lightsail disk after detaching it

"I no longer need one of my two attached lightsail storage disks.  I looked here (https://lightsail.aws.amazon.com/ls/docs/en_us/articles/detach-and-delete-block-storage-disks) and read that I should detach the lightsail disk prior to deleting it. I also read that I will continue to be charged for the disk after detaching it until I delete it.I detached the disk, but now it has disappeared from my console, and I see no way to "delete" it. Does my disk still need to be "deleted", and if so, how do I do that?FollowComment"

Answer: "1If you have detached a Lightsail storage disk, it will continue to be charged until you delete it, even if it has disappeared from your console. To delete a detached storage disk in Lightsail, you can follow these steps:Log in to the Lightsail console.Click on the "Storage" tab.Click on the "Detached" tab to view all your detached storage disks.Select the storage disk you want to delete.Click on the "Actions" button and select "Delete" from the drop-down menu.Confirm that you want to delete the storage disk by clicking "Delete" in the confirmation window.Once you delete the detached storage disk, you will no longer be charged for it. Keep in mind that all data on the disk will be permanently deleted and cannot be recovered, so make sure you have backed up any important data before deleting the disk.CommentShareAWS_Guyanswered 3 months agonlk 3 months agoThanks AWS Guy. This worked. Yesterday, the detached disk was not showing up when I clicked on Storage. Today, the detached disk was there, and I was able to delete it.Share"


Question: Alarm not getting triggered even if the metric crosses threshold

"Hi,I have configured a cloudwatch alarm based on an expression which involves 2 metrics.Expression = m2 - m1, where,m2: AWS/AutoScaling - GroupInServiceInstancesm1: ECS/ContainerInsights - TaskCountAlarm Config : Expression <= 5 for 1 datapoints within 1 minuteMissing data case is considered as threshold breach.The problem is that the alarm is not getting triggered as per the expectation. After the expression breaches the threshold(5), as per the alarm config mentioned above, it should trigger after a minute(1 datapoints within 1 minute) but the alarm gets triggered after a certain(inconsistent) amount of time which is causing the actions(autoscaling) associated to the alarm to be delayed. The delay ranges from 2 - 15 minutes.Please refer to this link for a screenshot.The blue line in the first graph denotes the expression value and red line the threshold. As can be seen, the expression crosses the threshold at 7:23 but the alarm gets triggered at 7:40. The In Alarm state(red bar) in the second chart is triggered after 17 minutes then it should have.Any help is really appreciated.FollowComment"

Answer: "1From the screenshot actually it looks like alarm is breached when your expression is greater than threshold, not lower.CommentShareA-Shevchenkoanswered a year agoDhruv Baveja a year agoI know but the expression is opposite. Here is a screenshot(https://ibb.co/Lnh0NfM) with the expression.Share1Hi Dhruv,Given the Alarm configuration and the screenshot that you have provided, they are not quite aligning with each other.What I can suggest is to look at the Alarm History, and check that particular StateUpdate happened at 7:40 as you mentioned to understand the reason of the triggering which could enlighten us why the alarm triggered. From the History of StateUpdate look for section starting with below for example:..."newState": {      "stateValue": "ALARM",      "stateReason": "Threshold Crossed: 1 out of the last 1 datapoints [42.7118644067809 (21/01/22 13:00:00)] was greater than or equal to the threshold (40.0) (minimum 1 datapoint for OK -> ALARM transition).",...This section will give you explanation on how the Alarm got triggered, and by what reason. The reason data also can provide you confirmation of the Alarm configuration of the threshold and the comparison operator.Further down information within stateReasonData like  recentDatapoints, threshold, and evaluatedDatapoints sections will provide further details into the StateUpdate.Hope this helps to further troubleshoot your Alarm configuration and the state updates regarding ALARM state.CommentShareSUPPORT ENGINEERMunkhbat_Tanswered a year agoDhruv Baveja a year agoHi Munkhbat_T,Thanks for the detailed response.I am adding more details below from the history section. This is for a different timeframe(24/01/2022) as compared to the 1 mentioned in the original question.Here is the screenshot for alarm and metric value: https://ibb.co/s6RjBTH. As can be seen here, the alarm triggered at 4:12 when it was supposed to trigger at 3:49.Here is a screenshot from the history section: https://ibb.co/6gyjkgR for the same duration(bottom rows).Here is a screenshot of the state change data for the alarm triggering at 4:12 : https://ibb.co/7vLgPQR .Share"


Question: S3 Bucket for Tape Gateway??

"HelloThe tape gateway stores the data in S3, How can I see metrics for the S3 Bucket itself? You never specify which bucket to use when you create the VTL and tapesIn Cloudwatch I can see bytes uploaded, but I would like to know how much data is in the actual bucket, and how many request that has been made.I need to compare backups using the VTL vs using object storageFollowComment"

Answer: "0The tape gateway stores data in S3 bucket owned by AWS Storage Gateway, so customer doesn't have access to the metrics for S3 bucket. Please note that the cost structure is different between File Gateway and Tape Gateway.Please refer to the following page.https://aws.amazon.com/storagegateway/pricing/CommentShareShashi-AWSanswered 4 years ago"


Question: Change EFS storage classes availability from Regional to One zone

"How do I change my provisioned (in use) EFS storage class from a multi zone "Regional" setup to a "One zone" setup.(I did not find a clear option to do this on the EFS management console, or any documentation)FollowComment"

Answer: "2Accepted AnswerHello nadavkav,this setting cannot be changed after creation:https://docs.aws.amazon.com/cli/latest/reference/efs/update-file-system.htmlin the aws cli there isn't this optionThanksJoelCommentShareJoelanswered a year agonadavkav a year agoThank you Joel.So my workaround is:I have created a new EFS FS with "One zone" storage class, and I am syncing my data to this new storage.When the sync process is done, I will switch between them and delete the old one.Share"


Question: Sagemaker GPU Instance quota limits

"Hi Team,Writing to you regrading the exception received in instantiating the ml.g4d.xlarge instance which required for one of usecase, I am currently has 12 months free service aws account , when I tried to launch to notebook instance it throws following error."ResourceLimitExceededThe account-level service limit 'ml.g5.xlarge for notebook instance usage' is 0 Instances, with current utilization of 0 Instances and a request delta of 1 Instances. Please use AWS Service Quotas to request an increase for this quota. If AWS Service Quotas is not available, contact AWS support to request an increase for this quota."But I am able to launch c5,t2 instances successfully, can someone help me out how to get access to this and update limitations.FollowComment"

Answer: "1Hello. The quota is different for different instance type. You can raise an increase of the quota for Notebook instance ml.g4dn.xlarge or ml.g5.xlarge via Service Quotas.Upon logging in the AWS Console, you can go here https://us-east-1.console.aws.amazon.com/servicequotas/home/services. Make sure you choose the right region (the above link defaults to N. Virginia region). Then type in "SageMaker" on the "AWS services" search bar on that page and click the only "Amazon SageMaker" in the result. Then find "ml.g5.xlarge for notebook instance usage" and "ml.g4dn.xlarge for notebook instance usage" categories. For each, when you click, it will show "Request quota increase" button. Click that button and start the process of requesting limit increase for those instances.CommentShareYudho Ahmad Diponegoroanswered 13 days ago"


Question: Testing Greengrass Components Before Deployment with IPC

"I would like to be able to perform local testing of my greengrass components before deployment. The issue is that my components normally use Greengrass IPC, meaning that I cannot perform local testing, as IPC messages cannot be sent/received as the local component test won't be happening in Greengrass.Is there a way to get around this ? Is there a method to mimic/test Greengrass IPC calls in a program, outside of a Greengrass deployment ?FollowComment"

Answer: "0Hi. If you get your component into a unit test harness, you could mock the IPC calls and achieve a lot of automated test coverage. A very small example of IPC mocking:Code under test: https://github.com/awslabs/aws-greengrass-labs-component-for-home-assistant/blob/main/artifacts/secret.pyTests: https://github.com/awslabs/aws-greengrass-labs-component-for-home-assistant/blob/main/tests/test_artifacts_secret.pyIf you are prepared to deploy the component locally (on your developer machine) to a Greengrass instance, you could also achieve integration testing of the component (assuming the component doesn't have dependencies on hardware that is not available on your developer machine). You could:Use the Greengrass CLI to deploy your component locally (quickly, easily and repeatedly while developing).Configure your local Greengrass to interact with local client devices by deploying the MQTT broker (Moquette), MQTT bridge, Client device auth and IP detector components.Configure the MQTT bridge topic mapping to relay the appropriate topics from Moquette (LocalMqtt) to PubSub and PubSub to Moquette (LocalMqtt). This blog is also helpful.Use an MQTT client of your choice (such as mosquitto_pub and mosquitto_sub) to connect to Moquette as a client device, and do pubsub with your component via the MQTT bridge.You could automate integration testing by getting this into a test framework like Cucumber. And go further by getting this all into a CI/CD pipeline.CommentShareEXPERTGreg_Banswered a year ago"


Question: adjusting sagemaker xgboost project to tensorflow (or even just different folder name)

"I have sagemaker xgboost project template "build, train, deploy" working, but I'd like to modify if to use tensorflow instead of xgboost.  First up I was just trying to change the abalone folder to topic to reflect the data we are working with.I was experimenting with trying to change the topic/pipeline.py file like so    image_uri = sagemaker.image_uris.retrieve(        framework="tensorflow",        region=region,        version="1.0-1",        py_version="py3",        instance_type=training_instance_type,    )i.e. just changing the framework name from "xgboost" to "tensorflow", but then when I run the following from a notebook:from pipelines.topic.pipeline import get_pipelinepipeline = get_pipeline(    region=region,    role=role,    default_bucket=default_bucket,    model_package_group_name=model_package_group_name,    pipeline_name=pipeline_name,)I get the following errorValueError                                Traceback (most recent call last)<ipython-input-5-6343f00c3471> in <module>      7     default_bucket=default_bucket,      8     model_package_group_name=model_package_group_name,----> 9     pipeline_name=pipeline_name,     10 )~/topic-models-no-monitoring-p-rboparx6tdeg/sagemaker-topic-models-no-monitoring-p-rboparx6tdeg-modelbuild/pipelines/topic/pipeline.py in get_pipeline(region, sagemaker_project_arn, role, default_bucket, model_package_group_name, pipeline_name, base_job_prefix, processing_instance_type, training_instance_type)    188         version="1.0-1",    189         py_version="py3",--> 190         instance_type=training_instance_type,    191     )    192     tf_train = Estimator(/opt/conda/lib/python3.7/site-packages/sagemaker/workflow/utilities.py in wrapper(*args, **kwargs)    197                 logger.warning(warning_msg_template, arg_name, func_name, type(value))    198                 kwargs[arg_name] = value.default_value--> 199         return func(*args, **kwargs)    200     201     return wrapper/opt/conda/lib/python3.7/site-packages/sagemaker/image_uris.py in retrieve(framework, region, version, py_version, instance_type, accelerator_type, image_scope, container_version, distribution, base_framework_version, training_compiler_config, model_id, model_version, tolerate_vulnerable_model, tolerate_deprecated_model, sdk_version, inference_tool, serverless_inference_config)    152             if inference_tool == "neuron":    153                 _framework = f"{framework}-{inference_tool}"--> 154         config = _config_for_framework_and_scope(_framework, image_scope, accelerator_type)    155     156     original_version = version/opt/conda/lib/python3.7/site-packages/sagemaker/image_uris.py in _config_for_framework_and_scope(framework, image_scope, accelerator_type)    277         image_scope = available_scopes[0]    278 --> 279     _validate_arg(image_scope, available_scopes, "image scope")    280     return config if "scope" in config else config[image_scope]    281 /opt/conda/lib/python3.7/site-packages/sagemaker/image_uris.py in _validate_arg(arg, available_options, arg_name)    443             "Unsupported {arg_name}: {arg}. You may need to upgrade your SDK version "    444             "(pip install -U sagemaker) for newer {arg_name}s. Supported {arg_name}(s): "--> 445             "{options}.".format(arg_name=arg_name, arg=arg, options=", ".join(available_options))    446         )    447 ValueError: Unsupported image scope: None. You may need to upgrade your SDK version (pip install -U sagemaker) for newer image scopes. Supported image scope(s): eia, inference, training.I was skeptical that the upgrade suggested by the error message would fix this, but gave it a try:ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.pipelines 0.0.1 requires sagemaker==2.93.0, but you have sagemaker 2.110.0 which is incompatible.So that seems like I can't upgrade sagemaker without changing pipelines, and it's not clear that's the right thing to do - like this project template may be all designed around those particular ealier libraries.But so is it that the "framework" name should be different, e.g. "tf"?  Or is there some other setting that needs changing in order to allow me to get a tensorflow pipeline ...?However I find that if I use the existing abalone/pipeline.py file I can change the framework to "tensorflow" and there's no problem running that particular step in the notebook.I've searched all the files in the project to try and find any dependency on the abalone folder name, and the closest I came was in codebuild-buildspec.yml but that hasn't helped.Has anyone else successfully changed the folder name from abalone to something else, or am I stuck with abalone if I want to make progress?Many thanks in advancep.s. is there a slack community for sagemaker studio anywhere?p.p.s. I have tried changing all instances of the term "Abalone" to "Topic" within the topic/pipeline.py file (matching case as appropriate) to no availp.p.p.s. I discovered that I can get an error free run of getting the pipeline from a unit test:import pytestfrom pipelines.topic.pipeline import *region = 'eu-west-1'role = 'arn:aws:iam::398371982844:role/SageMakerExecutionRole'default_bucket = 'sagemaker-eu-west-1-398371982844'model_package_group_name = 'TopicModelPackageGroup-Example'pipeline_name = 'TopicPipeline-Example'def test_pipeline():    pipeline = get_pipeline(        region=region,        role=role,        default_bucket=default_bucket,        model_package_group_name=model_package_group_name,        pipeline_name=pipeline_name,    )and strangely if I go to a different copy of the notebook, everything runs fine, there ... so I have two seemingly identical ipynb notebooks, and in one of them when I switch to trying to get a topic pipeline I get the above error, and in the other, I get no error at all, very strangep.p.p.p.s.  I also notice that conda list returns very different results depending on whether I run it in the notebook or the terminal ... but the conda list results are identical for the two notebooks ...FollowComment"

Answer: "1Accepted AnswerHi! I see two parts in your question:How to use Tensorflow in a SageMaker estimator to train and deploy a modelHow to adapt a SageMaker MLOps template to your data and codeTensorflow estimator is slightly different from XGBoost estimator, and the easiest way to work with it is not by using sagemaker.image_uris.retrieve(framework="tensorflow",...), but to use sagemaker.tensorflow.TensorFlow estimator instead.These are the two examples, which will be useful for you:Train an MNIST model with TensorFlowDeploy a Trained TensorFlow V2 ModelAs for updating the MLOps template, I recommend you to go through the comprehensive self-service lab on SageMaker Pipelines.It shows you how to update the source directory from abalone to customer_churn. In your case it will be the topic.P. S. As for a Slack channel, to my best knowledge, this re:Post forum now is the best place to ask any questions on Amazon SageMaker, including SageMaker Studio.CommentShareIvananswered 8 months agoregulatansaku 8 months agothanks Ivan for also taking a look at this question - very helpful indeed.  That "self-service lab on Sagemaker Pipelines" is exactly what I was looking for, although it doesn't mention the error message that I encountered above, and now for some reason am encountering again in the one notebook that worked yesterday - intermittent errors are of course the most frustrating :-(I will work through that lab from scratch after lunch, but I feel that I am missing something conceptual about the process by which a sagemaker studio project gets deployed.  Like that lab mentions pushing code the repo as a way to kick off a build, while the notebook itself seems to imply that one can kick of a deploy from the notebook itself.Is the problem perhaps that when I'm operating from within the notebook that it's only using the code that happens to be on the latest main branch? current feature branch?and why doesn't python setup.py build get the requirements in the right place for the pipeline?  Maybe it will be doing that if I just commit the code to the right branch?I'll work through the lab in a fresh project after lunch and see where I get to ...ShareIvan 8 months agoHi, @regulatansaku.See my comment below.Like that lab mentions pushing code the repo as a way to kick off a build, while the notebook itself seems to imply that one can kick of a deploy from the notebook itself.These are just two ways of doing the same thing. From the notebook you can try the SageMaker pipeline it in "dev" mode. When you commit the code, it will trigger a CI/CD pipeline in AWS CodePipeline, which will run the same pipeline in the automated "ops" mode, without a need to have any notebooks up and running.For the requirements problem, I tried to answer in your other post.Shareregulatansaku 8 months agothanks @ivan - that's makes sense.  Just for some reason I get these random intermittent errors in the notebook trying to get the pipeline, the: ValueError: Unsupported image scope: None. You may need to upgrade your SDK version (pip install -U sagemaker) for newer image scopes. Supported image scope(s): eia, inference, training.But so the workaround to avoid that issue appears to be to prefer to push the code to the main branch.  It's great to have a way to avoid that craziness so big thanks for thatShareIvan 8 months agoHi, @regulatansaku.I'm glad that you've resolved your issue. As for the error about "Unsupported image scope" - check your code that you accidentally don't have sagemaker.image_uris.retrieve left anywhere. If you want to retrieve the TensorFlow image with this API, you need to specify either "training" or "inference" as a scope, because these two are slightly different images. But as I said before, you don't need to do that if you use the TensorFlow estimator, and not a generic Estimator.Share"


Question: Failed to create App Runner Service due to exceeding service quota of zero

"I am trying to create an App Runner service using container image from ECR from AWS Console. When I submit my service creation request, I receive the following error, saying it's exceeding my service quota which is zeroI captured the network traffic via Chrome inspector and below are the request and responserequest:{"HealthCheckConfiguration":{"HealthyThreshold":1,"Interval":10,"Protocol":"TCP","Timeout":5,"UnhealthyThreshold":5},"InstanceConfiguration":{"Cpu":"1024","Memory":"2048"},"NetworkConfiguration":{"EgressConfiguration":{"EgressType":"DEFAULT"},"IngressConfiguration":{"IsPubliclyAccessible":true}},"ObservabilityConfiguration":{"ObservabilityEnabled":false},"ServiceName":"my-app-name","SourceConfiguration":{"AutoDeploymentsEnabled":false,"ImageRepository":{"ImageConfiguration":{"Port":"8080"},"ImageIdentifier":"my-account-id.dkr.ecr.us-west-2.amazonaws.com/my-ecr-registry:latest","ImageRepositoryType":"ECR"},"AuthenticationConfiguration":{"AccessRoleArn":"arn:aws:iam::my-account-id:role/service-role/MyIAMRoleName"}}}response:{"__type":"com.amazonaws.apprunner#ServiceQuotaExceededException","Message":"Exceeded service quota for customer my-account-id : 0."}I checked the service quota limit for all services involved in this request and none of them is zero.FollowComment"

Answer: "1Hi,Thanks for reporting the issue. We are aware of this and the team is actively working to resolve the issue. By the end of day today we will be deploying the fix to all prod regions.CommentShareHarianswered 6 months agorePost-User-3387005 6 months agoThanks Hari. Please give me an update when the fix is rolled out in west-us-2.Share1Hi, fix have been deployed to all regions now, could you verify ? ThanksCommentSharecsunaanswered 6 months agorePost-User-3387005 6 months agoit's working in west-us-2. thanks for the quick fix!Share0Hello,I have the same issue. On a fresh account I can create a service from the console UI but as soon as I deployed one with Terraform bot ui and Terraform are giving me the same error.Do you have any ETA on the fix ?ThanksCommentSharerePost-User-3009542answered 6 months agocsuna 6 months agoHi Fix have been deployed to all prod region now, could you verify ? ThanksShare0Hi @Raj,Can you please drop in the screen shot of your error message, we will be happy to look into this. ThanksCommentShareHarianswered 5 months agoRaj 5 months agoI have attached the screen shotShare0Hi,The fix is deployed to all regions, so we shouldnt see this issue for any customers. thanks for the patienceCommentShareHarianswered 6 months ago0I am facing this issue today since evening in us-east 1. Is this an ongoing issue again?CommentShareRajanswered 5 months ago0Hi @Hari. This is image of the error that I have faced on us-east-1, while creating a AppRunner service from AWS ConsoleCommentShareRajanswered 5 months ago"


Question: Android Release - Link Error - Aws::Utils::EnumParseOverflowContainer

"Hello,I'm back on trying to get an Android Clang Release build up and running, and I'm running into a linker error:c:\Amazon\Lumberyard\1.11.1.0\dev\Code\SDKs\AWSNativeSDK\lib\android\ndk_r12\android-21\armeabi-v7a\clang-3.8\Release/libaws-cpp-sdk-cognito-identity.a(ub_COGNITO-IDENTITY.cpp.o):/var/lib/jenkins/jobs/AndroidArm32Sta/workspace/aws-sdk-cpp/_build_android_arm_32_static_release/aws-cpp-sdk-cognito-identity/ub_COGNITO-IDENTITY.cpp:function Aws::CognitoIdentity::Model::RoleMappingTypeMapper::GetRoleMappingTypeForName(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, Aws::Allocator<char> > const&): error: undefined reference to 'Aws::Utils::EnumParseOverflowContainer::StoreOverflow(int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, Aws::Allocator<char> > const&)'c:\Amazon\Lumberyard\1.11.1.0\dev\Code\SDKs\AWSNativeSDK\lib\android\ndk_r12\android-21\armeabi-v7a\clang-3.8\Release/libaws-cpp-sdk-cognito-identity.a(ub_COGNITO-IDENTITY.cpp.o):/var/lib/jenkins/jobs/AndroidArm32Sta/workspace/aws-sdk-cpp/_build_android_arm_32_static_release/aws-cpp-sdk-cognito-identity/ub_COGNITO-IDENTITY.cpp:function Aws::CognitoIdentity::Model::RoleMappingTypeMapper::GetNameForRoleMappingType(Aws::CognitoIdentity::Model::RoleMappingType): error: undefined reference to 'Aws::Utils::EnumParseOverflowContainer::RetrieveOverflow(int) const'c:\Amazon\Lumberyard\1.11.1.0\dev\Code\SDKs\AWSNativeSDK\lib\android\ndk_r12\android-21\armeabi-v7a\clang-3.8\Release/libaws-cpp-sdk-cognito-identity.a(ub_COGNITO-IDENTITY.cpp.o):/var/lib/jenkins/jobs/AndroidArm32Sta/workspace/aws-sdk-cpp/_build_android_arm_32_static_release/aws-cpp-sdk-cognito-identity/ub_COGNITO-IDENTITY.cpp:function Aws::CognitoIdentity::Model::AmbiguousRoleResolutionTypeMapper::GetAmbiguousRoleResolutionTypeForName(std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, Aws::Allocator<char> > const&): error: undefined reference to 'Aws::Utils::EnumParseOverflowContainer::StoreOverflow(int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, Aws::Allocator<char> > const&)'c:\Amazon\Lumberyard\1.11.1.0\dev\Code\SDKs\AWSNativeSDK\lib\android\ndk_r12\android-21\armeabi-v7a\clang-3.8\Release/libaws-cpp-sdk-cognito-identity.a(ub_COGNITO-IDENTITY.cpp.o):/var/lib/jenkins/jobs/AndroidArm32Sta/workspace/aws-sdk-cpp/_build_android_arm_32_static_release/aws-cpp-sdk-cognito-identity/ub_COGNITO-IDENTITY.cpp:function Aws::CognitoIdentity::Model::AmbiguousRoleResolutionTypeMapper::GetNameForAmbiguousRoleResolutionType(Aws::CognitoIdentity::Model::AmbiguousRoleResolutionType): error: undefined reference to 'Aws::Utils::EnumParseOverflowContainer::RetrieveOverflow(int) const'c:\Amazon\Lumberyard\1.11.1.0\dev\Code\SDKs\AWSNativeSDK\lib\android\ndk_r12\android-21\armeabi-v7a\clang-3.8\Release/libaws-cpp-sdk-cognito-identity.a(ub_COGNITO-IDENTITY.cpp.o):/var/lib/jenkins/jobs/AndroidArm32Sta/workspace/aws-sdk-cpp/_build_android_arm_32_static_release/aws-cpp-sdk-cognito-identity/ub_COGNITO-IDENTITY.cpp:function Aws::CognitoIdentity::Model::MappingRule::Jsonize() const: error: undefined reference to 'Aws::Utils::EnumParseOverflowContainer::RetrieveOverflow(int) const'c:\Amazon\Lumberyard\1.11.1.0\dev\Code\SDKs\AWSNativeSDK\lib\android\ndk_r12\android-21\armeabi-v7a\clang-3.8\Release/libaws-cpp-sdk-cognito-identity.a(ub_COGNITO-IDENTITY.cpp.o):/var/lib/jenkins/jobs/AndroidArm32Sta/workspace/aws-sdk-cpp/_build_android_arm_32_static_release/aws-cpp-sdk-cognito-identity/ub_COGNITO-IDENTITY.cpp:function Aws::CognitoIdentity::Model::RoleMapping::operator=(Aws::Utils::Json::JsonValue const&): error: undefined reference to 'Aws::Utils::EnumParseOverflowContainer::StoreOverflow(int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, Aws::Allocator<char> > const&)'c:\Amazon\Lumberyard\1.11.1.0\dev\Code\SDKs\AWSNativeSDK\lib\android\ndk_r12\android-21\armeabi-v7a\clang-3.8\Release/libaws-cpp-sdk-cognito-identity.a(ub_COGNITO-IDENTITY.cpp.o):/var/lib/jenkins/jobs/AndroidArm32Sta/workspace/aws-sdk-cpp/_build_android_arm_32_static_release/aws-cpp-sdk-cognito-identity/ub_COGNITO-IDENTITY.cpp:function Aws::CognitoIdentity::Model::RoleMapping::operator=(Aws::Utils::Json::JsonValue const&): error: undefined reference to 'Aws::Utils::EnumParseOverflowContainer::StoreOverflow(int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, Aws::Allocator<char> > const&)'c:\Amazon\Lumberyard\1.11.1.0\dev\Code\SDKs\AWSNativeSDK\lib\android\ndk_r12\android-21\armeabi-v7a\clang-3.8\Release/libaws-cpp-sdk-cognito-identity.a(ub_COGNITO-IDENTITY.cpp.o):/var/lib/jenkins/jobs/AndroidArm32Sta/workspace/aws-sdk-cpp/_build_android_arm_32_static_release/aws-cpp-sdk-cognito-identity/ub_COGNITO-IDENTITY.cpp:function Aws::CognitoIdentity::Model::RoleMapping::Jsonize() const: error: undefined reference to 'Aws::Utils::EnumParseOverflowContainer::RetrieveOverflow(int) const'clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation)tl;dr:"undefined reference to 'Aws::Utils::EnumParseOverflowContainer::RetrieveOverflow(...)'""undefined reference to 'Aws::Utils::EnumParseOverflowContainer::StoreOverflow(...)'"Android Clang Debug works fine, runs on device, etc. Any help here would be MOST appreciated.Cheers!Follow"

Answer: "0Accepted AnswerHi @REDACTEDUSERI was able to find the problem and it was indeed a link order issue with the AWS core library. Adding the following to Tools/build/waf-1.7.13/lmbrwaflib/lumberyard_sdks.py should patch the problem.    @REDACTEDUSER@before_method('propagate_uselib_vars')def link_aws_sdk_core_after_android(self):platform = self.env['PLATFORM']if not ('android' in platform and self.bld.spec_monolithic_build()):returnif 'AWS_CPP_SDK_CORE' in self.uselib:self.uselib = [ uselib for uselib in self.uselib if uselib != 'AWS_CPP_SDK_CORE' ]self.uselib.append('AWS_CPP_SDK_CORE')Let me know if you are still seeing an issue after applying the patch.SharerePost-User-6730542answered 6 years ago0Oh man this looks fun -- fetching some answers for ya. Sorry for the delayed response!SharerePost-User-5738838answered 6 years ago0FWIW, I checked the shared and static libs - the symbols are there:(static)$ nm -g -C ./Debug/libaws-cpp-sdk-core.a | grep EnumParseOverflowContainer00000000 T Aws::CheckAndSwapEnumOverflowContainer(Aws::Utils::EnumParseOverflowContainer*, Aws::Utils::EnumParseOverflowContainer*)00000000 W Aws::Utils::EnumParseOverflowContainer* Aws::New<Aws::Utils::EnumParseOverflowContainer>(char const*)00000000 W Aws::Utils::EnumParseOverflowContainer::EnumParseOverflowContainer()00000000 W Aws::Utils::EnumParseOverflowContainer::~EnumParseOverflowContainer()00000000 W void Aws::Delete<Aws::Utils::EnumParseOverflowContainer>(Aws::Utils::EnumParseOverflowContainer*)EnumParseOverflowContainer.cpp.o:00000000 T Aws::Utils::EnumParseOverflowContainer::StoreOverflow(int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, Aws::Allocator<char> > const&)00000000 T Aws::Utils::EnumParseOverflowContainer::RetrieveOverflow(int) const$ nm -g -C ./Release/libaws-cpp-sdk-core.a | grep EnumParseOverflowContainer00000001 T Aws::CheckAndSwapEnumOverflowContainer(Aws::Utils::EnumParseOverflowContainer*, Aws::Utils::EnumParseOverflowContainer*)EnumParseOverflowContainer.cpp.o:00000001 T Aws::Utils::EnumParseOverflowContainer::StoreOverflow(int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, Aws::Allocator<char> > const&)00000001 T Aws::Utils::EnumParseOverflowContainer::RetrieveOverflow(int) const(shared)$ objdump -TC ./Debug/libaws-cpp-sdk-core.so | grep EnumParseOverflowContainer000c27c4 g DF .text 0000063c Base Aws::CheckAndSwapEnumOverflowContainer(Aws::Utils::EnumParseOverflowContainer*, Aws::Utils::EnumParseOverflowContainer*)000e8934 w DF .text 00000064 Base Aws::Utils::EnumParseOverflowContainer* Aws::New<Aws::Utils::EnumParseOverflowContainer>(char const*)0014a860 w DF .text 000000e4 Base Aws::Utils::EnumParseOverflowContainer::EnumParseOverflowContainer()0014aa50 w DF .text 0000005c Base Aws::Utils::EnumParseOverflowContainer::~EnumParseOverflowContainer()000e8998 w DF .text 00000044 Base void Aws::Delete<Aws::Utils::EnumParseOverflowContainer>(Aws::Utils::EnumParseOverflowContainer*)001a8dc8 g DF .text 000003dc Base Aws::Utils::EnumParseOverflowContainer::StoreOverflow(int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, Aws::Allocator<char> > const&)001a84c4 g DF .text 00000904 Base Aws::Utils::EnumParseOverflowContainer::RetrieveOverflow(int) const$ objdump -TC ./Release/libaws-cpp-sdk-core.so | grep EnumParseOverflowContainer00087c39 g DF .text 00000030 Base Aws::CheckAndSwapEnumOverflowContainer(Aws::Utils::EnumParseOverflowContainer*, Aws::Utils::EnumParseOverflowContainer*)000cd091 g DF .text 00000220 Base Aws::Utils::EnumParseOverflowContainer::StoreOverflow(int, std::__ndk1::basic_string<char, std::__ndk1::char_traits<char>, Aws::Allocator<char> > const&)000ccd75 g DF .text 0000031c Base Aws::Utils::EnumParseOverflowContainer::RetrieveOverflow(int) constSharerePost-User-0158040answered 6 years ago0Any ideas, @REDACTEDUSERSharerePost-User-0158040answered 6 years ago0Thanks for sharing this! I've sent this over to my peers to take a look. Will update you on answers ASAP!SharerePost-User-5738838answered 6 years ago0Any updates? I'd love to do some performance testing on mobile devices :(SharerePost-User-0158040answered 6 years ago0Hi @REDACTEDUSERIt looks as if the AWS core library isn't getting included in the linker command. Could you verify this by either looking at the task dump when the command fails or running your build command with "--zones=runner" included (note: you may need to be quick to capture the temp response file before it's deleted with this option)?SharerePost-User-6730542answered 6 years ago06015-build-out.txt|attachment (403 KB)build-out.txtHi @REDACTEDUSERHere's the tail end of the task dump (ommitted all of the .o files, etc preceding the library options)-lAzGameFramework -lEMotionFXStaticLib -lGem.CloudGemFramework.StaticLibrary.6fc787a982184217a5a553ca24676cfa.v1.1.1 -lAzFramework -lGridMate -lGridMateForTools -lCryAction_AutoFlowNode -lAzCore -lAkMemoryMgr -lAkMusicEngine -lAkSoundEngine -lAkStreamMgr -lAkCompressorFX -lAkConvolutionReverbFX -lAkDelayFX -lAkExpanderFX -lAkFlangerFX -lAkGainFX -lAkGuitarDistortionFX -lAkHarmonizerFX -lAkMatrixReverbFX -lAkMeterFX -lAkParametricEQFX -lAkPeakLimiterFX -lAkPitchShifterFX -lAkRecorderFX -lAkRoomVerbFX -lAkStereoDelayFX -lAkTimeStretchFX -lAkTremoloFX -lAkAudioInputSource -lAkSilenceSource -lAkSineSource -lAkSynthOne -lAkToneSource -lAkSoundSeedImpactFX -lAkSoundSeedWind -lAkSoundSeedWoosh -lCrankcaseAudioREVModelPlayerFX -lAkVorbisDecoder -lMcDSPFutzBoxFX -lMcDSPLimiterFX -lfreetype2 -llz4 -ltomcrypt -ltommath -lexpat -lzlib -lmd5 -llzma -llzss -laws-cpp-sdk-core -lcurl -lssl -lcrypto -lz -laws-cpp-sdk-cognito-identity -laws-cpp-sdk-identity-management -laws-cpp-sdk-lambda -laws-cpp-sdk-gamelift -llua -Wl,-Bdynamic -lc:\\Amazon\\Lumberyard\\1.11.1.0\\dev\\Code -lJ:/work/Android/NDK\\platforms\\android-21\\arch-arm\\usr\\lib -lJ:/work/Android/NDK\\sources\\cxx-stl\\llvm-libc++\\libs\\armeabi-v7a -lc:\\Amazon\\Lumberyard\\1.11.1.0\\dev\\Code\\SDKs -lc:\\Amazon\\Lumberyard\\1.11.1.0\\dev\\Code\\Tools\\CryCommonTools -lc:\\Amazon\\Lumberyard\\1.11.1.0\\dev\\Code\\Tools\\HLSLCrossCompiler\\lib\\android-armeabi-v7a -lc:\\Amazon\\Lumberyard\\1.11.1.0\\dev\\Code\\SDKs\\AWSNativeSDK\\lib\\android\\ndk_r12\\android-21\\armeabi-v7a\\clang-3.8\\Release -landroid -lc -llog -ldl -lc++_shared -lOpenSLES -lAzCore -lHLSLcc -lGLESv2 -lEGL -lm -lGLESv1_CM -laws-cpp-sdk-gamelift'I see -lAzCore in there, but I don't see the AWS core lib specified anywhere. Attached is the full output if you want to take a look -SharerePost-User-0158040answered 6 years ago0hi @REDACTEDUSERSharerePost-User-0158040answered 6 years ago0Here you go - list of all the gems I have enabled:    {"GemListFormatVersion": 2,"Gems": [{"Path": "Gems/EMotionFX","Uuid": "044a63ea67d04479aa5daf62ded9d9ca","Version": "0.1.0","_comment": "EMotionFX"},{"Path": "MyGame/Gem","Uuid": "0cc9caf722af45e69b2fefa913212db3","Version": "0.1.0"},{"Path": "Gems/LyShine","Uuid": "0fefab3f13364722b2eab3b96ce2bf20","Version": "0.1.0","_comment": "LyShine"},{"Path": "Gems/CloudCanvasCommon","Uuid": "102e23cf4c4c4b748585edbce2bbdc65","Version": "0.1.0","_comment": "CloudCanvasCommon"},{"Path": "Gems/LegacyGameInterface","Uuid": "3108b261962e44b6a0c1c036c693bca2","Version": "1.0.0","_comment": "LegacyGameInterface"},{"Path": "Gems/CryLegacy","Uuid": "352fef7706634c92814c587e84d7165a","Version": "0.1.0","_comment": "CryLegacy"},{"Path": "Gems/Maestro","Uuid": "3b9a978ed6f742a1acb99f74379a342c","Version": "0.1.0","_comment": "Maestro"},{"Path": "Gems/CertificateManager","Uuid": "659cffff33b14a10835bafc6ea623f98","Version": "0.0.1","_comment": "CertificateManager"},{"Path": "Gems/CloudGemFramework/v1","Uuid": "6fc787a982184217a5a553ca24676cfa","Version": "1.1.1","_comment": "CloudGemFramework"},{"Path": "Gems/GameLift","Uuid": "76de765796504906b73be7365a9bff06","Version": "2.0.0","_comment": "GameLift"},{"Path": "Gems/PhysicsEntities","Uuid": "99ea531451fc4f64a5a9fe8f385e8a76","Version": "0.1.0","_comment": "PhysicsEntities"},{"Path": "Gems/Camera","Uuid": "f910686b6725452fbfc4671f95f733c6","Version": "0.1.0","_comment": "Camera"},{"Path": "Gems/LmbrCentral","Uuid": "ff06785f7145416b9d46fde39098cb0c","Version": "0.1.0","_comment": "LmbrCentral"}]}Hope that helps!SharerePost-User-0158040answered 6 years ago0Hi @REDACTEDUSERSharerePost-User-0158040answered 6 years ago0@REDACTEDUSERSharerePost-User-4556816answered 4 years ago0I'm pushing to get this into 1.18... sorry for the wait!SharerePost-User-4556816answered 4 years ago0Hi @Twolewis, I just wanted to let you know that I was able to reproduce the link error with the list of gems you provided. I'll report back as soon as I figure out what's going on!SharerePost-User-6730542answered 6 years ago0Hi @Twolewis, my apologies for the delay. I do see the AWS core library hidden in the linker command. Given that, it now may be a link order issue though I'm not quite sure why it would manifest itself now. Do you have any other AWS gems enabled besides CloudGemFramework mentioned the linker command? I would like to see what the bare minimum is to reproduce this issue locally so I can get to the bottom of it.SharerePost-User-6730542answered 6 years ago"


Question: Elastic Load Balancer to provide source IP address when not defined as HTTP LB.

"Hello,Is there any way to configure an AWS-ELB to provide source IP address when it is not configured as an HTTP load balancer but TCP load balancer?To explain a bit, we would like to to setup SMTP servers on EC2-Instances behind a the ELB, but we need to be sure the receive the right origin IP address within the SMTP protocol which now implements X-Forward-For as HTTP protocol.Any advice would be appreciated.FollowComment"

Answer: "2Yes, I think what you want is a Network Load Balancer. See: Client IP preservation.CommentShareEXPERTkentradanswered a year agoAWS-User-3194526 a year agoThanks, will check thatShare"


Question: How Soon Can  External Access be possible to My EC2 Instance Public IP Address

"Question 1: How soon does it take after deploying my EC2  instance for its public IP address to be reachable ?Question 2: I am struggling now for a few days to see the public ip address is not reachable.  Currently have a quad zero route under network ACL and also have security group inbound and outbound rules defined to allow all traffic. There is also a quad zero route pointing to the internet gateway ( under routes ) Is there anything else that is required to get my instance ec2-44-198-166-191.compute-1.amazonaws.com to be reachable from the internet?FollowCommentrePost-User-8575837 a year agoThank you for the reply.  If every step above is followed and the public address is still not reachable , what else could cause the issue ?ShareAlex_K a year agoSome more detailed troubleshooting tips can be found here: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.htmlIt might also be worth creating a small instance in the same subnet to check that the instance is responding there before working backwards through the internet facing configurations.Share"

Answer: "2Q1: It should be pretty much immediateQ2: Here are some things to check:That the security group is correctly assigned to the instance and that the rules match the protocol (eg. ICMP) as well as port and source IP rangeThe inbound and outbound rules for the network ACL are correct and assigned to the right VPCAny firewall rules (eg. Windows firewall) on the instance are set correctlyThat the service you're trying to connect to (eg. a webserver) is up and running correctly on the instanceFinally you may consider using the AWS VPC Reachability Analyzer: https://aws.amazon.com/blogs/aws/new-vpc-insights-analyzes-reachability-and-visibility-in-vpcs/CommentShareAlex_Kanswered a year agorePost-User-8575837 a year agoThank you for your reply.  I have isolated the issue down to the image. Some instances  built with Windows Server 2019 or 2002 had firewall off while other instances it was on and I had to modify it or turn it odd completely for troubleshooting purposes.  So really the last steps Are to check the image is configured for the services and modify the Windows firewall accordingly. Thus , I see that not all images are made equal. Best Regards!Share"


Question: AWS:InstanceInformation folder created in s3 by Resource Data Sync cannot be queried by Athena because it has an invalid schema with duplicate columns.

"After resolving my first issue with getting a resource data sync set up, I've now run into another issue with the same folder.When a resource data sync is created, it creates a folder structure with 13 folders  following a folder structure like:s3://resource-data-sync-bucket/AWS:*/accountid=*/regions=*/resourcetype=*/instance.json}When running the glue crawler over this, a schema is created where partitions are made for each subpath with an = in it.This works fine for most of the data, except for the path starting with AWS:InstanceInformation. The instance information json files ALSO contain a "resourcetype" field as can be seen here.{"PlatformName":"Microsoft Windows Server 2019 Datacenter","PlatformVersion":"10.0.17763","AgentType":"amazon-ssm-agent","AgentVersion":"3.1.1260.0","InstanceId":"i","InstanceStatus":"Active","ComputerName":"computer.name","IpAddress":"10.0.0.0","ResourceType":"EC2Instance","PlatformType":"Windows","resourceId":"i-0a6dfb4f042d465b2","captureTime":"2022-04-22T19:27:27Z","schemaVersion":"1.0"}As a result, there are now two "resourcetype" columns in the "aws_instanceinformation" table schema.  Attempts to query that table result in the error HIVE_INVALID_METADATA: Hive metadata for table is invalid: Table descriptor contains duplicate columnsI've worked around this issue by removing the offending field and setting the crawler to ignore schema updates, but this doesn't seem like a great long term solution since any changes made by AWS to the schema will be ignored.Is this a known issue with using this solution? Are there any plans to change how the AWS:InstanceInformation documents are so duplicate columns aren't created.FollowComment"


Question: Migrate AWS Account

"Hello Everybody,I plan to migrate AWS Account to different account by all services would be transferred as belowEC2 20-30 InstantsCloudwatchOpenSearhCloudfrontS3Load BalanceEIP for ec2 are more than 20 IP.Therefore, AMI it's seem to be cannot migrate IP together with EC2https://aws.amazon.com/premiumsupport/knowledge-center/account-transfer-ec2-instance/Then, I have checked transferring EIP and found it need to open a support cases for this.https://repost.aws/questions/QUImID0dYDRR24o4PAEUPvyg/is-it-possible-move-migrate-eip-to-another-accountThis is my questionsTo transfer EIP that Account Basic can do open a ticket for support this?If must be developer, business and enterprise what is minimum type?Just source account or destination must pay as well for support?https://us-east-1.console.aws.amazon.com/support/plans/home?region=us-east-1#/All suggestions and recommendation, Thank you in advance.FollowComment"

Answer: "0Hi - Thanks for reaching out.To transfer EIP that Account Basic can do open a ticket for support this?-  If you have Basic Support, you can't create a technical support case. Reference : https://docs.aws.amazon.com/awssupport/latest/user/case-management.htmlIf must be developer, business and enterprise what is minimum type?- It starts with Developer , refer : https://aws.amazon.com/premiumsupport/plans/. You can always cancel a paid Support plan, switch to the Basic support plan. Refer : https://aws.amazon.com/premiumsupport/faqs/Just source account or destination must pay as well for support - Looks like from the thread you may have to open from both account , but you can always try with the source to start with. But as mentioned, you can always cancel a paid Support plan, switch to the Basic support plan. Support plans are always account specific.CommentShareEXPERTAWS-User-Nitinanswered 7 months ago"


Question: SMS charges via SNS 20X high then actual

"I am starting up with the AWS SNS service to send out the SMSSMS Pricing on the page https://aws.amazon.com/sns/sms-pricing/ is mentioned to for India region to be  0.00278 for transactional SMS while when i send out the SMS in the delivery report it comes as **0.0413 ** reports that seems to be 20X high on what is mentioned. I am sending the SMS from the same region **ap-south-1(Mumbai) ** to Indian number.any one know how can this can be fixed ?{    "notification": {        "messageId": "badd7f9d-8372-5b80-b481-25ce9cd2af96",        "timestamp": "2022-01-08 05:13:04.879"    },    "delivery": {        "mnc": 78,        "numberOfMessageParts": 1,        "destination": "+91XXXXXXXXXX",        "priceInUSD": 0.0413,        "smsType": "Transactional",        "mcc": 404,        "providerResponse": "Message has been accepted by phone",        "dwellTimeMs": 426,        "dwellTimeMsUntilDeviceAck": 3522    },    "status": "SUCCESS"}FollowComment"

Answer: "1Accepted AnswerHello Rajesh,Hope you are doing well.I see you concerned about the SNS SMS charges being twice the amount mentioned in the pricing page.The pricing page states as follows [1]:Network/ HNITransactional SMSPromotional SMSAll Networks$0.00278$0.00278All Networks  - International$0.0413$0.0413By default, when you send messages to recipients in India, Amazon SNS uses International Long Distance Operator (ILDO) connections to transmit those messages. When recipients see a message that's sent over an ILDO connection, it appears to be sent from a random numeric ID. [2]As a result, you are incurring charges as mentioned for All Networks - InternationalIf you wish to incur charges for the pricing mentioned for All Networks which is $0.00278, you will have to send SMS through local routes.To send messages using local routes, you must first register your use case and message templates with the Telecom Regulatory Authority of India (TRAI) through Distributed Ledger Technology (DLT) portals.Hope this helps.References:1: https://aws.amazon.com/sns/sms-pricing/2: https://docs.aws.amazon.com/sns/latest/dg/channels-sms-senderid-india.htmlRegards,HarshaVardhanGCommentShareHarshaVardhanGanswered a year agoRajesh a year agothanks, it provides the clarity on why the issue happened, i will explore on the step mentioned to register via local routes, let me check and see can build anything on top of this.ShareShehan Jayawardane 7 months agoHi Harsha, above cost $0.00278 is per SMS?Share"


Question: <break> Inconsistencies?

"It seems that there is some inconsistencies in how the Amazon Polly Console (and files processed through the CLI or API) is handling non-coded pauses when using <break> or where the </speak> is placed in the file.Here are some examples to illustrate the problem - it doesn't matter if a neural voice or standard voice is used.Example 1:<speak>Article 1Video provides a powerful way to help you prove your point. When you click Online Video, you can paste in the embed code for the video you want to add. You can also type a keyword to search online for the video that best fits your document.</speak>```A pause is inserted after Article 1 since there is a paragraph break which is the expected result.    Example 2:<speak>Article 1Video provides a powerful way to help you prove your point. When you click Online Video <break time = ".3s"/> you can paste in the embed code for the video you want to add. You can also type a keyword to search online for the video that best fits your document.</speakA <break> is inserted in place of the comma.  When this occurs, the paragraph break after Article 1 is ignored so there is no pause between Article 1 and Video.  This is unexpected.Example 3:<speak>Article 1Video provides a powerful way to help you prove your point. When you click Online Video, you can paste in the embed code for the video you want to add. You can also type a keyword to search online for the video that best fits your document.</speak>```Similar to Example 1, a pause **should ** occur after Article 1 since there is a paragraph break.  This does not occur.  Notice that there is no line break before </speak>.    Any clarification would be most helpful as results are inconsistent now and it would be time consuming to have to insert`<p></p>` throughout to get expected results.    Edited by: vabtm on Jul 3, 2020 1:57 PMFollowComment"

Answer:
"0Hi vabtm,Thank you for reaching out to us. A single newline doesn't enforce a paragraph break, it may happen that the text is split to multiple chunks which could result in having a pause after "Article 1", our recommendation is to use either p tag or more than one single newline to introduce the pause. Examples:<speak>
Article 1

Video provides a powerful way to help you prove your point. When you click Online Video <break time = ".3s"/> you can paste in the embed code for the video you want to add. You can also type a keyword to search online for the video that best fits your document.
</speak>or<speak>Article 1Video provides a powerful way to help you prove your point. When you click Online Video <break time = ".3s"/> you can paste in the embed code for the video you want to add. You can also type a keyword to search online for the video that best fits your document.</speak>Thanks,TarekCommentShareAWS-User-4110704answered 3 years ago0Thanks for responding, Tarek.  I did some additional testing to confirm by using this example:<speak>Apple Oranges Grapes</speak>```That produces what you would expect - "Apple Oranges Grapes"<speak>AppleOrangesGrapes</speakThis also produces "Apple Oranges Grapes" as in the example above.To get the break, you need to have at least two newlines to create a pause as in this example.<speak>Apple Oranges Grapes</speak>```CommentSharevabtmanswered 3 years ago0Hi Vabtm,Yes, your examples shows how it works indeed. Please reach out to us, if you have any other related issues.Best,FatihCommentShareAWS-User-7152847answered 3 years ago"


Question: Error Deleting Buckets

"I am unable to delete a couple of buckets that i have.  I get a generic error that it failed when i try both "Delete" and "Empty". I would open a ticket, however, i do not have a support plan. Any ideas?  The buckets are large a contain 10s of thousands of items.Edited by: guero2356 on Nov 4, 2019 1:01 PMFollowComment"

Answer: 0Luckily it is working todayCommentShareguero2356answered 4 years ago


Question: S3 Select from pre-signed URLs?

My customer is looking for guidance on using S3 Select on pre-signed URLs.  Is this possible?  Is there any documentation around this?FollowComment

Answer: "0Accepted Answerthis is not possible, as the method takes object name and bucket name instead of url as documented here:https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectSELECTContent.htmlCommentShareLuis_Canswered 4 years ago"


Question: ec2.monitor_instances() operation giving unauthorize error.

"Hi, I am trying to fetch the instance name by using the instance id in Lambda function (using Python language) via the below commands.if sys.argv[0] == 'ON':monitor = ec2.monitor_instances(InstanceIds=[id])else:monitor = ec2.unmonitor_instances(InstanceIds=[id])The lambda function gets executed when an alarm is in active state.I am getting error as,[ERROR] ClientError: An error occurred (UnauthorizedOperation) when calling the MonitorInstances operation: You are not authorized to perform this operation.I have full ec2 access, still not able to execute these commands. Do I need any specific role for this or are these commands outdated?Can you suggest any other command which can be executed in lambda function to get the instance name using the instance id?FollowComment"

Answer: "0Accepted AnswerThe sample code you're given isn't really applicable in Lambda (because there isn't a sys.argv[0] to reference) - but I'm going to assume that it isn't the actual code you're using.What is in the variable id - have you checked to make sure that it is a valid instance id and it is an instance id that you own?Second, if your account is part of an Organization could the permissions be denied by a Service Control Policy?Otherwise, the IAM troubleshooting guide might be of assistance.CommentShareEXPERTBrettski-AWSanswered a month agorePost-User-0363890 a month agoid variable is the instance id that we are getting from the alarms detail. Yes it is a valid instance id.But the command ec2.monitor_instances(InstanceIds=[id]) should work right?Sure will check for Service Control Policy.ShareBrettski-AWS EXPERTa month agoYes, that command should work - that you're getting UnauthorizedOperation means it's a permissions problem.SharerePost-User-0363890 a month agoOkay Thankyou.Share"


Question: HTTP Client raised an unhandled exception: 'module' object has no attribute 'raise_from'

"I'm trying to run an aws lightsail command, from within my Amazon Linux 1 instance, to update the caching settings on my distribution.When I first created the command it worked fine ... but after a while it stopped working and gave an "An HTTP Client raised an unhandled exception: 'module' object has no attribute 'raise_from'" error.I ran the command with the debug parm and got the output at the bottom of this post (partially, the full debug output won't fit in a post).Any suggestions?  It seems I'm missing a python module, but don't know python at all (Java & RPG are my thing).Thanks!David2022-12-09 07:44:33,646 - MainThread - botocore.endpoint - DEBUG - Sending http request: <AWSPreparedRequest stream_output=False, method=POST, url=https://lightsail.us-east-1.amazonaws.com/, headers={'Content-Length': '1118', 'X-Amz-Target': 'Lightsail_20161128.UpdateDistribution', 'X-Amz-Date': '20221209T134433Z', 'User-Agent': 'aws-cli/1.18.107 Python/2.7.18 Linux/4.14.248-129.473.amzn1.x86_64 botocore/1.17.31', 'Content-Type': 'application/x-amz-json-1.1', 'Authorization': 'AWS4-HMAC-SHA256 Credential=qqqqqqq/20221209/us-east-1/lightsail/aws4_request, SignedHeaders=content-type;host;x-amz-date;x-amz-target, Signature=xxxxxxxx'}>2022-12-09 07:44:33,646 - MainThread - botocore.httpsession - DEBUG - Exception received when sending urllib3 HTTP requestTraceback (most recent call last):File "/usr/lib/python2.7/dist-packages/botocore/httpsession.py", line 250, in sendconn = manager.connection_from_url(request.url)File "/usr/lib/python2.7/dist-packages/urllib3/poolmanager.py", line 290, in connection_from_urlu = parse_url(url)File "/usr/lib/python2.7/dist-packages/urllib3/util/url.py", line 392, in parse_urlreturn six.raise_from(LocationParseError(source_url), None)AttributeError: 'module' object has no attribute 'raise_from'2022-12-09 07:44:33,653 - MainThread - botocore.hooks - DEBUG - Event needs-retry.lightsail.UpdateDistribution: calling handler <botocore.retryhandler.RetryHandler object at 0x7fa41e1f5c90>2022-12-09 07:44:33,653 - MainThread - awscli.clidriver - DEBUG - Exception caught in main()Traceback (most recent call last):File "/usr/lib/python2.7/dist-packages/awscli/clidriver.py", line 217, in mainreturn command_table[parsed_args.command](remaining, parsed_args)File "/usr/lib/python2.7/dist-packages/awscli/clidriver.py", line 358, in callreturn command_table[parsed_args.operation](remaining, parsed_globals)File "/usr/lib/python2.7/dist-packages/awscli/clidriver.py", line 530, in callcall_parameters, parsed_globals)File "/usr/lib/python2.7/dist-packages/awscli/clidriver.py", line 650, in invokeclient, operation_name, parameters, parsed_globals)File "/usr/lib/python2.7/dist-packages/awscli/clidriver.py", line 662, in _make_client_call**parameters)File "/usr/lib/python2.7/dist-packages/botocore/client.py", line 316, in _api_callreturn self._make_api_call(operation_name, kwargs)File "/usr/lib/python2.7/dist-packages/botocore/client.py", line 622, in _make_api_calloperation_model, request_dict, request_context)File "/usr/lib/python2.7/dist-packages/botocore/client.py", line 641, in _make_requestreturn self._endpoint.make_request(operation_model, request_dict)File "/usr/lib/python2.7/dist-packages/botocore/endpoint.py", line 102, in make_requestreturn self._send_request(request_dict, operation_model)File "/usr/lib/python2.7/dist-packages/botocore/endpoint.py", line 137, in _send_requestsuccess_response, exception):File "/usr/lib/python2.7/dist-packages/botocore/endpoint.py", line 256, in _needs_retrycaught_exception=caught_exception, request_dict=request_dict)File "/usr/lib/python2.7/dist-packages/botocore/hooks.py", line 356, in emitreturn self._emitter.emit(aliased_event_name, **kwargs)File "/usr/lib/python2.7/dist-packages/botocore/hooks.py", line 228, in emitreturn self._emit(event_name, kwargs)File "/usr/lib/python2.7/dist-packages/botocore/hooks.py", line 211, in _emitresponse = handler(**kwargs)File "/usr/lib/python2.7/dist-packages/botocore/retryhandler.py", line 183, in callif self._checker(attempts, response, caught_exception):File "/usr/lib/python2.7/dist-packages/botocore/retryhandler.py", line 251, in callcaught_exception)File "/usr/lib/python2.7/dist-packages/botocore/retryhandler.py", line 269, in _should_retryreturn self._checker(attempt_number, response, caught_exception)File "/usr/lib/python2.7/dist-packages/botocore/retryhandler.py", line 317, in callcaught_exception)File "/usr/lib/python2.7/dist-packages/botocore/retryhandler.py", line 223, in callattempt_number, caught_exception)File "/usr/lib/python2.7/dist-packages/botocore/retryhandler.py", line 359, in _check_caught_exceptionraise caught_exceptionHTTPClientError: An HTTP Client raised an unhandled exception: 'module' object has no attribute 'raise_from'2022-12-09 07:44:33,660 - MainThread - awscli.clidriver - DEBUG - Exiting with rc 255An HTTP Client raised an unhandled exception: 'module' object has no attribute 'raise_from'FollowComment"

Answer: 0Accepted AnswerIt's difficult to tell but my guess here is "old software".You're running Amazon Linux 1 which is in a limited support phase so I'd recommend upgrading to Amazon Linux 2 very soon.It also appears as if you're running an old version of the AWS CLI which is using Python 2.7 which went end of life in 2020.So please update your operating system and your AWS CLI - version 2 of the CLI is now available.CommentShareEXPERTBrettski-AWSanswered 5 months agoDavid G 5 months agoThanks ... I upgraded my python version and the problem went away.Share


Question: how to delete compute environment that is invalid ?

I run the commandaws batch delete-compute-environment --compute-environment batch-environmentIt returns with no other messages but the compute environment still persist.FollowComment

Answer: "0Accepted AnswerPlease check if service role of the compute environment exists. AWS Batch uses service roles to manage EC2 and ECS resources on your behalf. Is the role had been deleted prior to deleting the compute environment, then AWS Batch is not able to delete the compute resources and the enters INVALID state. In case if the role was deleted, then create service role again with the same name and try deleting the compute environment again.CommentSharealex_lykasovanswered a year agoEXPERTJohn_Freviewed a year agoNicholas Yue a year agoYes, the service role still exists.I have gone into the Batch web ui to look again and see this STATUSINVALID - CLIENT_ERROR - User: arn:aws:sts::xxxxxxxxxx:assumed-role/batch_role/aws-batch is not authorized to perform: ecs:ListClusters on resource: * because no identity-based policy allows the ecs:ListClusters action (Service: AmazonECS; Status Code: 400; Error Code: AccessDeniedException; Request ID: zzzzzzzzzzzzzzzzzzzzzzzzz; Proxy: null)Is the deletion problem due to the service role not having the right permissions ? If so, what permission should I set it to ?Sharealex_lykasov a year agoYes, it needs ecs:ListClusters action and some others. Please compare your role's permissions with those described in the documentation here https://docs.aws.amazon.com/batch/latest/userguide/service_IAM_role.htmlShare0If you don't have a Spot Fleet role, complete the following steps to create one for your compute environment:Open the IAM console.In the navigation pane, choose Roles.Choose Create role.Choose AWS service. Then, choose EC2 as the service that will use the role that you're creating.In the Select your use case section, choose EC2 Spot Fleet Role.Important: Don't choose the similarly named EC2 - Spot Fleet.Choose Next: Permissions.Choose Next: Tags. Then, choose Next: Review.For Role name, enter AmazonEC2SpotFleetRole.Choose Create role.Note: Use your new Spot Fleet role to create new compute environments. Existing compute environments can't change Spot Fleet roles. To get rid of the obsolete environment, deactivate and then delete that environment.Open the AWS Batch console.In the navigation pane, choose Compute environments.Choose the compute environment that's in the INVALID state. Then, choose Disable.Choose Delete.Deactivate and delete your compute environmentYou must deactivate and delete your compute environment because the launch template associated with your compute environment doesn't exist. This means that you can't use the compute environment associated with your launch template. You must delete that compute environment, and then create a new compute environment.Open the AWS Batch console.In the navigation pane, choose Compute environments.Select the compute environment that's in the INVALID state. Then, choose Disable.Choose Delete.Create a new compute environment.Deactivate and then activate your compute environmentOpen the AWS Batch console.In the navigation pane, choose Compute environments.Choose the compute environment that's in the INVALID state. Then, choose Disable.Choose the same compute environment from step 3. Then, choose Enable.Related informationCommentShareUsha kumarianswered a year ago0The suggested steps:Open the AWS Batch console.In the navigation pane, choose Compute environments.Select the compute environment that's in the INVALID state. Then, choose Disable.Choose Delete.did not work in my situation. The compute environment is still there.CheersCommentShareNicholas Yueanswered a year ago"


Question: AWS IoT Twin Maker - read data from Entities

"Am new to IoT Twin Maker. I have an entity that has a component with properties humidity and temperature. Am able to test this component and am getting results successfully.I need to write a Lambda function that will ready this JSON, do a formatting and expose the JSON via REST API. What steps should I follow? Any sample code would help.I tried creating a lambda function asresponse = client.get_property_value(componentName='string',componentTypeId='string',entityId='string',selectedProperties=['string',],workspaceId='string')Am getting the error "An error occurred (ValidationException) when calling the GetPropertyValue operation: No attributePropertyValueReaderByEntity connector defined for a query within entity : <<entityID>>Am sure am missing something, please guide.FollowComment"

Answer: "0Hi,it seems that the connector you are using does not support get_property_value.  You can try if get_property_value_history is working. Not every connector supports necessarily both methods.Cheers,PhilippCommentSharePhilipp Sanswered 7 months ago0You may also need to check your component type model: for GetPropertyValue on properties marked as "isStoredExternally": true you should have an attributePropertyValueReaderByEntity definition under the functions in your component type (e.g. instead of "dataReader" in this example)The lambda function used to implement the above reader should follow this request/response interface: docsCommentSharejohnnyw-awsanswered 3 months ago"


Question: DocumentDB memory usage

"Hi,Memory usage on DocumentDB is getting lower slowly but surely.What may be causing such behavior?When should we increase the instance type?According to docs the rule of thumb is to increase the memory amount once we hit less than 1/3 of total memory, but the reason for the increase is what we are more interested in.FollowComment"

Answer: "0There can be several reasons for the memory usage on DocumentDB to be getting lower slowly but surely:Database activity: If there is less activity on the database, such as fewer reads and writes, then there will be less memory usage.Automatic indexing: DocumentDB automatically indexes all data in a collection, so if the data set is small, the memory usage will be lower.Data retention policies: If there are data retention policies in place, such as automatic deletion of old data, then the amount of data stored in the database will decrease, resulting in lower memory usage.Cache eviction: DocumentDB uses a Least Recently Used (LRU) cache eviction policy, which evicts the least recently used items from cache when it reaches its limit. If the database is not being used actively, the cache will evict items and the memory usage will decrease.As for the question of when to increase the instance type, the rule of thumb is to increase the memory amount once we hit less than 1/3 of total memory, but the reason for the increase is more important, you should consider the following:If the workload is increasing and the database is not able to handle the increased load, then the instance type should be increased to handle the additional load.If you are seeing frequent throttling errors, it is likely that the current instance type does not have enough resources to handle the workload, and you should consider increasing the instance type.If you are seeing high CPU usage, it may be a good idea to increase the instance type to handle the increased workload.If you are seeing high memory usage, it may be a good idea to increase the instance type to handle the increased workload.It is important to monitor your database's performance and usage to determine when it is necessary to increase the instance type.CommentSharejayamaheizenberganswered 4 months ago0Hi,Thank you for your answer @jayamaheizenberg.Can you please provide info on what specifically may cause increasing memory usage in DocumentDB?CommentShareAWS-User-9075196answered 4 months ago0Hello. Which metric are you referring to, is it FreeableMemory? There's good insight and recommendations in the documentation  which says that when this metric goes below 10% of total instance memory, then scale up the instance.To gather more information you could enable Performance Insights (this is done at instance level). Try correlating the free memory drop with the other metrics, increase in database connections,  opcounters (inserts, updates, query, getmore), CPU usage which means the workload has increased. In PI you can check the top queries utilising the most resources that can lead to identifying the root cause.CommentShareMihai Aanswered 4 months ago"


Question: Problem launching instance of EC2 server for GPU intensive applications.

"Greetings,I'm trying to set up launching an instance in EC2 g5 and I keep getting an error saying I don't have the number of permissions for vcpu's. When I contacted support for an increase in authorization, they declined and said it could incur large fees. I want to be able to use the on-demand g5 cloud computing for pixel streaming Unreal Engine 5 to my business clients. How do I utilize the AWS services for this? Maybe I am missing something or using the incorrect instance setup?FollowComment"

Answer: "0Hi,Can you share the exact error message you are receiving?Reason I ask this is for the following reasons:You might genuinely not have the permissionsYour account might still be to new to launch large instance types and you might need to opt for a smaller instance.What you can do is check what you can launch by navigating to service quotas, see link to check on how to do this. See my example below to see howmuch G-instances I can launch and available vCPU limit:Navigate to service quotas (Top right, under account ID)Select Amazon Elastic Compute Cloud (Amazon EC2) to view quotas for EC2Select the All G and VT Spot Instance Requests to view howmuch G type instances you can launchSo based on the quota above the account is able to launch G-type instances with a limit of 64 vCPUs this can be:1x g4dn.16xlarge2x g4dn.8xlarge4x g4dn.4xlargeAnd so forth, now important to note that each account will have its own set of assigned quotas and these values will be regional especially when it comes to large instance types. I would suggest you check what your current quota is set too, if your account is still new  as mentioned above you will require a special approvals to launch certain instance types.You can review this link: https://aws.amazon.com/marketplace/pp/prodview-iu7szlwdt5clg to get an idea of the overall hourly spend for unreal on G5, from the marketplace link it looks like your cheapest option will beg4dn.2xlarge$0$1.12 [hourly] in us-east-1  Hope this helps, feel free to reach back with the error code and I'll advise accordingly.CommentShareSUPPORT ENGINEERLundianswered 5 months agorePost-User-8632709-Mary 5 months agoThank you so much for your detailed answer! I checked the service quotas and indeed I have 0 for the g and vt instances. How do I go about getting the permissions? I have 1k credit from game jam with unreal and we wanted to use some of it to get an instance for a bit to host an in-development project for our business partner to check out.SharerePost-User-8632709-Mary 5 months agoWhen I asked for an increase they said no via support. Are there other EC2 instances that I could use that would at least work for now?SharerePost-User-8632709-Mary 5 months agoAfter fiddling with it, I launched a large T3 instance and will see if it will work for our pixel streaming. Hopefully, it will work for us! Thanks again for your answerShare"


Question: Enabling Filters in Inspector V2

"Hi Team,Could you please explain the significance of filters in Inspector V2 and also I would need a cloudformation code to enable filters in Inspector V2.Please help me with a cloudformation code example on filters in Inspector V2ThanksFollowComment"


Question: Migration of objects to different bucket in diff account

"Hi,As I want to transfer the objects from BUcket A in Account A to Bucket B in Account B. I want to get the same Last Modified dates same can I get that?FollowComment"

Answer: 0Hello ThereYou cannot modify metadata like the Last-Modified date.  See https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingMetadata.html#SysMetadataYou can copy the Last-Modified date to user-defined metadata on each object if you need to retain a record.  Check this previous thread.https://repost.aws/questions/QUIzqoKL9OQZiETz6ZHHSHiQ/is-there-a-way-to-not-change-an-s-3-objects-last-modified-date-when-copying-it-to-a-new-bucketCommentShareEXPERTMatt-Banswered 4 months ago


Question: Temporarily 'pausing' a fleet

"I'm still quite new to gamelift services and spending considerable time testing and learning at my own pace. I'd like to use my free tier hours for this learning stage but if I leave a fleet running for hours during which I'm not tinkering around, it would basically be eating away at those free hours... is there a way to avoid this without having to wait for a fleet to activate every time I want to do some actual online testing (not using gamelift local)? So far I tried to create a fleet of type spot and manually set the instances to 0, however I could still log into game sessions from the client. I think it had to do with having protection set to "full" but I wanted to get some solid direction on here before I get to trying this again.If anyone can point me in the right direction I would appreciate it, perhaps there is an easier way through CLI commands as well?FollowComment"

Answer: "0Hi @REDACTEDUSERSetting the instance count to 0 using the console or UpdateFleetCapacity API, is the correct approach for this.You’re correct that this will not scale-down the fleet if it has an ACTIVE GameSession on it and protectionPolicy is set to FullProtection. You can remove protection from a particular GameSession by calling the UpdateGameSession API or remove protection from all new GameSessions created on a fleet by using the UpdateFleetAttribute APIThese APIs can be called via the AWS CLI - https://docs.aws.amazon.com/cli/latest/reference/gamelift/update-game-session.htmlOne more thing to note, since you mentioned free-tier usage is that GameLift free-tier is only eligible for On-Demand instance usage. So make sure you’re not using SPOT if you wish to use those hourshttps://aws.amazon.com/gamelift/faq/#Q._How_do_I_get_started_with_Amazon_GameLift_for_free.3FCommentSharerePost-User-3818694answered a year ago0Hi @REDACTEDUSERThanks for the detailed explanation and all the helpful links! I was under the impression that I wouldn't have any control over instance count for On-Demand instance usage.CommentSharerePost-User-1971946answered a year ago0Hey @REDACTEDUSERYou are able to control instance counts for on-demand usage the same as spot usage (primarily by the defined fleet capacity).The main difference between the two is that SPOT instances are cheaper, but are subject to the possibility of being interrupted (and shut-down) when AWS needs the capacity back. You can read more about the differences here - https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-ec2-instances.html#gamelift-ec2-instances-spotCommentSharerePost-User-3818694answered a year ago0Thanks @REDACTEDUSERCommentSharerePost-User-1971946answered a year ago"


Question: Make Forecast trigger a Lambda function when done performing task

"Some tasks within Amazon Forecast can take a long time, and I would like it to trigger a Lambda function once it finishes a long task (creating import jobs, training models, making forecasts, etc...) to update my database for exampleHow can I do it?Can I use something like Amazon SNS or SQS?Edited by: luizt on Jan 25, 2021 7:39 AMFollowComment"

Answer: "0Accepted AnswerYou may use a combination of AWS Lambda, AWS Step Functions, and Amazon CloudWatch events  to periodically  check and take the next actions accordingly. Please refer to the blog https://aws.amazon.com/blogs/machine-learning/automating-your-amazon-forecast-workflow-with-lambda-step-functions-and-cloudwatch-events-rule/#:~:text=Machine%20Learning%20Blog-,Automating%20your%20Amazon%20Forecast%20workflow%20with%20Lambda,Functions%2C%20and%20CloudWatch%20Events%20rule&text=Amazon%20Forecast%20is%20a%20fully,requiring%20any%20prior%20ML%20experience and https://aws.amazon.com/blogs/machine-learning/building-ai-powered-forecasting-automation-with-amazon-forecast-by-applying-mlops/ for more details.CommentSharechakravnanswered 2 years ago0You can also consider the following solution implementation:Improving Forecast Accuracy with Machine Learning<https://aws.amazon.com/solutions/implementations/improving-forecast-accuracy-with-machine-learning/ >This solution will update you via an SNS topic when a forecast is complete.CommentSharePaul_Manswered 2 years ago"


Question: Don't know how to cancel services

"Before my free tier expires, I would like to cancel all my hanging service. I tried to find them but got no luck. It's "Amazon Elastic Compute Cloud" and "AmazonCloudWatch". Could someone tell me how do I do that? Thanks.FollowComment"

Answer: "1There is a good guide on identifying services that you want to shut down here: https://aws.amazon.com/premiumsupport/knowledge-center/check-for-active-resources/Once identified, you can use the following guide for details on how to terminate them: https://aws.amazon.com/premiumsupport/knowledge-center/terminate-resources-account-closure/Specifically for Amazon Elastic Compute Cloud (EC2) you can use the AWS Console to view any current instances you have configured by searching for and selecting EC2. As EC2 is regional, you will need to confirm you have no instances in any region - you can use the EC2 Global view  to get a quick overview. In the screenshot below you can see that there is one instance configured in Europe (Ireland) eu-west-1.If you click on this number, you will get a link to the instances which will include resource ID links you can click on to allow you to manage the instance and from here you can click the Instance State button and choose Terminate Instance to shut down any unwanted resources so you are not billed.For a full set of steps to follow to ensure all services relating to EC2 are terminate see here: https://aws.amazon.com/premiumsupport/knowledge-center/delete-terminate-ec2#Delete_or_terminate_EC2_resourcesAmazon CloudWatch collects metrics and data from your other AWS services so once all other services are terminated no additional data or logs should be generated. You can then delete any existing Log Groups from the AWS Console by going to CloudWatch > Log Groups > Select log groups > Actions > Delete log group(s).After you have completed all of the above I would advise closing your AWS account entirely which you can do by following this guide (you can always re-open a new account if you need one at a later date): https://aws.amazon.com/premiumsupport/knowledge-center/close-aws-account/NOTE: There is a 90-day period after closing an account during which any non-terminated services may continue to accrue charges so ensure you have carried out the above steps first.CommentShareCarlPanswered 8 months ago"


Question: AWS Direct Connect traffic from on-prem DC to remote AWS Region

My customer wants to connect datacenter in Germany to us-west-2 AWS. They are considering a Direct Connect partner and the question is how to get traffic into us-west-2.Would Direct Connect Gateway solve this problem? As far as I understand Direct Conncet Gateway will allow on-prem to connect to any region on AWS.Any limitations other than what's called out in FAQ?FollowComment

Answer: "1Accepted AnswerCorrect - a Direct Connect Gateway will allow your customer to connect to VPCs in any AWS Region, via a Direct Connect location in Germany.You can attach up to 10 VGWs per Direct Connect Gateway; more limits information is in our docs here.CommentShareEXPERTmhjworkanswered 4 years ago"


Question: EC2 serving images slow: PPS issue? Bandwith issue? Both of them?

"So, we've inherited an infra not using the best practices from AWS, and there is a single t2.xlarge machine instance serving Images already stored in it and some backend logic.While we are creating a new Infra using S3 + Cloudfront and ASG, we have to save the day until that happens.We're trying to understand how to remediate the issue(s), which are two fold:"Waiting for the response of the server for an image request takes 24.45 seconds"🤯,  and   2) "127kb takes 13.48 seconds to be downloaded" as the following image proves:For the first problem:Looking at CPU Monitor we discarded that to be the problem. It just reaches 7% of CPU at that time.So our guess is that we are being limited by request per second or pps?Inbound packets at that moment: 17K (5min resolution), outbound packets at that moment: 26K (5min resolution).Is there any way to understand if we are being limited somehow due requests or pps? Otherwise CPU would be burning..but seems it is not the case? We couldn't find a standard limit. This is just a normal EC2 instance.For the second problem:Looking at the Network: Input at that moment: 1.29M (5min resolution) Output at that moment: 94.4M (5 min resolution).Seems t2.xlarge has a base bandwidth of 0.75Gbps aka 93Mp/s. Pretty close to the the limit but still there? After all those 94.4 are in 5 mins not per second...Also, by the documentation, t2.xlarge seems to be a Burstable Network instance up to 1.024Gbps and uses credits for that. Where can I found a Monitor of those Network Burstable Credits? Just to check if they were depleted? We can find the CPU Credits graph but not the Network ones?Thanks a lot!FollowComment"

Answer: 0Have you tried turning on Unlimited for the instance to eliminate any bursting limits?CommentShareEXPERTkentradanswered 2 months ago


Question: Amazon DynamoDB across account access with VPC endpoints

"Endpoints for Amazon DynamoDB is documented herehttps://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-ddb.htmlI don't see any mention of setting up cross account access for Endpoints for Amazon DynamoDB, is it supported? How can our customer achieve it?FollowComment"

Answer: "0Accepted AnswerWhat you are trying to do is access a DynamoDB table in a different account.DynamoDB does not support Resource Based Policies (c.f. S3, KMS, SQS to name a few)   the way you access DynamoDB is always with a  principal of the account that provisioned the DynamoDB Table resource. So, by assuming a role in the account with the table you can access it.Here is the process for cross-account role assume:1: Create a role with access to the DynamoDB table in the DynamoDB account. I'll throw a rough example of what the IAM setup would look like below, note the variables you need to fill in in the <> blocks:DynamoDB Role Trust Policy:{ "Version": "2012-10-17", "Statement": {     "Effect": "Allow",     "Action": "sts:AssumeRole",       "Principal": {         "AWS": "arn:aws:iam::<AppAccountID>:root"       }   } } DynamoDB Role IAM Policy:{     "Version": "2012-10-17",     "Statement": [         {             "Effect": "Allow",             "Action": [                 "dynamodb:List*",                 "dynamodb:DescribeReservedCapacity*",                 "dynamodb:DescribeLimits",                 "dynamodb:DescribeTimeToLive"             ],             "Resource": "*"         },         {             "Effect": "Allow",             "Action": [                 "dynamodb:BatchGet*",                 "dynamodb:DescribeStream",                 "dynamodb:DescribeTable",                 "dynamodb:Get*",                 "dynamodb:Query",                 "dynamodb:Scan",                 "dynamodb:BatchWrite*",                 "dynamodb:CreateTable",                 "dynamodb:Delete*",                 "dynamodb:Update*",                 "dynamodb:PutItem"             ],             "Resource": "arn:aws:dynamodb:*:*:table/<TableName>"         }     ] }2: Create a role in the other account that is allowed to assume the DynamoDB role:IAM Policy for App Role {   "Version": "2012-10-17",   "Statement": {     "Effect": "Allow",     "Action": "sts:AssumeRole",     "Resource": "arn:aws:iam::<DynamoDBAccountID>:role/<DynamoDBRoleName>"   } }3: Assume the role in your app. Here is an example in Python:AssumeRole.py`import boto3def assumerole(account, rolename):sts_client = boto3.client('sts')# Call the assume_role method of the STSConnection object and pass the role# ARN and a role session name.assumedRoleObject = sts_client.assume_role(    RoleArn="arn:aws:iam::" + account + ":role/" + rolename,    RoleSessionName=account + "-" + rolename.replace('/',''))return assumedRoleObject`4: Run your DynamoDB commands with the assumed role's credentialsAs for the networking side, just make sure your VPC in the application account has a DynamoDB endpoint and you should be good to go.CommentShareAWS-User-7543292answered 4 years agorePost-User-4192123 5 months agoBut this doesn't answer the question for cross-account VPC endpoint.e.g. I have a dynamo DB in account A and the AWS lambda function in account B.Created a VPC endpoint for dynamo DB in account B.I have created a cross-account role in Account A for Account B, to access dynamo DB (Created in Account A) in Account B via the AWS Lambda function.The cross-account role contains the following policy with VPC endpoint condtion (created in Account B) conditions.{    "Version": "2012-10-17",    "Statement": [        {            "Sid": "VisualEditor0",            "Effect": "Allow",            "Action": "dynamodb:Scan",            "Resource": "*",            "Condition": {                "StringEquals": {                    "aws:SourceVpce": "vpce-xxxxxxxxxxxx"                }            }        }    ]}The question is can we set up a cross-account VPC endpoint?Share"


Question: Easy Interactive Python - Is there something akin to VS Code's Shift+Enter for sending code to ipython terminal in Cloud9?

"I find myself continually migrating further into the AWS eco-system.  I would love to make Cloud9 a larger part of my workflow for ease of integration with both GIT and Lambda functions.  As part of my writing Python scripts, I would love to interactively run snippets of scripts and have code sent to an ipython (or equivalent) terminal for interactive executuion.  Is this possible out of the box?  or by adding some keyboard shortcut?FollowComment"


Question: Invalid MFA Code

"hi i'm unable to set virtual MFA, i've tried Authy and Google Authenticator. Both does not seem to work! Scanned th eQR code and keyed in the pin code twice but it does not authenticate.  i can assure that the code is correct. Any ideas?FollowComment"

Answer: "2Accepted AnswerHi, when you're setting up the MFA, it should ask you for 2 different codes, I guess you're copying only the first code twice. Try to re-assigned the MFA, scan the code and wait for the 2 different codes to see if that works.Cheers!-D. CommentSharedominguezdanielanswered a year agorePost-User-6780549 a year agothanks that worked!Share0I can't say for sure what the issue is, but I'd recommend first trying these steps, if you haven't already:https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_mfa_lost-or-broken.htmlIf you're still stuck, you can reach our MFA team for assistance:go.aws/contact-mfa— Chrissy B.CommentShareEXPERTAWS Support - Chrissyanswered a year ago"


Question: Expired s3 Backup Recovery Point

"I configured AWS Backup in CDK to enable continuous backups for s3 buckets with this configuration :backup rule : with enableContinuousBackup: true and deleteAfter 35 daysbackup selection : with resources array having the ARN of the bucket directly set and roles setup following the docs of aws : https://docs.aws.amazon.com/aws-backup/latest/devguide/s3-backups.htmlLater I deleted the stack in CDK and ,as expected, all the resources were deleted except for the vault that was orphaned.The problem happens when trying to delete the recovery points inside the vault, I get back the status as Expired with a message Insufficient permission to delete recovery point.I am logged in as a user with AdministratorAccessI changed the access policy of the vault to allow anyone to delete the vault / recovery pointeven when logged as the root of the account, I still get the same message.For reference, this is aws managed policy attached to my user : AdministratorAccess , it Allows (325 of 325 services) including AWS Backup obviously.Here's the vault access policy that I set :{    "Version": "2012-10-17",    "Statement": [        {            "Effect": "Allow",            "Principal": {                "AWS": "*"            },            "Action": [                "backup:DeleteBackupVault",                "backup:DeleteBackupVaultAccessPolicy",                "backup:DeleteRecoveryPoint",                "backup:StartCopyJob",                "backup:StartRestoreJob",                "backup:UpdateRecoveryPointLifecycle"            ],            "Resource": "*"        }    ]}Any ideas what I'm missing here ?**Update ** :A full week after creating the backup recovery point, and still unable to delete it.I tried deleting it from the AWS CLI but no luck.I tried suspending the versioning for the bucket in question and tried, but no luck too.FollowCommentzazik a year agoHave a similar issue:First I created a plan manually for continuous S3 backup just to test how it works. It was using the Default vault.Then, after the test was successful, I deleted the plan together with its resource assignment, rule, and also an automatically created IAM role (AWSBackupDefaultServiceRole). Simply to remove all test artifacts.Then I created a new backup plan via CDK. It targets another (newly created) vault. And uses another (newly created) IAM role.Unfortunately, it fails to create a recovery point - the status is Expired with message saying, that this S3 bucket is already configured for a continuous backup in another vault.So, I tried to remove the recovery point, created by a manually created backup plan before. And it fails with the same error as you have described. I've tried multiple things to overcome the problem, but none of them helped:adding an explicit policy to the vault to allow recovery points deletionadding AWSBackupFullAccess policy to my IAM user"restoring" the default AWSBackupDefaultServiceRole IAM role, that I removed at step 2; and also extending it with a AWSBackupFullAccess permission.This is now a showstopper for me, because the the manually created backup plan has already been deleted, but the new one has not yet started to work properly.SharerePost-User-8589349 a year agoWas a solution for this ever found? What happens after "delete after" date is reached/passed?Share"

Answer: "0Dear User,Thanks for posting a query on re:post.Just wanted to share that the recovery point that is created by AWS Backup cannot be deleted in the console window of the protected resource. You can delete them on the AWS Backup console by selecting them in the vault where they are stored and then choosing Delete.Let us know if this information helped in resolving your problem.Thanks.Regards,nikhilCommentShareAWS-User-8643694answered 5 months ago"


Question: SES Open Events - Getting Duplicate events from cloudfront IPs

"We have been having an issue where we receive multiple Open Events via SNS. These events happen withing a split second of each other, and all come from cloud watch ip addresses. This doesn't appear to happen for every recipient, but it loooks to be around 50%.Below are events we have received (with sensitive data removed) to give you an idea of what we're seeing.Why are there multiples happening?Why are they in such quick succession?Why are they reporting cloudfront IP addresses?Additional InfoWe are sending from a domain setup in cloudfrontWE only receive a single Sent and Delivered Event.Click events can exhibit this behaviour as wellEvent 1{"eventType":"Open","mail":{"timestamp":"2022-01-31T21:00:01.769Z","source":"xxxxx","sendingAccountId":"xxxxx","messageId":"0108017eb1effb69-5ce6a9ca-e8f4-4d57-9aa8-1d6d55e89433-000000","destination":["xxxxx"],"headersTruncated":false,"headers":[{"name":"From","value":"xxxxx"},{"name":"Date","value":"Tue, 01 Feb 2022 08:00:01 +1100"},{"name":"Subject","value":"xxxxx"},{"name":"Message-Id","value":"<YNOLANVQYFU4.CDP4G8YK0B121@xxxxx>"},{"name":"To","value":"xxxxx"},{"name":"MIME-Version","value":"1.0"},{"name":"Content-Type","value":"multipart/mixed; boundary=\"=-bSeeSpdqGZ87P9P4desJPg==\""}],"commonHeaders":{"from":["xxxxx"],"date":"Tue, 01 Feb 2022 08:00:01 +1100","to":["xxxxxx"],"messageId":"0108017eb1effb69-5ce6a9ca-e8f4-4d57-9aa8-1d6d55e89433-000000","subject":"xxxxxx"},"tags":{"ses:operation":["SendRawEmail"],"ses:configuration-set":["xxxxxx"],"ses:source-ip":["203.55.35.200"],"ses:from-domain":["xxxxxx"],"ses:caller-identity":["xxxxx"]}},"open":{"timestamp":"2022-01-31T21:14:02.524Z","userAgent":"Mozilla/4.0 (compatible; ms-office; MSOffice 16)","ipAddress":"64.252.184.86"}} Event 2{"eventType":"Open","mail":{"timestamp":"2022-01-31T21:00:01.769Z","source":"xxxxx,"sendingAccountId":"xxxxx","messageId":"0108017eb1effb69-5ce6a9ca-e8f4-4d57-9aa8-1d6d55e89433-000000","destination":["xxxxx"],"headersTruncated":false,"headers":[{"name":"From","value":"xxxxx"},{"name":"Date","value":"Tue, 01 Feb 2022 08:00:01 +1100"},{"name":"Subject","value":"xxxxx"},{"name":"Message-Id","value":"<YNOLANVQYFU4.CDP4G8YK0B121@xxxxxx>"},{"name":"To","value":"xxxxxx"},{"name":"MIME-Version","value":"1.0"},{"name":"Content-Type","value":"multipart/mixed; boundary=\"=-bSeeSpdqGZ87P9P4desJPg==\""}],"commonHeaders":{"from":["xxxxxx"],"date":"Tue, 01 Feb 2022 08:00:01 +1100","to":["xxxxxx"],"messageId":"0108017eb1effb69-5ce6a9ca-e8f4-4d57-9aa8-1d6d55e89433-000000","subject":"xxxxx"},"tags":{"ses:operation":["SendRawEmail"],"ses:configuration-set":["xxxxx],"ses:source-ip":["203.55.35.200"],"ses:from-domain":["xxxxx"],"ses:caller-identity":["xxxxx"]}},"open":{"timestamp":"2022-01-31T21:14:02.601Z","userAgent":"Mozilla/4.0 (compatible; ms-office; MSOffice 16)","ipAddress":"64.252.184.77"}} ```~~~~Event 3Much the same, but with timestamp: 2022-01-31T21:14:05.990Zipaddress: 64.252.184.74useragent: Mozilla/4.0 (compatible; ms-office; MSOffice rmj)FollowCommentAWS-User-9819885 a year agoThis is still occurring, any ideas out there?I'm getting flooded with click and open events. In some scenarios a single recipient has 97 opened events, and they all come from cloudfront ip addresses. So I am curious to know what's causing this.SharerePost-User-9648090 6 months agodid you figure out why this is happening? have the same issue...Share"


Question: Getting error - The authorization header is malformed; the region 'us-east-1' is wrong; expecting 'ap-south-1' (Service: Amazon S3; Status Code: 400; Error Code: AuthorizationHeaderMalformed)

"I'm trying to get region-wise buckets using getBucketLocation() method in AWS S3 SDK,  for all the regions it returns proper outputs but for the region us-east-1 it throws the error.Tried few solutions such as changing the bucket name, deleting the bucket etc. but still the error persists.FollowComment"

Answer: "0Accepted AnswergetBucketLocation() returns a region ID like "af-south-1" for all regions except us-east-1, when it returns null.  Are you sure it's getBucketLocation() returning the error rather than something using its output that's getting tripped up by the null?CommentShareEXPERTskinsmananswered 4 months ago0I debugged the code and as per you were saying getBucketLocation() returns "US" for us-east-1, so I was getting that error.Problem has been resolved.Thank you.CommentSharekalyani_wanianswered 4 months ago"


Question: Uploading image file to S3

"My image files are automatically converting into octet-stream while uploading to S3 via multer-s3 with node js, API gateway and lambda.  It was working fine when my node app was on vercel. What possibly could have gone wrong?FollowComment"

Answer: "0Check this out. By default the content type is set to application/octet-stream. If you want multer-s3 to automatically find the content-type of the file, use the multerS3.AUTO_CONTENT_TYPE constant.https://www.npmjs.com/package/multer-s3-v2#setting-custom-content-typeCommentSharesupriya_awsanswered 2 months agorePost-User-7772903 2 months agoHi, I am already using multerS3.AUTO_CONTENT_TYPE and it was working fine until now but it’s not working when I moved the node app to Api gateway and lambda.Share"