Question: Why do we charge for data transfer out but not for in?

"Out of curiosity, what are the motivations (some of them might be obvious but I don't want assume too much and leave out other points) to charge for transfer out only? Is it possible there are some technological implications as well?FollowComment"

Answer: "0Accepted AnswerIn the early days of the Internet (think 25 years ago), there were effectively three kinds of networks:Content providers / Hosters: Would host content to be accessed, e.g. websitesContent consumers (eyeball networks): Home or company networks were end-users would reside that consume this content.ISPs (today called transit provider) connecting the two above together.Keep in mind that at this time content would primarily flow into one direction. This pre-dates concepts like Peer-to-Peer or platforms like Youtube, where users upload masses of content every minute. But it is also the time, when ADSL was invented. Keep in mind that the "A" in ADSL stands for "Asymmetric" because the target group of that product (home users and small businesses) was expected to download more than they would upload.The rest of the links - and especially the ones connecting content providers to other networks - were symmetric. While these links were heavily used by content providers in the outbound direction (to send out all this content), they were barely utilized in the inbound direction.ISPs would charge per bidirectional capacity (at 95th percentile) and therefore it would make sense to charge content providers only for outgoing traffic.This principle just stuck throughout the industry since then and never changed, despite so many other things around the Internet changing.A good summary of this can also be found here: https://medium.com/google-cloud/why-ingress-traffic-to-the-cloud-is-free-79dc217b916CommentShareEXPERTChrisE-AWSanswered 3 years ago"


Question: Questions about session time in AWS Client VPN

"Hi,First of all, Thank you for reading my question.When I screen lock my laptop or When I away from my laptop about 1 hour, and come back to laptop, aws client vpn is disconnected.The session timeout setting is 12 hours, but in reality, even if I leave the seat for about 1 hour, the connection is lost.Does it automatically disconnect when there is no network traffic? If yes, How do I disable it?FollowComment"

Answer: 0Hello and thanks for writing in.AWS Client VPN doesn't automatically disconnect when there is no network traffic. It tries to reconnect and repeated reconnection attempts are slowed down after 5 retries per remote by doubling the wait time after each unsuccessful attempt. You can increase this timer using "connect-retry" directives in .ovpn file.connect-retry 300Wait 300 seconds between connection attempts (default=5)You can also try persist-tun and persist-key OpenVPN directives in .ovpn file. These options persist the tun device and the authentication keys across restarts (either caused by user or ping-restarts). The results may vary depending on the OS and the actual client in use.persist-tunpersist-keyRest I would recommend to open a support case and share OVPN logs with engineers. OVPN logs would help to understand the reason behind disconnect.To know more supported OVPN derivtais you can refer below document:https://docs.aws.amazon.com/vpn/latest/clientvpn-user/connect-aws-client-vpn-connect.htmlCommentShareSUPPORT ENGINEERSunny_Banswered 6 months ago


Question: How to allowlist sagemaker IP?

"I want to allowlist the Sagemaker studio IP so people can access certain allowlisted services from Sagemaker. I created a sagemaker domain in my private subnet of my VPC, so theoretically it should use the IP of the associated NAT gateway, right? But I see a different IP 🤔FollowComment"

Answer: "0Accepted AnswerI should've read through my terraform code that created Sagemaker more carefully, I specified a VPC so I thought it would be in the VPC but it turns out I needed to specify the AppNetworkAccessType too.bad:resource "aws_sagemaker_domain" "my_domain" {  domain_name = var.domain_name  auth_mode   = "IAM"  vpc_id      = var.vpc_id  subnet_ids  = var.subnet_idsgood:resource "aws_sagemaker_domain" "my_domain" {  domain_name = var.domain_name  auth_mode   = "IAM"  vpc_id      = var.vpc_id  subnet_ids  = var.subnet_ids  app_network_access_type = "VpcOnly"CommentSharecaleb_ispotanswered 4 months ago0When you create a SageMaker Studio in a private subnet, it is associated with a NAT gateway that allows the Studio to access the internet. However, the IP address of the NAT gateway is not typically used for inbound connections to the Studio. Instead, the IP address of the VPC endpoint for SageMaker Studio is used for inbound connections.The VPC endpoint for SageMaker Studio is a highly available, scalable, and secure connection to the SageMaker Studio service without the need to traverse the internet or a NAT gateway.Therefore, if you want to allowlist the IP of the SageMaker Studio, you would need to whitelist the IP address of the VPC endpoint for SageMaker Studio, rather than the IP address of the NAT gateway.You can find the IP address of the VPC endpoint for SageMaker Studio in the VPC console under "Endpoints" tab, or you can use aws ec2 describe-vpc-endpoints command to retrieve information about your VPC endpoint.It is also possible to use security groups or Network ACLs to specify allowlisted IPs that can access the VPC endpoint.CommentSharejayamaheizenberganswered 4 months agocaleb_ispot 4 months agoInstead, the IP address of the VPC endpoint for SageMaker Studio is used for inbound connections.Is the IP address of the VPC endpoint also used for outbound connections to public websites?You can find the IP address of the VPC endpoint for SageMaker Studio in the VPC console under "Endpoints" tab, or you can use aws ec2 describe-vpc-endpoints command to retrieve information about your VPC endpoint.I never created a VPC endpoint for Sagemaker studio. I don't see any relevant endpoints in that tab.It might help if I rephrased my question - when I open a studio instance, and curl ifconfig.me to see my IP, where does that IP come from?ShareKai_Z 4 months agoRun this command to check the AppNetworkAccessType of your domain. Please replace the "<DOMAIN_ID>" with your actual domain id, which starts with "d-".aws sagemaker describe-domain --domain-id <DOMAIN_ID> | jq -r ".AppNetworkAccessType"If PublicInternetOnly, SageMaker Studio provides a network interface that allows communication with the internet through a VPC managed by SageMaker. That IP is from the SageMaker Service AWS Account.If VpcOnly and you want to allow internet access, you must use a NAT gateway with access to the internet, for example through an internet gateway. That IP is the IP of the NAT gateway. I have confirmed that in my own account. You can check the IP of the NAT gateway with this command, and compare with the output from "curl  ".aws ec2 describe-nat-gateways | jq -r ".NatGateways[0].NatGatewayAddresses[0].PublicIp"Please refer to this document [1] on how SageMaker communicates with the Internet in different modes.[1]  https://docs.aws.amazon.com/sagemaker/latest/dg/studio-notebooks-and-internet-access.htmlShare"


Question: Cannot find package '@aws-sdk/client-scheduler error

"Hello,this minimal Nodejs 18 lambda (from https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-scheduler/index.html)import { SchedulerClient, CreateScheduleCommand } from "@aws-sdk/client-scheduler";export const handler = async(event) => {    // TODO implement    const response = {        statusCode: 200,        body: JSON.stringify('Hello from Lambda!'),    };    return response;};leads to this error:{"errorType": "Error","errorMessage": "Cannot find package '@aws-sdk/client-scheduler' imported from /var/task/index.mjs","trace": ["Error [ERR_MODULE_NOT_FOUND]: Cannot find package '@aws-sdk/client-scheduler' imported from /var/task/index.mjs","    at new NodeError (node:internal/errors:393:5)","    at packageResolve (node:internal/modules/esm/resolve:865:9)","    at moduleResolve (node:internal/modules/esm/resolve:958:20)","    at moduleResolveWithNodePath (node:internal/modules/esm/resolve:909:12)","    at defaultResolve (node:internal/modules/esm/resolve:1173:79)","    at nextResolve (node:internal/modules/esm/loader:163:28)","    at ESMLoader.resolve (node:internal/modules/esm/loader:841:30)","    at ESMLoader.getModuleJob (node:internal/modules/esm/loader:424:18)","    at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:76:40)","    at link (node:internal/modules/esm/module_job:75:36)"]}How to fix it?ThanksFollowComment"

Answer: "1Accepted AnswerHi,You can see supported runtimes here: https://docs.aws.amazon.com/lambda/latest/dg/lambda-runtimes.htmlFor node18, latest sdk version is 3.188.0.Client-scheduler seems to be introduced in 3.208.https://github.com/aws/aws-sdk-js-v3/releases?page=6.Thus you ll need to install it explicitly, hope it helpsCommentShareEXPERTalatechanswered 4 months agoSylvainLG 4 months agoThus you ll need to install it explicitlyHow can I do that? ThanksSharealatech EXPERT4 months agoYou need to npm install the. Library in your package.json like npm install @aws-sdk/client-scheduler —save.You need to include the node modules folder in the uploaded zip: https://docs.aws.amazon.com/lambda/latest/dg/nodejs-package.html#nodejs-package-dependenciesShare1Same problem, please update sdk version in runtime soon!ThanksCommentSharerePost-User-5556195answered 2 months ago0This creates a pain from being able to to exclude @aws-sdk* in CDK nodeJSFunction if using Node 18 but having to make an exception for this one library.Also want to point out that Bundling Options is also misleading in this regard.CommentSharerePost-User-8992543answered 2 months ago"


Question: How to replicate REPLICA object to a destination bucket?

"Hi, I am trying to replicate objects that where replicated from a different bucket to another new bucket. I know that I can replicate to multiple buckets from one source bucket. But can this be done like a chain relication?I have done some research and I have only found this AWS documentation https://docs.aws.amazon.com/AmazonS3/latest/userguide/setting-repl-config-perm-overview.html#receiving-replicated-objects. However, it does not work.My ScenarioI have Bucket-1, Bucket-2 and Bucket-3.Bucket-1 is in a different AWS Account. The others are in the same account but different Regions.When uploading an object to Bucket-1, it gets replicated to Bucket-2 correctly.I've created the Replication rule on Bucket-2 to replicate to Bucket-3 and it works for direct uploads to this bucket. However, replicated objects does not get replicated to Bucket-3.I've followed the steps listed in the linked document, which states to add the following generated policy to the destination Bucket Policy (Bucket-3){    "Sid": "S3PolicyStmt-DO-NOT-MODIFY",    "Effect": "Allow",    "Principal": {        "AWS": "arn:aws:iam::AWS-ACCOUNT:root"    },    "Action": [        "s3:GetBucketVersioning",        "s3:PutBucketVersioning",        "s3:ReplicateObject",        "s3:ReplicateDelete"    ],    "Resource": [        "arn:aws:s3:::Bucket-3",        "arn:aws:s3:::Bucket-3/*"    ]}FollowComment"

Answer: "0Accepted AnswerReplicate objects are not replicated to another bucket. See: What isn't replicated with replication configurations?.Objects in the source bucket that are replicas that were created by another replication rule. For example, suppose you configure replication where bucket A is the source and bucket B is the destination. Now suppose that you add another replication configuration where bucket B is the source and bucket C is the destination. In this case, objects in bucket B that are replicas of objects in bucket A are not replicated to bucket C.To replicate objects that are replicas, use Batch Replication. Learn more about configuring Batch Replication at Replicate existing objects.CommentShareEXPERTkentradanswered 7 months agoEXPERTTushar_Jreviewed 7 months agoHash 7 months agoThank you.Share"


Question: Route 53 and external mail server - SPF

HelloI got a problem with my emails. A lot of them go directly in my customers spam folder.I need to set up the SPF record. But my mail server is on a different hosting. Does anyone have experience to set up SPF correctly with external MX?FollowComment

Answer: "1SPF records can contain multiple include statements. If your domain already has an SPF record, you can add an include statement for Amazon SES by using the following format:"v=spf1 include:_spf.google.com include:amazonses.com ~all"CommentShareAWS-User-4269328answered a year ago1You can use tools like https://mxtoolbox.com/SPFRecordGenerator.aspx to autogenerate the SPF recored, it will be helpful for you to understand the basics of the Sender Policy Framework and how to use it from these links:https://en.wikipedia.org/wiki/Sender_Policy_Frameworkhttps://support.dnsimple.com/articles/spf-record/In addition to the SPF recored - https://senderscore.org/ or https://www.mail-tester.com/ are very useful tools to check you email score and provide you with additional recommendations for improvement.CommentSharec3nIvoanswered a year ago"


Question: ATHENA ERROR QUERY

"Hi ,I ran a query using athena and this was the error. "SYNTAX_ERROR: line 2:6: Table awsdatacatalog.crawler_waf.waf_v2_logs does not exist". Has anyone seen this beforeRegardsFollowComment"

Answer: "0Hi,As mentioned in the error, this error generally occurs when the table that is being queried is not present in the database. Please recheck if the table : waf_v2_logs is present in the database : crawler_waf . Also since the table names are case sensitive, please check for the same and if any spelling mistakes, extra spaces etc.,Thank you.CommentShareSUPPORT ENGINEERSaiIndira_Chanswered 8 months agoEXPERTFabrizio@AWSreviewed 8 months ago"


Question: Does Billing for FSx for Lustre start during "CREATING" Status or when it enters "AVAILABLE" status?

"I have a customer looking to use FSx for Lustre as temporary storage for their SageMaker training jobs. They plan on using FSx integration with S3 to present their dataset in S3 on the shared file system.They have a large dataset (1billion images) in S3 and found that the file system spends a long time in "CREATING" state, while it presumably imports the metadata for all the objects in S3.When does billing in FSx for Lustre start? Does it start when the file system is in "CREATING" status? Or does it only start when it enters "Available" status?FollowComment"

Answer: 0Accepted AnswerDuring the CREATING state we provision file system resources and import metadata for S3-linked file systems. Customers are billed as soon as file system resources have been provisioned (which usually takes a few minutes). The file system remains in the CREATING state until metadata has been imported for all objects in the linked S3 bucket. Importing metadata for lots of files can take some time after which the file system will enter the AVAILABLE state.CommentShareJordan_Danswered 3 years ago


Question: "Route53 - alias to cloudfront, distribution not listed"

As I understand I should be able to use an alias to point the apex of my domain to a Cloudfront distribution.  When I attempt this I get the following message and no list of distributions:An alias to a CloudFront distribution and another record in the same hosted zone are global and available only in US East (N. Virginia).The message isn't particularly clear.  CloudFront distributions are global by default so I don't know what needs to change to allow this.FollowComment

Answer: "2Accepted AnswerHi ThereIn addition to Abhishek's answer, please also Check CloudFront distribution namesBefore routing to CloudFront distributions, be sure that the name of the resource record you create matches a CNAME in the CloudFront distribution.For example, if the record name is example.com, your CloudFront distribution must use example.com as one of its alternate domain names.See https://aws.amazon.com/premiumsupport/knowledge-center/route-53-no-targets/CommentShareEXPERTMatt-Banswered 8 months agorePost-User-2114727 8 months agoThanks, the confusion was that CloudFront system indicates not to specify apex for CNAME, but in the case of use with a Route53 alias it is correct.Share1Could you please make sure that you did the belowAliasYou must create an Alias record for the CloudFront distribution to work.Value/Route traffic toChoose Alias to CloudFront distributions. The us-east-1 Region is selected by default. Choose the domain name that CloudFront assigned to the distribution when you created it. This is the value that you got in step 1.The detailed steps are outlined under https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.htmlCommentShareEXPERTAbhishek Sonianswered 8 months agorePost-User-2114727 8 months agoThanks, the confusion was that CloudFront system indicates not to specify apex for CNAME, but in the case of use with a Route53 alias it is correct.Share"


Question: Horrible proctoring experience

"I want to report an extremely disappointing  experience giving the AWS Cloud practitioner exam on 12/30/2022. Apologies if this is not the right place to post this experience but i wanted to post anyways. I appeared for AWS cloud practitioner exam on 12/30/2022. I would like to add that i took up a take from home test. I encountered one of the most torchuring proctoring experiences ever. Right from having to show around the room where i was taking the exam from. Despite panning the webcam very slowly all across the room very carefully the proctor was very very harsh and made me show around the room 1000 times more. This is not only frustrating but just adds more stress to people who have exam anxiety.Besides that i could not even move my head around to the even read the question properly. I would immediately see an alert that the exam would end if i moved my head. How can one expect a person to sit like a statue without being able to move their heads even to read the question. This is just impractical. After completing the exam, I submitted the exam for the result and was very happy to see the screen "Grade: PASS. Congratulation! You have successfully passed the AWS .... Within 5 business days, you will receive an email stating your exam result ......"  . But my overall experience with proctoring was so bad that it gave me a bad headache for the rest of the day.I really do want to do more certifications but i would never take it from home ever again solely due to the terrible PSI proctoring experience, Disappointed!!FollowComment"

Answer: "0Accepted AnswerPlease submit a ticket with the AWS customer service team in the link above. They will be able to review the circumstances and determine if a voucher will be provided.CommentShareNelliT-AWSanswered 5 months agorePost-User-0396422 5 months agoSure i have submitted using the customer support as suggested.Thanks!Share0Hello,I'm sorry you had a poor proctor experience. Fortunately, 12/31/22 was our last day using PSI as a testing partner. All exams starting 1/1/23 are delivered exclusively through Pearson Vue and we will share this feedback so that there is internal visibility.CommentShareSUPPORT ENGINEERNguyen_Manswered 5 months ago0Congrats on passing your exam, and thank you for sharing this feedback with us. If you wish to submit any more details of your experience, then submit a ticket to the AWS Training & Certification customer support team, please allow at least 48 hrs to get a response.CommentShareNelliT-AWSanswered 5 months ago0Hi Nyugen,Thank you very much for quickly responding and considering my concern. Greatly appreciate the personal attention. Very glad it is not PSI moving forward, this does make me less stressed. thank you!Thank you,KeerthiCommentSharerePost-User-0396422answered 5 months ago0Also i would like to request some kind of a refund or amazon coupon for the inconvenience caused. To help me build trust with AWS and aid me in motivating myself to do more certifications. thank you!CommentSharerePost-User-0396422answered 5 months ago"


Question: How can I set variables to make signature at go-sdk??

I am using aws-sdk-go in goLang.And my goal is to make signature of JWT from http header.I guess if use GetSignature we can do that.. But I cannot convince which variable will be fit.May I ask you about that?Thank you.FollowComment


Question: Querying DynamoDB - results in the wrong order

"I have a table where the primary index is keyed on attributes called "PK" and "SK".Currently, there are three items in the tableWhen I run a query on the table, using the following  C# code (where searchTS = "DASH-20221209-23:32:11")I would expect to get the 3rd item in the table (as that is the one with the value of SK <= the searchTS value). I actually end up with the 2nd item.            DynamoDBContext context = new DynamoDBContext(_client);            var searchTS = $"DASH-" + DateTime.Now.ToString("yyyyMMdd-HH:mm:ss");            QueryFilter qf = new QueryFilter();            qf.AddCondition("PK", ScanOperator.Equal, "STAT");            qf.AddCondition("SK", ScanOperator.LessThanOrEqual, searchTS);            var opConfig = new DynamoDBOperationConfig()            {                OverrideTableName = "ClinMod-Analytics",                BackwardQuery= true                            };            var queryConfig = new QueryOperationConfig()            {                Filter = qf,                Select = SelectValues.AllAttributes,                Limit= 1,            };            var docs = await context.FromQueryAsync<Analytics>(queryConfig, opConfig).GetNextSetAsync();            return docs[0];I have tried flipping the value of BackwardQuery but that does not appear to change anything.What am I doing wrong?FollowComment"

Answer: "0But don't both the 2nd and 3rd item match your condition of <= DASH-20221209-23:32:11?  Given you've said LImit =1, it seems reasonable that just the 2nd item is returned?Sorry if I've misunderstood!CommentShareEXPERTskinsmananswered 6 months agoRichard Kavanagh 6 months agoThanks for the reply. Yes, I was expecting just one record back (as per the LIMIT) but I am trying to control which record I get back. As I am using the index I assumed I would get them back in the order implied by the index, instead, it seems that I am getting the record back in the order they were added to the table.Shareskinsman EXPERT6 months agohttps://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Query.html says "Query results are always sorted by the sort key value" so yes, you get the records back in the order implied by the index.  You're filtering for less than or equal to "DASH-20221209-23:32:11" and two records match - "DASH-20221209-22:04:01" and "DASH-20221209-22:52:26".  In sorted order "DASH-20221209-22:04:01" is first, and this is the one you said you're getting back.  Looks OK I think!To get the other record first, note that developer guide says "To reverse the order, set the ScanIndexForward parameter to false".  You'll have to look up how this is surfaced in the C# SDK though.Share"


Question: Validation error in Lambda

"Hi there,in a step function tutorial by AWS (https://docs.aws.amazon.com/step-functions/latest/dg/tutorial-get-started-parallel-tasks.html) I am asked to create a Lambda function in Node.js 16.x with this code:const ssnRegex = /^\d{3}-?\d{2}-?\d{4}$/;const emailRegex = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$/;class ValidationError extends Error {constructor(message) {super(message);this.name = "CustomValidationError";}}exports.handler = async (event) => {const {ssn,email} = event;console.log(SSN: ${ssn} and email: ${email});const approved = ssnRegex.test(ssn) && emailRegex.test(email);if (!approved) {    throw new ValidationError("Check Identity Validation Failed");}return {    statusCode: 200,    body: JSON.stringify({        approved,        message: `Identity validation ${approved ? 'passed' : 'failed'}`    })}};The test returns an error though:Response{"errorType": "CustomValidationError","errorMessage": "Check Identity Validation Failed","trace": ["CustomValidationError: Check Identity Validation Failed","    at Runtime.exports.handler (/var/task/index.js:21:15)","    at Runtime.handleOnceNonStreaming (file:///var/runtime/index.mjs:1085:29)"]}Can someone help me?FollowComment"

Answer: "0Test with these sample values, it should work -ssn - 111-11-1111email - fname.lname@domain.comCommentShareVaibhav Janswered 2 months agoMoe 2 months agothank you. I don't get where to put the sample values though, sorry. Are sample values necessary to test a lambda function?ShareVaibhav J 2 months agoYes, they're required. When you test the Lambda function from AWS console, you'll have to pass a test event, the event should look like this -{ssn: "111-11-1111",email:"fname.lname@domain.com"}Share"


Question: Why AWS RDS service needs two subnets from different AZs

As part of our project we are using AWS RDS PostgreSQL service. While creating RDS service AWS mandated to create two sub-nets from different AZ's (ex: us-west-2a and us-west-2b). But we have only one sub-net. Is there any way to overcome this problem.FollowComment

Answer: "1RDS is built to be Multi-AZ by design, as the best practice for any production environment must use this approach. This will allow you to be sure that in case of an event in one AZ your database will be able to fail-over to the second one. I know that probably you are trying to deploy just one single RDS instance in a single AZ, but the system requires to configure two subnets, as maybe in the future you want to transform your RDS instance in a Multi-AZ instance, this is the reason why you need always two AZ.Defining Subnets is not a process that have any cost, some times the cost is related to IP address availability, but nothing else. So, i am afraid you will have to setup two subnets in two different AZ.All this is explained in AWS documentation here: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.WorkingWithRDSInstanceinaVPC.htmlbest.CommentShareJuanEn_Ganswered a year agoAWS-User-8752529 a year agoThanks for the nice explanation. Is there any way I can create RDS service using sub-nets created in the Single AZ.ShareAWS-ADolganov a year ago@AWS-User-8752529 You will need to create the subnets in different AZs.Share0That seems to be the common pattern for some other resources. Let's say your RDS cluster contains 2 db instances, one for writer and the other for reader. For better availability, they better be located in different zones from each other.CommentShareAWS-User-2172324answered a year ago"


Question: Codebuild not inflating packer

"I have having an issue with Codebuild. When I run my packer build in my sandbox the code and buildspec works 100%. When I run it in my clients test environment, packer won't inflate and instead gives me an issue.What I am not understanding is why won't the specific build command for unzipping packer work in the clients environment when it works in mine. I have tried unzip packer.zip, unzip -o packer.zip, unzip -f packer.zip and it will only work in my sandbox environment.FollowComment"

Answer: "0That's part of what I am not understanding. When I run this in my sandbox the code works without issue, downloads and unzips packer, then validates and builds my ami based off my json code. But when I run the exact same code in the clients environment, which I am using the same environment configuration (amazon linux 2 image, standard runtime/image, etc. ), I get the error. It's a brand new image that I am creating during the build so where would packer already be installed?  Why would there be an error on the client's side as if packer is already installed on the image but not give me an error when running in my sandbox?If I were to try to find out where/if packer is already installed, what would be the best way to do that?CommentSharerePost-todd-triumphanswered 3 months agoSyd 3 months agoHi,It's not necessary that packer is installed but a empty folder with the name packer is sufficient to cause the issue you mentioned. You can try to do a ls on the directory before uncompressing the archive file to verify that this is indeed the case. As an alternate, you can try to unzip the file into a different directory using the -d option.With the available information, its tough to point why you has a mismatch in behaviour on sandbox vs client environment.--SydShare0Hi,Can you verify if there is already a directory by the name packer in the location where you are trying to extract the packer archive? The error seems to imply that there is an object - directory by the name packer and hence the archiving tool cannot create a file by the name packer--SydCommentShareSydanswered 3 months ago"


Question: Is AWS Linux / Linux 2 vulnerable to CVE-2021-4034?

"I noticed that our AWS Linux installations do not have 'pkexec', does it mean that they are not vulnerable? if it is anyway (e.g. pkexec could have been renamed).. appreciate mitigation procedures. thanksFollowComment"

Answer: 1I have not been able to confirm the use of pkexec in Amazon Linux AMIs.But here is  a mitigation:A temporary mitigation for operating systems that have yet to push a patch is to strip pkexec of the read/write rights with the following command:chmod 0755 /usr/bin/pkexecSource:https://www.bleepingcomputer.com/news/security/linux-system-service-bug-gives-root-on-all-major-distros-exploit-released/CommentSharesharpedgewvanswered a year ago


Question: "set up a postgres database on a cloud vm, install docker to it, and link in the image"

"Hello, I have not used postrgres, vm, or docker before, but I would like to use this docker image to clone the api and host it on a cloud vm. Someone said I should set up a postgres database on a cloud vm, install docker to it, and link in the image. Can anyone tell me if this is the correct way to go here, and how exactly I can do that? I see web services and postgres databases as options on cloud providers but not sure if I need one or both or how to proceed here. Also how much gb minimum plan do I need to run this to test it? The code is from https://github.com/0xProject/0x-api#database and the image is here on dockerhub https://hub.docker.com/r/0xorg/0x-api Thanks for any insights or help with getting this running!!FollowComment"

Answer: "0Beware the 0x repository your mention is listed as deprecated and unsupported, so I would not trust or use that container in production systems.   If you just want a proof of concept, it likely will work fine.When it comes to running containers, it really depends on your needs, and there are several options:You can always spin anything up you want on an Amazon Elastic Compute Cloud (EC2) Instance and manage Docker 100% yourself.Using Amazon Elastic Kubernetes Service (EKS) you can create tasks to run the container. (I don't recommend this for your first time with containers)Using Elastic Container Services(ECS) you can create tasks (where you specify all the required ENV Variables)here and run them on AWS Fargate and are completely serverless.   This is a great way to run a container, especially when you are researching options.Using Amazon RDS you can spin up a dedicated Postgres instance that is managed and patched by AWS.   This however will not run your API, but it will give you a stable and well-maintained postgres instance.You could run postgres as a container if desired, but I would not recommend it.As for sizing, I always start with small sizes first and test to see if I need to vertically scale the hardware this keeps costs as low as possible .    With AWS you can vertically scale an instance quite easily.    Using Fargate with ECS you can also specify the size of the Task, and I typically do the same things.CommentShareRobert Loveanswered a month ago"


Question: Textract query when there are multiple occurance of targetted content.

"The attached is a bank statement. What I want is to query the highest balance from the transaction table(in this case 868.85). But when i am querying i am not getting the correct answer, instead getting the other balances elsewhere in the document.https://prnt.sc/zTIbVj8w3l-9all the queries i tried failed. can anyone please help me how i can get data in such cases (when same name is available multiple times). thanksFollowCommentrobbrad 5 months agoCan you share any sample code you are using to query the data?Share"

Answer: "0$queries=[];$queries[] = [          "Text" => "what is the highest among the balance?"        ];$queries[] = [            "Text" => "what is the highest balance from account details?"        ];$options   = [    'Document'      => [          'Bytes' => file_get_contents($path)    ],     'FeatureTypes'  => ['FORMS', 'TABLES', 'QUERIES', 'SIGNATURES'],        'QueriesConfig' => ['Queries' => $queries] ];$result = $this->textractClient->analyzeDocument($options);i used aws php sdk and queried like above. will this help?CommentSharerePost-User-4843822answered 4 months ago"


Question: Failed to setup parallel cluster on AWS EC2 with Ubuntu OS.

"Hi!I am very new to AWS EC2 and AWS Parallel Cluster. I have two virtual compute nodes running on Ubuntu 18.04 with g3s.xlarge and c5.4xlarge instances. My goals are setting up parallel cluster (master & slave nodes) with SLURM job manager for running the calculation on multi-nodes with parallel method like MPI.So far, I have tried to create a new parallel cluster using pcluster tool by learning from a quick manual on README.md in aws-parallelcluster github repository and full AWS ParallelCluster manual, but I failed to do that. I have also tweaked the config file which is stored at $HOME/.parallelcluster folder, and even added --norollback option, but the errors still persist.My modified config file:[aws]aws_region_name = us-east-1[cluster hpctest]key_name = XXXXXXXXbase_os = alinuxmaster_instance_type = g3s.xlargemaster_root_volume_size = 64compute_instance_type = c5.4xlargecompute_root_volume_size = 64initial_queue_size = 0max_queue_size = 8maintain_initial_size = falsecustom_ami = ami-0fd18b144da8357b7scheduler = slurmcluster_type = spotplacement_group = DYNAMICplacement = clusterebs_settings = sharedfsx_settings = fsvpc_settings = public[ebs shared]shared_dir = sharedvolume_type = st1volume_size = 500[fsx fs]shared_dir = /fsxstorage_capacity = 3600[global]cluster_template = hpctestupdate_check = truesanity_check = true[vpc public]vpc_id = vpc-XXXXXXXXmaster_subnet_id = subnet-XXXXXXXX[aliases]ssh = ssh {CFN_USER}@{MASTER_IP} {ARGS}[scailing custom]scaledown_idletime = 1Note: I take custom_ami id from https://github.com/aws/aws-parallelcluster/blob/master/amis.txt.The errors I am facing with:ubuntu@ip-172-XX-XX-XXX:~$ pcluster create t1Beginning cluster creation for cluster: t1Creating stack named: parallelcluster-t1Status: parallelcluster-t1 - ROLLBACK_IN_PROGRESSCluster creation failed.  Failed events:  - AWS::EC2::SecurityGroup MasterSecurityGroup Resource creation cancelled  - AWS::EC2::PlacementGroup DynamicPlacementGroup Resource creation cancelled  - AWS::EC2::EIP MasterEIP Resource creation cancelled  - AWS::CloudFormation::Stack EBSCfnStack Resource creation cancelled  - AWS::DynamoDB::Table DynamoDBTable Resource creation cancelled  - AWS::IAM::Role RootRole API: iam:CreateRole User: arn:aws:iam::3043XXXXXXXX:user/nutt is not authorized to perform: iam:CreateRole on resource: arn:aws:iam::3043XXXXXXXX:role/parallelcluster-t1-RootRole-1L9A3XXXXXXXXCan anyone help me to solve this problem? If there is any previous threads asking as same as my questions or facing the same problems, please let me know so that I could start to learning with that.Thank you for your time!RangsimanFollowComment"

Answer: "0Hi,The cluster creation is failing since you don't have the correct IAM permissions:The user in question is:arn:aws:iam::3043XXXXXXXX:user/nuttSteps to fix this are:Go to the AWS IAM ConsoleSelect Users and click "nutt"Add the policy shown here: https://docs.aws.amazon.com/parallelcluster/latest/ug/iam.html#ParallelClusterUserPolicyYou may need to have your admin do this if you don't have permissions to do yourself.CommentShareAWS-User-1155526answered 4 years ago0Hi,Got it! I can create the parallel cluster smoothly. Thank you very much. :)RangsimanEdited by: rangsiman on Oct 31, 2019 7:38 AMEdited by: rangsiman on Oct 31, 2019 7:39 AMCommentSharerangsimananswered 4 years ago"


Question: My CPU and RAM shoot up to 100% every time i open the IDE

It stays that way for a while then randomly goes away.I'm not hosted on AWS.FollowComment

Answer: "0Please note, this question will be better answered by your IDE support team. However, I will try to provide some basic information on what could potentially cause this from my own experience. When you start your IDE it loads caches for your project. Size of such caches can be huge, because these caches contain all information needed to perform any smart IDE feature (refactorings, navigation and so on). To load these caches, IDE uses all processor cores that are available. So, while loading the caches CPU usage is usually high. You can work with the IDE support team to see how you can optimize your performance.CommentShareAWS-User-9002671answered 9 months ago"


Question: spectrum ALTER EXTERNAL TABLE to add column

Is it possible to use ALTER EXTERNAL TABLE to add columns? or the whole table needs to be dropped & re-created with all partitions ?ThanksFollowComment

Answer: "0Hi yip2,The Redshift doc clearly explains that you can alter an external table to add a column, but there are limitation to what other clauses and column properties can be included.  See the doc. page here: https://docs.aws.amazon.com/redshift/latest/dg/r_ALTER_TABLE.htmlI hope this answers your question.Regards,-KurtCommentShareklarsonanswered 3 years ago"


Question: [Announcement] Extending end-of-life Process for Amazon RDS for MariaDB 10.0 and 10.1

"Amazon Relational Database Service (Amazon RDS) is extending the end-of-life process for MariaDB major versions 10.0 and 10.1. Beginning March 22, 2021 00:00:01 UTC, Amazon RDS will automatically upgrade MariaDB 10.0 and 10.1 instances to MariaDB 10.2 during regular maintenance windows, and will upgrade all remaining MariaDB 10.0 and 10.1 instances to MariaDB 10.2 on May 18, 2021 00:00:01 UTC.We previously communicated [1] we would begin upgrades starting February 9, 2021, and upgrade remaining instances on March 9, 2021. We have decided to extend the end-of-life process for all customers based on the volume of customer extension requests, and the opportunity to improve the upgrade experience.We strongly encourage customers to upgrade their MariaDB 10.0 and 10.1 instances to MariaDB 10.2 or greater as soon as possible, ahead of this end-of-life schedule. The MariaDB community discontinued support for MariaDB 10.0 on March 31, 2019 and for MariaDB 10.1 on October 17, 2020 [2]. Newer MariaDB versions include fixes to software defects in earlier versions, and major innovations like improved Oracle compatibility, support for temporal data processing, and improved DDL and authentication capabilities [3][4].The following is a summary of important milestones on the updated end-of-life schedule for MariaDB 10.0 and 10.1:• Now through March 22, 2021 00:00:01 UTCCustomers can no longer create new RDS instances using MariaDB 10.0 and 10.1 from the AWS Console or CLI. We removed this functionality December 3, 2020.Customers can initiate upgrades of Amazon RDS for MariaDB 10.0 and 10.1 instances to MariaDB 10.2, 10.3, or 10.4 at any time.Customers can continue to restore MariaDB 10.0 and 10.1 snapshots, and create read replicas with versions 10.0 and 10.1 until March 22, 2021.• March 22, 2021 00:00:01 UTCRDS will automatically upgrade MariaDB 10.0 and 10.1 instances to version 10.2 during a scheduled maintenance window after March 22, 2021.When customers restore MariaDB 10.0 and 10.1 database snapshots, Amazon RDS will automatically upgrade the restored database to MariaDB 10.2.• May 18, 2021 00:00:01 UTCRDS will begin automatically upgrading remaining MariaDB 10.0 and 10.1 instances to version 10.2, whether or not they are in a maintenance window.To avoid any unplanned unavailability outside your maintenance window, we recommend that you first test the upgrade process using a database snapshot. To learn more about upgrading MariaDB major versions in RDS, review the Upgrading Database Versions page [5]. Another common technique for reducing downtime from version upgrades is described in this AWS blog post [6].Should you have any questions or concerns, the AWS Support Team is available on the community forums and via Premium Support [7].References[1] https://forums.aws.amazon.com/ann.jspa?annID=8174[2] https://mariadb.org/about/#maintenance-policy[3] https://aws.amazon.com/about-aws/whats-new/2018/10/amazon-rds-now-supports-mariadb-10_3/[4] https://aws.amazon.com/about-aws/whats-new/2020/04/amazon-rds-now-supports-mariadb-10-4/[5] https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.Upgrading.html#USER_UpgradeDBInstance.Upgrading.Manual[6] https://aws.amazon.com/blogs/database/best-practices-for-using-a-mysql-read-replica-to-upgrade-an-amazon-rds-for-mysql-database/[7] http://aws.amazon.com/supportFollowCommentNguyen_M SUPPORT ENGINEERa year agoThis is an announcement migrated from AWS Forums that does not require an answerShare"


Question: Amazon workspace with Windows 11 Bundle.

We would like to deploy and test our applications on windows 11 desktop and check compatibility of our application on windows11. Can you please let me can i get windows 11 bundle on Amazon workspace on special request?FollowComment

Answer: "1At this time, you can choose between Windows 10 powered by Windows Server 2016 or 2019, Windows 10 via bring your own licensing (BYOL), or Amazon Linux 2.Windows 11 versions are not supported at this time. There are currently no published timeline for the support of Windows 11 Amazon WorkSpaces. AWS is constantly adding new capabilities so you can leverage the latest technologies and also looking at specific customer product feature enhancement requests.I would encourage you to contact your AWS account team for your organization for more specific discussions around your business needs for the new version.CommentShareJeremy_Sanswered a year ago"


Question: Quicksight functions to derive net new users

"I am trying to find Net new users for a webpage for a time period. I could not find any option to exclude a set of data from a Quicksight filter.The below is the SQL equivalent for what I am trying to achieveSELECT DISTINCT login, webpage, logintimeFROM "website_usage_data"WHERE logintimeBETWEEN date_trunc('month', date_add('month', -1, current_timestamp)) #Gets current month data    AND date_trunc('month', current_timestamp) - INTERVAL '1' SECOND    AND login NOT IN (        SELECT login         FROM "website_usage_data"        WHERE logintime         BETWEEN date_trunc('month', date_add('year', -5, current_timestamp))             AND date_trunc('month', date_add('month', -1, current_timestamp))        );I think we might need to create a calculated field to indicate last month's logins and filter out logins prior to last month.FollowComment"

Answer: "0you can achieve this by creating a couple of calculated fields and then using them in your visualizationCreate a calculated field for current month's data:Field Name: current_month_dataFormula:ifelse(    month({logintime}) = month(now()) and year({logintime}) = year(now()),    1,    0)This calculated field will return 1 if the logintime is in the current month and 0 otherwise.Create a calculated field for last month's data:Field Name: last_month_dataFormula:ifelse(    month({logintime}) = month(dateDiff(now(), 1, 'MM')) and year({logintime}) = year(dateDiff(now(), 1, 'MM')),    1,    0)This calculated field will return 1 if the logintime is in the last month and 0 otherwise.Create a calculated field to identify new users:Field Name: new_usersFormula:ifelse(    sumOver({last_month_data}, [{login}], PRECEDING) = 0 and {current_month_data} = 1,    1,    0)This calculated field will return 1 if a user has not logged in during the last month but has logged in the current month, indicating that the user is new.Finally, you can use the new_users calculated field in your visualization to show the net new users for the current month.CommentShareEXPERTsedat_salmananswered 22 days agoBalu Mathew 17 days agoNot sure the new_users calculation logic will be equivalent to a left outer join or MinusShare"


Question: in Polly console arabic language is disabled

"Hi,Why arabic language is disabeld when I try to use Polly text to speech console?FollowComment"

Answer: "0You may need to change the "Engine" from "Neural" to "Standard". Not all languages have support for the Neural engine types currently. Testing in the Console, I can see Arabic disabled with the former but available with the latter.CommentShareEXPERTJames_Sanswered 10 months ago"


Question: Amazon SES bounce notification (Return-Path) to different domain

"Hi All,we are using SES as our SMTP service and we send email with From example.com (verified in SES) and custom Mail From ses.example.com (configured in our DNS).We have configured in our header of the email the field "Mail From" with the same of "From" and we have configured the Return-Path with vendor@otherexample.com.Is this possible receive the bounce error to this last address that is not verified in our AWS SES in the identities?FollowComment"

Answer: "0From the following documentation:When you use Amazon SES, we recommend that you always set the "Return-Path" parameter so that you can be aware of bounces and take corrective action if they occur.This documentation explains how to enable feedback forwarding.CommentShareJesse_Tanswered 2 months ago"


Question: Can't connect to instance using Session Manager

"Dear team.I'm deploying several EC2 windows servers (2022 and 2019). SSM agent is installed and IAM roles like AmazonSSMRoleForInstancesQuickSetup or Cloudwatch were used but I still can't connect using Session Manager.I cann access older instances using SM this is happening since last month (April, 2023).Is that happening to anyone?FollowComment"

Answer: "2Hello,Have you checked that the EC2's have Internet access, this is needed to reach the SSM and EC2 endpoints, you can have Internet access through the IGW if your instances are in a public subnet and have a public IP or a NATGW if the instances are in a private subnet.If you don't have Internet access you can still use SSM but you have to create seevral VPC Endpoint for SSM, EC2, EC2 Messages.Kind regards.CommentShareHigheranswered a month ago"


Question: AWS Opensearch and NEST

I am trying to connect to Opensearch Version 1.3 using the .net NEST library 7.17 from a .net Core app and I get the error:Elasticsearch.Net.UnsupportedProductException: 'The client noticed that the server is not Elasticsearch and we do not support this unknown product.'I tried downgrading to NEST 7.14.1 same issue!Any help would be much appreciated!FollowComment

Answer: "0Hi, it seems like the dot net client library(NEST) is not updated with OpenSearvch V1.3The OpenSearch project was first announced in January 2021 as an open-source fork of Elasticsearch 7.10.2.Please enable the compatibility mode in the OpenSearch domain and try again with NEST.Following command will enable compatibility mode in existing OpenSearch domain:PUT /_cluster/settings{  "persistent" : {    "compatibility.override_main_response_version" : true  }}CommentShareawsanilanswered 7 months ago"


Question: Raycast from VR camera (Quaternion to Vector 3)

"The HMD tracking state returns a pose state with a quaternion orientation. Raycast takes a vector 3 for its direction. How do I get a vector3 from a quaternion, or otherwise how do I raycast from the VR camera?In fact I haven't been able to figure out how to raycast from any camera. I never seem to get any hits. I think the orientation is wrong but it could be something else. I can't eliminate anything though because I have no idea how it works.In flowgraph there's at least the debug draw line function which I could use to see where the raycast was going, but that doesn't seem to be exposed to Lua.Follow"

Answer: "0Accepted AnswerHi @REDACTEDUSERI'm going through your questions one by one, but I wanted to show you a quick way to work with Quaternions in Lua to get the direction vector you desire. As always, you may already be familiar with most or all of this, but I'm including this for completeness.You may grab the rotation quaternion another way but here is a quick example of using the bus system in Lua:local quat = TransformBus.Event.GetWorldRotationQuaternion(self.entityId)local rayDir = quat * Vector3(1,0,0)If you are wondering how the quat * Vector3(1,0,0) works, there are a couple of things going on in the above code.First, there is already a function overload (using the multiplication * symbol) that automatically rotates a vector by that quaternion rotation - you only need to call it in lua by multiplying the two. Second, a 0 degree rotation is traditionally represented by the vector 1,0,0 - a unit vector (vector of total length 1) along the x-axis with no rotation. This means that we can get the actual rotation in vector form by taking this 1,0,0 vector and multiplying it by our quat, giving us the exact direction to raycast in!Let me know if this helps you out!SharerePost-User-3342048answered 6 years ago0Actually I can't seem to get raycasting to work at all. The only time I can get hits from a raycast in Lua is if I set:raycastconfig.direction = (0.0, 0.0, 0.0)Then I get (maxhits + 1) hits on entityId [4294967295]. If I change any of those values even to something like 0.00000001, I get zero hits.I haven't found any other combination of values to set that results in a hit.What value am I supposed to use to cast a ray in the direction a camera is facing? Raycastconfig direction takes a vector3, but that could be literally any set of 3 values, and there don't seem to be any vector3 values/types in Lumberyard that store orientation. Quaternions, matrices, euler angles all don't work here.I tried using:local cameraTransform = TransformBus.Event.GetWorldTM(self.entityId)rayCastConfig.direction = cameraTransform:GetColumn(1)As I've seen in some examples, but it also doesn't return any hits.I have a test level with a camera that pans with mouse control, and a cube. No matter how I turn the camera or play with the variables I can't hit the cube with a raycast. Here's the code I've tried:    RCTestRaycast = {Properties = {}}function RCTestRaycast:OnActivate()self.tickBusConnection = TickBus.Connect(self)endfunction RCTestRaycast:OnTick()local rayCastConfig = RayCastConfiguration()local cameraTransform = TransformBus.Event.GetWorldTM(self.entityId)rayCastConfig.origin = cameraTransform:GetTranslation()local eulerRotation = TransformBus.Broadcast.GetEulerRotation(self.entityId)rayCastConfig.maxDistance = 20rayCastConfig.physicalEntityTypes = 15rayCastConfig.maxHits = 10--It seems likeliest that the direction is configured incorrectly. Here are--some directions and how many hits they return:--returns 0 hits--rayCastConfig.direction = cameraTransform:GetColumn(1)--returns (maxHits + 1) hits on entityId:[4294967295].--Changing even one vector value to "0.000001" results in zero hits.--What is going on here?--rayCastConfig.direction = Vector3(0, 0, 0)--returns 0 hits--rayCastConfig.direction = TransformBus.Event.GetEulerRotation(self.entityId)rayCastResult = PhysicsSystemRequestBus.Broadcast.RayCast(rayCastConfig)hitCount = rayCastResult:GetHitCount()hasBlockingHit = rayCastResult:HasBlockingHit()local hit1 = rayCastResult:GetHit(1)local blockingHit = rayCastResult:GetBlockingHit()--local hitEntityId = hit1.entityIdDebug.Log("camera transform = "..tostring(cameraTransform))Debug.Log("rayCastConfig.origin = "..tostring(rayCastConfig.origin))Debug.Log("rayCastConfig.direction = "..tostring(rayCastConfig.direction))Debug.Log("************************")Debug.Log("hitCount = "..tostring(hitCount))Debug.Log("hasBlockingHit = "..tostring(hasBlockingHit))--Debug.Log("hit1.position = "..tostring(hit1.position))--Debug.Log("hit1.entityId = "..tostring(hit1.entityId))--Debug.Log("blockingHit.entityId = "..tostring(blockingHit.entityId))endfunction RCTestRaycast:OnDeactivate()self.tickBusConnection:Disconnect()endreturn RCTestRaycastSharerePost-User-6682533answered 6 years ago0Let me see if I can get you some answers on this :)SharerePost-User-5738838answered 6 years ago0I have not yet resolved the issue of trying to issue a raycast from the VR camera / along the VR camera's orientation.I have resolved the secondary issue of getting the raycast to work at all. The issue was that raycasts can only hit objects which have certain components attached, in this case a mesh collider component to ensure that the raycast could "collide" with the entity at all points defined by its mesh, and a rigid body physics component.A raycast from camera can be oriented using direction = cameraTransform.basisY or cameraTransform:GetColumn(1), although I don't understand why either of these works.SharerePost-User-6682533answered 6 years ago0I've made some progress by realizing that the trackingState.pose.position is a relative position, not a global translation.I'm not clear on what is actually centering the position of the VR camera right now. I don't have it tied to any entity as far as I can tell, but it seems to respond to the map's camera entity. The VR camera appears a meter or two above the camera entity. Not sure why.It also seems like raycasting from the headset is an unreliable way to figure out what the user is looking at. I'm still not sure if this is due to camera shift causing the center of focus to be misunderstood, or if there's some other issue with positioning that I'm not aware of.Is there a better way to do this, or should I be raycasting?SharerePost-User-6682533answered 6 years ago0Hi @REDACTEDUSERI'm going through your questions one by one, but I wanted to show youa quick way to work with Quaternions in Lua to get the direction vectoryou desire. As always, you may already be familiar with most or all ofthis, but I'm including this for completeness.You may grab the rotation quaternion another way but here is a quick example of using the bus system in Lua:local quat = TransformBus.Event.GetWorldRotationQuaternion(self.entityId)local rayDir = quat * Vector3(1,0,0)If you are wondering how the quat * Vector3(1,0,0) works, there are a couple of things going on in the above code.First, there is already a function overload (using the multiplicationsymbol) that automatically rotates a vector by that quaternion rotation - you only need to call it in lua by multiplying the two. Second, a 0 degree rotation is traditionally represented by the vector 1,0,0 - a unit vector (vector of total length 1) along the x-axis with no rotation. This means that we can get the actual rotation in vector form by taking this 1,0,0 vector and multiplying it by our quat, giving us the exact direction to raycast in!Let me know if this helps you out!SharerePost-User-3342048answered 6 years ago0Thanks, that does answer that question and make it more clear what needs to be done. It's also good to know about the (1, 0, 0) vector.I wound up doing this:--Script attached to camera entitylocal cameraTransform = TransformBus.Broadcast.GetWorldTM(self.entityId)local cameraTranslation = cameraTransform:GetTranslation()local trackingState = HMDDeviceRequestBus.Broadcast.GetTrackingState()local hmdOrientation = trackingState.pose.orientationlocal hmdTransform = Transform.CreateFromQuaternionAndTranslation(hmdOrientation, cameraTranslation)...rayCastConfig.direction = hmdTransform:GetColumn(1)<br>Which seems to work. It can be very hard to tell if the raycast is hitting the exact center of view with an HMD.I've been running into other issues. I'm not sure why the HMD offset doesn't seem to come into play. Also sometimes, moving the camera entity in the editor seems to break the raycast somehow. I'm still not confident I'm getting the overall angle exactly right.Finally, I can't figure out what combination of components is needed to create an entity that will be hit by a raycast. The only things that seem to work reliably are the water (terrain hit) and a character physics component. A static mesh + mesh collider (+physics component?) should work, but it doesn't. Is there something in the cfg that could affect this, or some other file? I still can't tell if it's because of the entity configuration or if my orientation/translation are wrong.SharerePost-User-6682533answered 6 years ago0Hi @REDACTEDUSERGlad that answered your question! The components you should need are the physics components (collider component with a shape component if it is a primitive collider). Raycasts are always tricky - a good way to test to put your test object right in front of your raycaster, or even surrounding it, so you know it has to be hit. That should tell you if you have the right components, or if you are somehow missing it with the raycast direction!Thanks for all of these great questions. Please keep asking them, and don't be afraid to create new posts for each one - we like to create as many visible posts as possible. Your new post and question now is an answer for another dev down the line!Let me know if this helps!SharerePost-User-3342048answered 6 years ago0Hi @Catma,Youare correct! Raycasting relies on the physics system, and thus requires a collider component (not necessarily a mesh collider, primitive colliders work too!) to function correctly. Raycasting is traditionally tied to the physics system (sometimes graphics), but uses these systems not only to achieve results, but generate them efficiently.The reason that the cameraTransform.basisY works is because the camera's forward direction is tied to the y-axis. When you create a camera, you may notice that the camera faces in the way direction. As the camera moves, it's own internal direction is determined by column 1, also known as its y basis.SharerePost-User-3342048answered 6 years ago"


Question: AWS Workspace Chromebook App Alt+tab

Trying to work with a AWS Workspace machine via Chromebook App. The Alt+tab combination always switches outside the remote desktop and not within the remote desktop. This spoils the working experience. Are there any solutions anyone knows of?FollowComment

Answer: "0It's not the best answer, but I use a Chromebook myself and have taken the trouble to install the Linux app there and ALT-TAB does work with that.CommentSharemike-oanswered 6 months ago"


Question: Using STS to generate dynamic SaaS policy for temporary credentials to be used for invoking Lambda

"I'm getting a timeout with {"code":"ERR_INVALID_ARG_TYPE"} when trying to invoke a Lambda function from another function.  The background is that as part of a SaaS solution, I need to handoff processing of a payload received from API Gateway but having first determined the minimum scope policy required to perform the payload processing.  The target lambda is generic and does the same thing for each invocation but to meet security needs, must be scoped down so that under no circumstances could the code accidentally operate beyond the scope of the specific 'tenant' from which the payload originates and that developers maintaining the target lambda code could not accidentally or otherwise call services or process tables / s3 etc that do not belong to the 'tenant'.Code currently looks like this:`let policy = require('./tenantPolicy.json');let sts = new AWS.STS();let stsParams = {RoleArn: process.env.tenantRole,         //primary execution roleRoleSessionName: tenant-${tenantID},Policy: JSON.stringify(policy),                           //generated policyDurationSeconds: 900}let stsResult = await sts.assumeRole(stsParams).promise();let tenantCred = stsResult.Credentials;let tenantLambdaParams = {FunctionName: process.env.tenantLambda, /* required */InvocationType: 'RequestResponse',LogType: 'Tail',Payload: JSON.stringify(tenantPayload)};let tenantLambda = new AWS.Lambda({ credentials: tenantCred });let tenantResult = await tenantLambda.invoke(tenantLambdaParams).promise();`If I create the tenantLambda without specifying the credentials, i.e. just using the existing execution credentials, everything is fine.  If I use the code above, or directly specify the credentials like this:let tenantCred = {   accessKeyId: stsResult.Credentials.AccessKeyId,   secretAccessKey: stsResult.Credentials.SecretAccessKey,   sessionToken: stsResult.Credentials.SessionToken }...then I get the error.  I can see that STS is generating the credentials OK and logging the dynamic policy out shows me that I'm getting the policy I expect.Code execution in my calling Lambda operates right up to the await of the invoke and then (eventually) near timeout, gives me the error message.The execution role configured against the caller Lambda has managed policies:ManagedPolicyArns:         - !Sub 'arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole'         - arn:aws:iam::aws:policy/AmazonDynamoDBFullAccess         - arn:aws:iam::aws:policy/AmazonSNSFullAccess         - arn:aws:iam::aws:policy/AmazonS3FullAccess         - arn:aws:iam::aws:policy/AmazonSESFullAccess         - arn:aws:iam::aws:policy/service-role/AWSLambdaRoleand has sts:AssumeRole against the role that is assigned to both the target Lambda is the same role being passed as the role arn to STS with the dynamic policy.  This role has:ManagedPolicyArns:         - !Sub 'arn:${AWS::Partition}:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole'         - arn:aws:iam::aws:policy/AmazonDynamoDBFullAccess         - arn:aws:iam::aws:policy/AmazonSNSFullAccess         - arn:aws:iam::aws:policy/AmazonS3FullAccess         - arn:aws:iam::aws:policy/AmazonSESFullAccess         - arn:aws:iam::aws:policy/service-role/AWSLambdaRoleand has trust:`AssumeRolePolicyDocument:Statement:- Effect: AllowPrincipal:Service: [lambda.amazonaws.com]AWS: !Sub 'arn:aws:iam::${AWS::AccountId}:role/tenantRole-${AWS::AccountId}'Action: sts:AssumeRole'so that the role can be used in STS by the calling LambdaMy dynamic policy also provides access to Lambda basic cloudwatch actions and lambda:InvokeFunction so I don't think it's due to policy intersection.I also tried NOT sending the dynamic policy at all, just the main role but same result.  Has anyone has any luck with something like this?  I'm assuming that it's something about my IAM roles that is preventing successful execution.  Could there be an iam:PassRole missing that I need to add somewhere?FollowComment"


Question: How do I tell what account the Free Tier Expiration email is for?

"I received "Your AWS Free Tier expires soon".  I sign in with my account <firstname.lastname>@employer.com.  But that logs me into a client account for which I have no rights to view billing information.I don't want to get charged for anything, but I don't know if this email is for some other account.How do I tell?FollowComment"

Answer: "0Hello,I would suggest trying to log in with the email address that the notification was sent to as that would be the email associated with the account that is close to having the Free Tier Expire. If that doesn't work, since you can log into the console, you can always open a billing case and provide them with the email address the notification was sent to and our Billing support can check to see what account that email is tied too.This article will help with creating a case, just in case you need it: https://docs.aws.amazon.com/awssupport/latest/user/case-management.html-Brian D.CommentShareEXPERTAWS Support - Briananswered 4 months ago"


Question: Using Reader Instance in Aurora MYSQL

"With the creation of a reading instance, a part of the load of SELECT queries goes to the reading instance. correct?But for example, let's assume that I put a reading instance of lesser capacity and this one is already with a high processing, when more readings arrive they will always go to that instance or the bank can take advantage of an idleness of the recording instance and forward some things for her?FollowComment"

Answer: "1Accepted AnswerYou need to specifically target the reader instance with your application. Any query routing would need to happen in the app as well.Check out this doc page for more details: Replication with Amazon AuroraCommentShareC Mencarellianswered 4 months ago1Take a look at Amazon Aurora connection management.You control where SELECTS are sent by connecting to an endpoint, Cluster, Reader, Instance, or Custom.CommentShareEXPERTkentradanswered 4 months agorePost-User-7704228 4 months agoGot it.but thinking about a scenario where my cluster only has one Reader. In case this Reader overloads with queries, is the load balanced with the Writer?Sharekentrad EXPERT4 months agoYou need to create a Custom (ANY) endpoint for that scenario.Sharekentrad EXPERT4 months agoAlso, take a look auto scaling your read replicas: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Aurora.Integrating.AutoScaling.htmlShare"


Question: AcceptPlayerSession() accepts existing active player session

"So I have encountered a weird issue with AcceptPlayerSession(); It fails only if a player session is not found, but if a player session is either RESERVED or ACTIVE for a current game session it will always return IsSuccess()==true. This allows me to join the server with several clients using the same player session, and the game session will think there's only 1 player session in the game.Not sure if this is a bug or a feature.... I'm currently not using flexmatch, you using create-game-session and create-player-session commands from CLI.note: This happens on live gamelift as well as  gamelift local.This screenshot shows that the Game Session still thinks there's only 1 player session joined.REMOVEDUPLOADFollowComment"

Answer: "0Adding on to this to get some clarification on the documentation of the AcceptPlayerSession method found here,Notifies the Amazon GameLift service that a player with the specified player session ID has connected to the server process and needs validation. Amazon GameLift verifies that the player session ID is valid—that is, that the player ID has reserved a player slot in the game session. Once validated, Amazon GameLift changes the status of the player slot from RESERVED to ACTIVE.Does this mean that AcceptPlayerSession will return true for a player session ID that is in the RESERVED state or that it will return true for any player session ID that has ever been reserved for that particular game session that the method is being called from? It if is the latter then I find that quite confusing since the method would then be changing the status of the player slot from ACTIVE to ACTIVE or doing nothing.Sorry to tag you again @REDACTEDUSERCommentSharerePost-User-5100160answered 3 years ago0This sounds like a bug. AFAIK you can only accept a player session once ie its in the Reserved state. The main session checks prevent accepting anything thats not in Reserved state.Which Server SDK version are you using?  I believe one of the older SDKs did require a bug fix to the error response handling to ensure the server saw the failure when trying to accept a player session that was already ACTIVE. If you are not on latest, you may need to update the SDK.If you are still having trouble can you provide playersession ids and fleet ids and I can get the GameLift Service team to check this out.CommentSharerePost-User-5332620answered 3 years ago0hi @REDACTEDUSERNot sure if this is the latest or do you guys have repository somewhere with frequently updated versions?I have implemented a fix in my server code by checking if requested player session is reserved even though the AcceptPlayerSession(...) still succeed for active player sessions.Currently I'm running tests so there are no active game sessions nomally, you can test by firing up some game sessions in this fleet: fleet-******Any help/clarification on this is appreciated!CommentSharerePost-User-8357677answered 3 years ago0For the SDK, latest should be posted at that link, but you can confirm by looking at GameLiftServerAPI.cs/cpp files for the defined sdkVersion const. Should be 3.4.0I've created an issue with the GameLift support team. Hopefully they can look into what is happening. I'll let you know when they respond.CommentSharerePost-User-5332620answered 3 years ago0To clarify the behavior of AcceptPlayerSession:If the PlayerSession is in RESERVED and AcceptPlayerSession is called, the PlayerSession will go to ACTIVEIf the PlayerSession is in ACTIVE and AcceptPlayerSession is called, the PlayerSession will remain in ACTIVE and a successful response will be returned.Bullet 2 matches the behavior you are currently seeing. I'd recommend creating a PlayerSession per client and/or checking if the PlayerSession is ACTIVE before trying to AcceptPlayerSession on a new client connection.CommentSharerePost-User-3899635answered 3 years ago0DescribePlayerSessions seems to work on my end with the new GameLiftServerSDK update.CommentSharerePost-User-5100160answered 3 years ago0Thanks, I did exactly this by checking status of player session. But since the update this seems to have been broken...Specifically either Aws::GameLift::Server::DescribePlayerSessions(...) always returns .IsSuccess()==false or the successive call of the outcome .GetPlayerSessions(numSessions) always return numSessions==0.My code worked before the update, but not anymore.Strangely it still works on Gamelift Local.Edit: I did further digging and found the error type returned from Aws::GameLift::Server::DescribePlayerSessions(...) to be a BAD_REQUEST_EXCEPTION. Is this a bug in the SDK?Edit: For more information I do pass in both a Player Session ID as well as a Game Session Id into the DescribePlayerSessionsRequest structure.@REDACTEDUSERCommentSharerePost-User-8357677answered 3 years ago0I have now solved this by sending in only the Player Session ID to the DescribePlayerSessions(…) call. Seems like if I also send in Game Session ID it fails on live gamelift but still works on Local GameliftCommentSharerePost-User-8357677answered 3 years ago0Docs (for reference): https://docs.aws.amazon.com/gamelift/latest/apireference/API_DescribePlayerSessions.htmlDescribePlayerSessions should take only one of Player Session ID, Game Session ID or Player ID. You will get a BadRequestException if you pass in multiple.CommentSharerePost-User-3899635answered 3 years ago"


Question: cannot delete network interface related to a FSx multi AZ VPC stack despite being logged in as root user

"I'm trying to delete a VPC related to FSx.I get an error saying I need to delete the following Network interfaces first: eni-01d9c56382ee91336 eni-0d1148b3737a47a4e  eni-073fc4bca23bc8dbd  eni-0f234498e3f3e47b0When I try to delete the network interfaces I get another error message saying I do not have permission.  I'm logged in as root user so I'm stumped as to how to do this.How do I solve this issue?Thanks,PierreFollowComment"

Answer: "0Were these ENIs created by Amazon FSx? When you create an FSx file system, an ENI is automatically created in each associated subnet. These ENIs are managed by FSx and cannot be directly deleted, they will be deleted automatically when you delete the FSx file system.CommentShareJamesBanswered a year agoPierre V a year agoHi JamesB,These were indeed created automatically when the FSx file system was created.  I can't delete the VPC that is related to the FSx which gets me to a dead end asking me to remove the network interfaces above that I can't delete.Share0Sorry if this is a dumb question, you didn't actually say - have you deleted the FSx file system?  Just checking you're not trying to run FSx without a VPC which isn't possible.CommentShareEXPERTskinsmananswered a year agoPierre V a year agoI have deleted the FSx file system.  Now trying to delete the VPCShare"


Question: How to remove Unnamed column while creating dynamic frame from catalog options

"Hi Team,I have created a glue job which reading a table from glue data catalog and creating dynamic frame. But while running the job, it is throwing the below error. After checking the logs I saw it is not able create the dynamic frame due to the below error."Attribute name "Unnamed: 7" contains invalid character(s) among " ,;{}()\n\t=". Please use alias to rename it."I am using the below statement to create dynamic frame. I want to avoid creating the unnamed columns during the creation of dynamic frame. Any help would be much appreciated. Thank youdemotable= glueContext.create_dynamic_frame.from_catalog(database="intraday",table_name="demo_table",push_down_predicate = "bus_dt = 20180117",transformation_ctx="demotable",)FollowCommentGonzalo Herreros 2 months agoNot sure how the table can have unnamed columns, sounds more likely that the data doesn't really match the table and DynamicFrame get confused. If you read using DataFrame (e.g. spark.sql()) it will enforce the table schema but not sure if it will read the data correctly. I would try to solve the underlying issue with the table/data.Share"

Answer: "0o remove the unnamed column while creating a dynamic frame from the catalog options, you can use the ApplyMapping class from the awsglue.transforms module. This allows you to selectively keep the columns you want and exclude the unnamed columns.Here's an example of how you can do this:from awsglue.transforms import ApplyMapping# Read the data from the catalogdemotable = glueContext.create_dynamic_frame.from_catalog(    database="intraday",    table_name="demo_table",    push_down_predicate="bus_dt = 20180117",    transformation_ctx="demotable")# Define the schema mapping, excluding the unnamed columnmapping = [    ("column1", "string", "column1", "string"),    ("column2", "string", "column2", "string"),    # Add all other columns that you want to keep, but exclude "Unnamed: 7"]# Apply the mappingdemotable_transformed = ApplyMapping.apply(frame=demotable, mappings=mapping, transformation_ctx="demotable_transformed")# Continue to the code ....CommentShareEXPERTsedat_salmananswered 2 months agorePost-User-5319265 2 months agoHi sdtslmn,Thanks for your response!The glue job is failing in the below step while creating the dynamic frame. Apply mapping is the next step but it is failing before that.Is there a way I can pass any parameter while creating the dynamic frame so that unnamed column gets excluded?Read the data from the catalogdemotable = glueContext.create_dynamic_frame.from_catalog(database="intraday",table_name="demo_table",push_down_predicate="bus_dt = 20180117",transformation_ctx="demotable")Share"


Question: PDO::prepare(): MySQL server has gone away

I am getting PDO::prepare(): MySQL server has gone away error in my error logs.After the RDS Aurora mysql version upgrade i am getting this error simultaneously.I am not able to find the root cause of this error. current version of mysql is 2.10.3.I follow this post but no luck.https://aws.amazon.com/premiumsupport/knowledge-center/rds-mysql-server-gone-away/FollowComment


Question: App Store Reviewer Connection Problem

"We are using AWS Server for our Multiplayer Game by allowing players to connect via elastic ip with NetworkManager in Mirror/Unity. It has been 4 weeks that App Store review team has been trying to connect to my AWS Server. No one else, including Google Play Store team, has this issue but App Store review team. My security group is set to both TCP and UDP ports in inbound rules. Everything is set to as it should be. What can the problem be? How can i make app reviewer connect to my Server?FollowComment"

Answer: "0Hello,I understand that you are having difficulty with your EC2 server connection through Elastic IP. [1] Please ensure that: -Security group rules for inbound is allow connection to the port or protocol-Inbound and outbound network access control list rules allow connection to the port or protocol-Route table for the subnet of the elastic network allow to send and receive traffic from internet [2]-OS firewall on the EC2 instance allows traffic to the port or protocol After ensured all the steps, please reach out to Apple and verify the necessary details on the required port and work with the Apple team for the solution. Please contact if you have any further AWS questions, and feel free to reach out to us via a support case to facilitate a discussion on the specifics of your resources. [1]https://aws.amazon.com/premiumsupport/knowledge-center/vpc-fix-connection-with-elastic-ip/[2]https://docs.aws.amazon.com/vpc/latest/userguide/VPC_Route_Tables.html#subnet-route-tablesCommentShareWei_Wanswered a year agoSUPPORT ENGINEERAWS_SamMreviewed 10 months ago"


Question: Errors compiling code with the C++ AWSSDK

I am getting the errors:1>error LNK2001: unresolved external symbol "__declspec(dllimport) void __cdecl Aws::InitAPI(struct Aws::SDKOptions const &)" (_imp?InitAPI@Aws@@YAXAEBUSDKOptions@1@@Z)1>error LNK2001: unresolved external symbol "__declspec(dllimport) public: __cdecl Aws::Client::ClientConfiguration::ClientConfiguration(void)" (_imp??0ClientConfiguration@Client@Aws@@QEAA@XZ)...1> fatal error LNK1120: 21 unresolved externalsI am building my application with VS2019 but with the VS2015 runtime libraries (v140). 64 bit release and debug. Multi-threaded libraries (/MT)I used vcpkg to obtain the AWSSDK and I believe I built the SDK to match my configuration.I am linking with aws-cpp-sdk-s3.lib;aws-cpp-sdk-core.lib.I am defining USE_WINDOWS_DLL_SEMANTICS and USE_IMPORT_EXPORT in my codeAny suggestions would be much appreciated.Thank you.FollowComment

Answer: "0Hello,I'd like to set expectations right off the bat as coding and debugging is out of scope for AWS premium support. But we are always happy to assist as best efforts. I have found the following link with similar issues: https://github.com/aws/aws-sdk-cpp/issues/1154Given that this requires code debugging, I'd like to suggest to go to the GitHub forum, as they could address your queries directly or point you in the right direction: https://docs.github.com/en/github/managing-your-work-on-github/creating-an-issueCommentShareSUPPORT ENGINEERJosueAWSanswered a year ago"


Question: How to call Athena Rest APIs

"Hello Team, is there any Athena postman collection to test the APIs or material, there's no clear documention and i keep getting the following error: com.amazon.coral.service#UnknownOperationException , Thanks!FollowComment"

Answer: "0Have you looked at the following documentation - https://docs.aws.amazon.com/athena/latest/APIReference/API_Operations.htmlIt has the list of APIs along with sample requests, responses and errors.It also gives you sample code in different programming languages.If you have already looked at this documentation but still run into problems understanding the APIs, then I would recommend opening Support tickets with specific details about which APIs do not work.CommentShareEXPERTIndranil Banerjee AWSanswered 10 months agorePost-User-3097377 7 months agoI am also looking the Athena rest API postman call details. I think AWS community should address answer this questionShare"


Question: ListFleet returning 0

"So i created a fleet on console it shows its status as Active, Instances 1, Servers active 1But on my Unity Client application when i call ListFleet it shows as if there's none, here's my call:Debug.Log("Request fleet list");        var fleetsListRequest = new ListFleetsRequest();        var fleetListTask = _amazonGameLiftClient.ListFleetsAsync(fleetsListRequest);        ListFleetsResponse __listResponse = await fleetListTask;        Debug.Log("Total fleets " + __listResponse.FleetIds.Count);        if(fleetListTask != null)        {            Debug.Log("Display fleets");            foreach (var __fleet in __listResponse.FleetIds)            {                Debug.Log(__fleet);            }        }Also when i try to create a new CreateGameSession i get the expection saying that the fleetID requested for my userID does not exist.I don't know why is not finding my fleet, i checked the logedin id in a Debug.Log and it's correct, i also checked cognito console and shows the user login. Does anyone have a clue as to what might be going on?FollowComment"

Answer: "0It turns out i created my fleet on SA and i was trying to get from SE 😅CommentSharerePost-User-1873569answered 2 years ago0One thing to note is that you shouldn't include AWS credentials in game clients, e.g. to call ListFleet. A bad actor could potentially steal those credentials and, at the very least, spam ListFleet calls to get your account throttled and deny access for other players.You should instead create a backend service to call gamelift on your client's behave. See:https://github.com/aws/amazon-gamelift-plugin-unityhttps://github.com/aws-samples/aws-gamelift-and-serverless-backend-sampleCommentSharerePost-User-7108006answered 2 years ago0Thanks for the tip, i'll do that.CommentSharerePost-User-1873569answered 2 years ago"


Question: Can't connect to ec2 Microsoft server

"I cannot connect to ec2 microsoft server instance, Initially I had capabilities to connect, but now I cant , I get an authentication error if I Use the RDP file of my ec2, and cannot connect error if I use the ec2 instance IP , name and password. Please help.FollowComment"

Answer: "0Try the following to resolve issues related to connecting to your instance:Verify that you're using the correct public DNS hostname. (In the Amazon EC2 console, select the instance and check Public DNS (IPv4) in the details pane.) If your instance is in a VPC and you do not see a public DNS name, you must enable DNS hostnames. For more information, see DNS attributes for your VPC in the Amazon VPC User Guide.Verify that your instance has a public IPv4 address. If not, you can associate an Elastic IP address with your instance. For more information, see Elastic IP addresses.To connect to your instance using an IPv6 address, check that your local computer has an IPv6 address and is configured to use IPv6. If you launched an instance from a Windows Server 2008 SP2 AMI or earlier, your instance is not automatically configured to recognize an IPv6 address assigned to the instance. For more information, see Configure IPv6 on your instances in the Amazon VPC User Guide.Verify that your security group has a rule that allows RDP access. For more information, see Create a security group.If you copied the password but get the error Your credentials did not work, try typing them manually when prompted. It's possible that you missed a character or got an extra white space character when you copied the password.Verify that the instance has passed status checks. For more information, see Status checks for your instances and Troubleshoot instances with failed status checks (Amazon EC2 User Guide for Linux Instances).Verify that the route table for the subnet has a route that sends all traffic destined outside the VPC to the internet gateway for the VPC. For more information, see Creating a custom route table (Internet Gateways) in the Amazon VPC User Guide.Verify that Windows Firewall, or other firewall software, is not blocking RDP traffic to the instance. We recommend that you disable Windows Firewall and control access to your instance using security group rules. You can use AWSSupport-TroubleshootRDP to disable the Windows Firewall profiles using SSM Agent . To disable Windows Firewall on a Windows instance that is not configured for AWS Systems Manager, use AWSSupport-ExecuteEC2Rescue, or use the following manual steps:CommentShareArunanswered 3 months ago"


Question: Transit Gateway/DX route propagation to VPC route tables

"A customer is looking to attach DX's to multiple VPC's via Transit Gateway.DX's are connected to Transit Gateways via DX Gateways.  DXGW's can receive and propagate routes to a VPC via BGP.Is it correct to say:DXGW and TXGW can exchange routes advertised to DXGW from on-prem to the TXGW route tableSince TXGW can't propagate routes to the VPC routing table, one loses the ability to propagate on-prem routes to the VPC routing table via BGP, therefore requiring statics?Looking for guidance on how route propagation flows through the stack.FollowComment"

Answer: "0Accepted AnswerYes, #1 and #2 are correct. TGW route table(hub) will receive the BGP advertisements from transit-vif, however, TGW will not propagate routes to individual VPC routing table (spoke).As a best practice, once the routing domain management is shifted to TGW (hub and spoke), do the routing management entirely in TGW than to do maintain them in two separate routing tables for DX, VPN cases.The technical reason behind is that TGW doesn't have tight routing entries limitation to the route table as compared to that of a VPC routing table that is associated with the individual ENIs.CommentShareAWS-User-4818765answered 4 years ago"


Question: Email identity verification link expired and cannot resend another

"I was verifying an email identity, I got the email with the validation link but only after a few days it was opened. It then redirected to A page saying it has expired (it expires after 24hours)After searching the documentation I see that there should be a resend option but none is available for me.How can I verify this email identity?FollowComment"

Answer: "1There should be a Resend button at the top of SES console in Verified identities page of the unverified email address.If you're still unable to see the Resend button, you can delete the unverified email identity and then just re-add it again.CommentSharejoahnaanswered 9 months agoFilipe Freitas 9 months agoYes, I don't have that. Deleting the identity and creating it again might be the way.Share"


Question: Greengrass error-'module' object has no attribute 'lambda_handler'

"Hi There,I am trying to get the example code (to extract MQTT topic and message) run on my Raspberry pi.CODE-import greengrasssdkimport loggingclient = greengrasssdk.client('iot-data')OUTPUT_TOPIC = 'test/topic_results'def get_input_topic(context):try:topic = context.client_context.custom['subject']except Exception as e:logging.error('Topic could not be parsed. ' + repr(e))return topicdef get_input_message(event):try:message = event['test-key']except Exception as e:logging.error('Message could not be parsed. ' + repr(e))return messagedef function_handler(event, context):try:input_topic = get_input_topic(context)input_message = get_input_message(event)response = 'Invoked on topic "%s" with message "%s"' % (input_topic, input_message)logging.info(response)except Exception as e:logging.error(e)client.publish(topic=OUTPUT_TOPIC, payload=response)  return  I am running this code as a on demand function and greengrasssdk included in the uploaded package.When I run this I get the following error-[FATAL]-lambda_runtime.py:356,Failed to initialize Lambda runtime due to exception: 'module' object has no attribute 'lambda_handler'Please suggest what I may be doing wrong.Thank you in advance.Ashish ShuklaFollowComment"

Answer: "0Hi AshishShukia,Are you able to edit your Lambda function inline, see step 8?https://docs.aws.amazon.com/greengrass/latest/developerguide/create-lambda.htmlThanks,KR-AWSCommentShareKR-AWSanswered 4 years ago"


Question: Snapshot to Image to EC2 instance - How to activate Windows

"Hi:I had a snapshot of an old server.  I needed to spin it back up.  So I created an image from the snapshot, then created an EC2 instance from the image.  Now Windows won't activate.  The activation page in Windows does show the last 5-digits of Product Key 8XDDG, but says it cannot activate, providing Error code: 0xC004F074.  It previously ran Windows Server 2016 Datacenter and still does, i.e. I just re-created the EC2 instance from image, I did not change Windows version.More info. that might be helpful:  I've followed the guide at https://aws.amazon.com/premiumsupport/knowledge-center/windows-activation-fails/ to activate manually.  But in step 6, telnet to 169.254.169.250 fails and PowerShell command: Test-netconnection 169.254.169.250 -Port 1688  also fails.  I've verified in step seven that the registry keys are correct for KeyManagementServiceName (169.254.169.250) and KeyManagementServicePort (1688).  Telnet and Test-netconnection to .251 also fails.  The Security Group assigned to the instance has the default Outbound rule that allows everything.Thank you!FollowComment"

Answer: "0Never mind, following step 1 at https://aws.amazon.com/premiumsupport/knowledge-center/windows-activation-fails/ to activate Windows manually fixed the issue.  I guess had to add the routes to MS KMS server so now Test-netconnection 169.254.169.250 -Port 1688 succeeds and windows was activated using slmgr /atoCommentSharerePost-User-5811766answered 3 months ago"


Question: BUG: NoSQL Workbench on Windows 11 loses status link to DDB Local

"I've installed the local database with my NoSQL Workbench.When I first start the database using the DDB Local button on the sidebar, all is good. The database starts properly on port 8000.However if I change something in the Data modeler or if I change the main screen to some other part of Workbench, the DDB local button switches to the off position even though the database is still running (and bound to port 8000).Clicking on the button to start the DDB has the predictable failure result that port 8000 is in use.To shut down the database, therefore, I have to either shutdown my computer or locate the JAVA instance running the database and End it. There's an obvious danger here that if I get the JAVA instance wrong, I can damage some other running application by forceably killing it.FollowComment"

Answer: "1Accepted AnswerThanks for reporting. We will look into the issue, can you provide the version of OS you are using as well as the version of NoSQL Workbench.UpdateAfter investigating we can assert that the DynamoDB Local button is changing state, however the instance of DynamoDB Local is still actively running. We plan to issue a fix for the button in an upcoming sprint.CommentShareEXPERTLeeroy Hannigananswered 11 days ago0Hi. Thanks for the prompt reponse!OS: Windows 11 Enterprise 22H2 Build 22621.1702Workbench: 3.6.1CommentShareMattRanswered 11 days ago"


Question: certificate has expired in SMS Gateway Configuration

"Dear all,I was using AWS lambda as an SMS gateway which was connected to DHIS2 for SMS submissions. The SSL on the DHIS2 was changed and now I am receiving this error on my SMS gateway:**  to_number": "2840","from_number": "+23275569229","id": "bedaad69-0b3b-4d72-af5a-e6356a570b08","time": "2023-04-06T17:14:12.148","reqid": "3f4cd034-ac99-4528-980b-3a046de5a855","direction": "incoming","status": "error","wasCompressed": true,"error": {"name": "Error","message": "certificate has expired","code": 422}},"level": "error","label": "sms-gateway-prod","timestamp": "2023-04-06T17:14:17.984Z"**Please can someone help me with solution how to fix this issue.FollowComment"


Question: Cloudwatch - Log groups not loading from yesterday

Log groups in cloudwatch are NOT loading from yesterday. I have lot of log groups for my applications.I am able to view the content of log groups from CLI though. Please let me know if anyone else facing this issue and got this resolved.FollowComment


Question: New Partition Availability

Let's say that I am executing an INSERT INTO statement in Athena that is writing new partitions.  When are those new partitions available to be queried in a SELECT query?  Is it possible to run a SELECT statement while that INSERT INTO is running on the same Glue Catalog table and get partial data from the new partition - or will that partition become available only after it is fully written?FollowComment

Answer: "0new partitions will be visible for SELECTS after the metadata about them is available which will happen either afterMSCK REPAIR TABLEor (more lightweight and therefore preferred)ALTER TABLE ... ADD PARTITIONYou can however add those partitions "in advance" even before any data is added for those, and in this case the data will be available to SELECT queries as soon as some of the files are added to those partitions by INSERT INTO SELECThttps://docs.aws.amazon.com/athena/latest/ug/msck-repair-table.htmlhttps://docs.aws.amazon.com/athena/latest/ug/alter-table-add-partition.htmlCommentShareAlex_Tanswered 9 months agorePost-User-4248058 9 months agoIf I don't ADD PARTITION in advance, and don't call MSCK REPAIR, is it still the case that "the data will be available to SELECT queries as soon as some of the files are added to those partitions by INSERT INTO SELECT"?  That would essentially be the same as saying that in this scenario, the existence of a partition does not guarantee the corresponding INSERT INTO has finished writing the partition.Share"


Question: Which service to use?

I am trying to figure out what to use for when my pipeline finishes building the software packages (all of them are tgz zipped) where can I store it? Is a simple s3 bucket the solution or is there something more tailored that allows me an easy integration with my pipeline?FollowComment

Answer: "0The answer may vary depending on your choice of Build service/tool in your pipeline and your use-case. Generally speaking; S3 is the most common place to store built artifacts and it has native integration with AWS DevOps services, i.e. for AWS CodeBuild & CodePipeline S3 is the only option. Also there are plugins for other popular build management services i.e. TeamCity...If you use package managers such as npm, yarn, pip, twine, and mvn to publish packages developed within your organization AWS CodeArtifact is a better alternative as central organizational repository.CommentSharetersoyanswered 3 months ago"


Question: Lost access to Windows server

"On my Windows Server in Lightsail, I accidentally clicked "Restore Defaults" in Windows Firewall.Since then, I can´t access the server with RDP.There is any solution for this problem?Thank you.FollowComment"

Answer: "0Please, anyone?Thanks.CommentShareminas0810answered 3 years ago0Hello,I'm sorry to hear you've faced this problem. If you've lost access to your Windows instance and need to recover data, you can always snapshot the instance's root volume, create a new disk from that snapshot, and attach the new disk to a new instance. Here is a doc that will guide you through that process: https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-create-an-instance-root-volume-snapshotI hope this helps. Thank you for using Amazon Lightsail!-MaxwellCommentShareMaxwellanswered 3 years ago0Thank you very much for your answer, is clear now.CommentShareminas0810answered 3 years ago"


Question: Billing Alarm on SPAM Account

"Hello,I have created a Billing Alarm that keeps reflecting Insufficient Data, even though I have followed all Amazon web services instructions. I am trying to close a SPAM account wrongly created with my stoles email address and credit card data and Technical team keeps confirming I must secure the account before passing my case to billing team and matter is resolved and I can proceed to close the account. Only pending step to secure the account is to create a Billing Alarm which reflects status as OK instead as Insufficient Data. Please confirm how can I fix the Billing Alarm to reflect OK.Thanks,AngelaFollowComment"

Answer: "0Hi Angela, Have you created the Billing Alerts prior to enabling the Billing Alarm. Please see this link on how to enable billing alerts and billing alarm if you have not already.Also, curious if you are trying to close the account do you have to create a billing alarm?CommentShareSom Chatterjeeanswered a year agorePost-User-2514220 a year agoHi Som,thank you very much, indeed it works and now the billing alarm appears with OK status. I want to close the account which was created with my stolen email address and credit card information but Amazon technical team has confirmed that in order to do so I first need to secure the account which has been challenge for me since I not a technical person but with your kind help I have finalized the final step to secure it.So, thank you very much!! Much appreciated! Hopefully charges are now dismissed and now I close it permanently.Kind Regards,AngelaShare"