Question: pass stack output from one stack in account_A to another stack in Account_B

"Hi team,I have a list of CDK stacks I can deploy in my dev, stage and prod AWS accounts.one of my stacks (the ECR stack) is deployed only in the DEV account (as a single source of docker images), how can I pass the ECR repository URI to my other stack (the EcsfargateStack) when I deploy to the other accounts: prod and stage?in dev I do like this :const ecsfargateStack= new EcsfargateStack(app, "EcsfargateStack", {  env: env,  ecrRepoUri: ECRRepositoryStack.repositoryUri, //repositoryUri exported value from the ECRRepositoryStack});but in stg and prod ECRRepositoryStack is not deployed but I still need to deploy ecsfargateStack in prod and stg and give them ECRRepositoryStack.repositoryUri,  like abovehow can I get ECRRepositoryStack.repositoryUri to pass it in my ecsfargateStack in stg and prod knowing that ECRRepositoryStack  is uniquely deployed in DEV ?==>stack_A(generate repoUri property) is deployed only in account 123, then the property generated in StackA in account 123 needs to be used by Stack_B in accounts 456 and 789.thank you!!!FollowComment"

Answer: "0Accepted AnswerHello,Hope you are doing well!I understand that you want to know if in a single CDK project, you can pass stack output from one stack in account_A to another stack in Account_B. In the CDK example provided, like you said, it is creating exports from "ECRRepositoryStack" stack, which will be imported by Stack "ecsfargateStack" to consume.The answer is no, CDK does not support this use-case due to underlying Service AWS CloudFormation has limitation around stack exports and imports.Although CDK is a more programmatic service, but limitations from the heavy lifting service CloudFormation still apply. The Exports/Imports feature of CloudFormation is for cross-reference so stacks that are in the same AWS account and region can import the exported values[1]. Therefore, the CDK cross-stack reference like this are still leveraging the same feature so not even cross region can be achieved:# Base infrastructure stack, Lambda Functions, DynamoDB Tables, etc....infra = InfraStack(app, "CDK-L3-infrastructure", env=env)# Application stack that generally changes independently of the underlying infrastructure stackapplication = ComputeStack(app, "CDK-L3-application", referenced_function=infra.main_function, referenced_vpc=infra.main_vpc, env=env)Please consider store your values need to be retrieved in another regions/accounts in a SecreteManager Secret along with necessary trust policies. So other stack in different region can just get its value by utilizingstatic fromSecretNameV2(scope, id, secretName)[2] Best regardsReferences:[1] https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-stack-exports.html[2] https://docs.aws.amazon.com/cdk/api/v1/docs/@aws-cdk_aws-secretsmanager.Secret.html#methodsCommentShareClive_Yinganswered 8 months ago"


Question: DynamoDB: ValidationException: ExpressionAttributeNames can only be specified when using expressions

"I am writing some code to query Dynamo with a certain filter and I'm using the expression package in the Go sdk:The variable project that is referred to is defined in another section of the code. Its string properties owner and name are not nil/empty.dynamo := dynamodb.New(sess)filt := expression.Name("projectOwner").Equal(expression.Value(project.owner),).And(expression.Name("projectName").Equal(expression.Value(project.name),),)expr, err := expression.NewBuilder().WithFilter(filt).Build()if err != nil {       panic(err)}queryInput := dynamodb.QueryInput{      KeyConditionExpression:    expr.KeyCondition(),      ProjectionExpression:      expr.Projection(),      ExpressionAttributeNames:  expr.Names(),      ExpressionAttributeValues: expr.Values(),      TableName: aws.String("projects"),}out, err := dynamo.Query(&queryInput)if err != nil {       panic(err)}I get this error:panic: ValidationException: ExpressionAttributeNames can only be specified when using expressionsI don't know where it's from or what it means: I am using expressions.FollowCommentjzhunter a year agoI'm not a Go programmer but I wonder if verbose logging the wire traffic might give you insights on what your code is causing to be sent: https://aws.github.io/aws-sdk-go-v2/docs/configuring-sdk/logging/Share"

Answer: "0You are confusing between the syntax of Query and Scan.When building a Query command you should use WithKeyCondition(KeyCond):builder := expression.NewBuilder().WithKeyCondition(keyCond).WithProjection(proj)and when building a Scan you should use WithFilter(filt):expr, err := expression.NewBuilder().WithFilter(filt).WithProjection(proj).Build()CommentShareMLGuyanswered a year ago"


Question: EC2 Ubuntu instance can't make requests to the internet

"No changes were made to an instance running Ubuntu 18.04.2 and suddenly it can't connect to the internet. Running any of the commands below fails:ping google.comcurl google.comAfter investigating a bit, I noticed the following error message in the logs for the systemd-networkd.service:eth0: DHCP error: could not get routes: No data availableThis seems like an issue with the underlying infrastructure but I have already tried stopping and starting the instance again but nothing changes.By the way, I have already run the basic network checks listed here (Security Group rules are ok, route table is ok, internet gateway is ok and network ACL is ok)Any help will be greatly appreciated.Thank you!FollowCommentRavi Shanker 4 months agoIs Internet gateway configured for Public subnets?Is NAT gateway configured for Private subnets?Are the correct Route tables attached to the respective subnets?Do the hosts in Public subnets have Public or Elastic IP?Do Security Group and NACL permit outbound traffic?If you still can't find the solution consult VPC Flow Logs, there may be some clue.SharerePost-User-5682783 4 months agoHi @Ravi Shanker, thanks for the comment. The answer to all your questions is yes. This was an instance that had been running without interruption for a couple of years and then suddenly that issue happened without any settings changes to anything (subnets, NAT gateways, security groups, etc.). As I posted below, after moving it to another availability zone, the problem was solved. My guess is that there was some issue with the underlying hardware so I suppose if I had simply created a new instance and attached the same EBS volume to it, that would have fixed it too.Share"

Answer: 0I ended up creating a snapshot from the instance's volume and then I recreated that volume in a different availability zone. I then launched a new instance in that availability zone and attached the volume to it and things worked fine. So I really think there was some issue with the underlying hardware.CommentSharerePost-User-5682783answered 5 months ago


Question: AWS IoT Greengrass Core - Device Components list missing Items after updating to Nucleus 2.8.0

"Our Healthy Core Device only shows 10 components under the Components list in the AWS Console UI:AWS IoT -> Greengrass -> Core devices -> THINGThe API returns the same 10 results.However, the Completed deployment and the Local Debug Console show the expected 24 running components.AWS IoT -> Greengrass -> Deployments -> THINGThis happened only after we updated to Nucleus 2.8.0. Please reach out directly if you'd like to get additional info.FollowCommentNavyaKuchibhotla-AWS 8 months agoHi gstclair,Thank you for your post. We will need additional information such as account id, thing name, and region to help us investigate this further. Could you open an AWS support ticket with additional details https://aws.amazon.com/contact-us . In the meantime we will work on reproducing this on our end.Thanks,Navya.Share"

Answer: "1Accepted AnswerThank you for reporting this to us. It should now be addressed by version 2.8.1. https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-component.html#greengrass-nucleus-component-changelogCheers,MichaelCommentShareEXPERTMichaelDombrowski-AWSanswered 8 months ago"


Question: Using redshift-data boto3 to make cross account redshift calls

"HII am using Boto3 - redshift-data to connect/query to Redshift.I would like to connect to a redshift cluster in a different account. Where do I set the account id or URL for cross account Redshift query ?Currently I am doing:redshift_client_data = boto3.client('redshift-data')test_query = redshift_client_data.execute_statement(        ClusterIdentifier='rs-****-d1',        Database='dw1',        DbUser='username',        Sql='select * from ***.address_data limit 35;',    )How do we modify clusterIdentifier to do cross account calls  ?ThanksFollowComment"

Answer: "0See https://docs.aws.amazon.com/redshift/latest/mgmt/data-api.html :"To run a query on a cluster that is owned by another account, the owning account must provide an IAM role that the Data API can assume in the calling account."CommentShareEXPERTskinsmananswered a year agoEXPERTFabrizio@AWSreviewed a year ago0You can/should specify and API KEY & ID when you're constructing your client which refers to an identity in the target account.redshift_client = boto3.client('redshift-data',            aws_access_key_id='abc',            aws_secret_access_key='123'        )CommentShareEXPERTRajiv_Ganswered a year ago"


Question: Many-to-Many relations and subscriptions in Amplify

"Hello,How can I have a subscription notification message (upon an update) include the full relation data in a many-to-many relation?I have a many-to-many relations using the Amplify @model and @connection directives, as it is documented in the Amplify docs. In this case, I have a Person and City entities, where one person can belong to many cities, and one city can belong to many persons. To model this, I have a PersonCity connecting entity.For queries, I am able to fetch all the cities for a person with a custom GraphQL query, which I pass to the graphqlOperation() function.My problem is that I also want the cities returned via subscription messages when the Person is updated (for instance, a new city is added). Currently, I only receive City ID in the cities array inside Person. However, I want the subscription message to return all the City fields as well, e.g. name.Any help would be greatly appreciated.This is the general schema I'm working with:type Person @model{  id: ID!,  cities: [PersonCity] @connection(name: "PersonCities")}type City @model   {  id: ID!  name: String!  persons: [PersonCity] @connection(name: "CityPersons")}type PersonCity @model(queries: null)  {  id: ID!  person: Person! @connection(name: "PersonCities")  city: City! @connection(name: "CityPersons")  }FollowComment"

Answer: "0AppSync subscriptions publish the object that is returned by the mutation (after filtering subscription selection set fields). That means that if you include the related field in the selection set of the mutations and the subscription query then you will be able to subscribe to the connected information.E.G.mutation {  updatePerson(input: { ... }) {    id    cities { items { id name persons { items { id } } } }  }}subscription {  onUpdatePerson {    id    cities { items { id name persons { items { id } } } }  }}CommentShareMichaelParisanswered 4 years ago0Thanks a lot! That explains it, and it makes sense. I'd be happy to contribute this to the Amplify docs, if that's possible. I'll see if it's open for edits.BTW, Amplify is a fantastic service, kudos for the great work.CommentShareFrankSommersanswered 4 years ago"


Question: "export-image" returns "InvalidParameter" "The image ID (ami-03af6a70ccd8cb578) provided does not exist"

"Probably a n00b question, but what am I doing wrong, that for a standard Amazon Linux 2 AMI ami-03af6a70ccd8cb578 ("amzn2-ami-kernel-5.10-hvm-2.0.20211201.0-x86_64-gp2")aws ec2 describe-images --image-ids ami-03af6a70ccd8cb578works fine and shows:{    "Images": [        {            "Architecture": "x86_64",            "CreationDate": "2021-12-01T20:06:29.000Z",            "ImageId": "ami-03af6a70ccd8cb578",            "ImageLocation": "amazon/amzn2-ami-kernel-5.10-hvm-2.0.20211201.0-x86_64-gp2",            "ImageType": "machine",            "Public": true,            "OwnerId": "137112412989",            "PlatformDetails": "Linux/UNIX",            "UsageOperation": "RunInstances",            "State": "available",            "BlockDeviceMappings": [                {                    "DeviceName": "/dev/xvda",                    "Ebs": {                        "DeleteOnTermination": true,                        "SnapshotId": "snap-0d3c07fe7b24df1b8",                        "VolumeSize": 8,                        "VolumeType": "gp2",                        "Encrypted": false                    }                }            ],            "Description": "Amazon Linux 2 Kernel 5.10 AMI 2.0.20211201.0 x86_64 HVM gp2",            "EnaSupport": true,            "Hypervisor": "xen",            "ImageOwnerAlias": "amazon",            "Name": "amzn2-ami-kernel-5.10-hvm-2.0.20211201.0-x86_64-gp2",            "RootDeviceName": "/dev/xvda",            "RootDeviceType": "ebs",            "SriovNetSupport": "simple",            "VirtualizationType": "hvm"        }    ]}But yet:aws ec2 export-image --image-id 'ami-03af6a70ccd8cb578' --disk-image-format VMDK --s3-export-location S3Bucket=XXX,S3Prefix=exports/Throws:An error occurred (InvalidParameter) when calling the ExportImage operation: The image ID (ami-03af6a70ccd8cb578) provided does not exist. Please make sure the ID is correct.FollowComment"

Answer: "0Accepted AnswerThere are several limitations for export image that can result in an error. These are documented here: https://docs.aws.amazon.com/vm-import/latest/userguide/vmexport_image.html#limits-image-exportThe one that applies in this case is "You can't export an image from Amazon EC2 if you've shared it from another AWS account". If you're using the standard Amazon Linux 2 AMI, that exists in another account, managed by AWS. You should be able to copy the AMI into your own account, then export it using that AMI ID, as long as none of the other limitations apply.CommentShareEmil Lerchanswered a year agoAWS-User-1208 a year agoThat was it indeed! The documentation didn't make it obvious that "shared from another AWS account" also applied to public Amazon-published AMIs, and the "InvalidParameter" "image ID does not exist" is a misleading error code IMHO. But thank you for clarifying: I'm able to export the copied AMI after waiting a while for the copied AMI to become "Available" from "Pending," which BTW took a while even after the contained snapshot was copied over successfully.Share"


Question: sending http request to API gateway from my frontend using IAM authorization

"so, i created a cognito user pool and identity pool to sign in to my application. I got my access key, secret key and session token from identity pool. Now i want to send http post request to my API gateway which has IAM authorization.  So in order to send request do i have to create a signature using signature v4 process or is there a resource in aws-sdk that can do it for me ?FollowComment"

Answer: 2You will need to sign the request yourself. This is an example of how to do it in Python.CommentShareEXPERTUrianswered 9 months agoEXPERTChris_Greviewed 9 months ago


Question: How to avoid duplicate IAM roles when deploying stackset to multiple regions

"Scenario:I'm deploying a cloudformation template to automate action in response to a Cloudwatch event rule. The template creates:IAM Role - Lambda ExecutionLambda Function - RemediationEvents Rule - Trigger LambdaLambda Permission - Events can Invoke LambdaProblem:When deploying this solution to multiple regions via stackset it results in duplicate IAM roles being created. This seems unnecessary.Question:How, if possible, might I go about creating the IAM role once per account and having each region's lambda use that single role within the same stackset?FollowComment"

Answer: "0Accepted AnswerMy approach has been: tie the role to the "thing" that consumes/needs it, centralizing might seem good but can be dangerous because of a larger impact.If you're using StackSets, why not set one region as your "main" one and create a condition on the IAM role that only creates it within that region. This way you can still use a single StackSet but only have one IAM role.Otherwise, you could setup roles within another stack, turn on termination protection and export it's ARN. Something like `FunctionalityX-Lambda-RoleArn".Personally I try avoid custom resources where they aren't required, especially if you see potentially a lot of updates/changes.CommentShareEXPERTRaphaelanswered 3 years ago"


Question: Can REST GET method in API Gateway support a request body? Does API Gateway drop the body?

"I saw an earlier question but I have a specific question and some behavior from the server I can't find answers to.Setup:I have an API Gateway setup via VPC link. It has a GET method. It goes through a NLB and a ALB to a target EC2 hosting a SAP REST API. I see from the console and the REST spec that body requests for GET is not supported.However, what will happen if someone sends a GET request WITH a body to the API gateway? Will API Gateway simply drop the body?I presume the "best solution" here is to change it to a POST, if a request body is necessary?FollowComment"

Answer: "0I'm not 100% sure but I'd assume if you are using a Proxy request it would pass-through.  But as a consumer, if you need a body, POST is the cleanest way and least confusing way for your consumers.CommentSharebpyleanswered 3 months ago"


Question: That PHP calls KinesisVideoSignalingChannelsClient getIceServerConfig doesn't return IceServerList.

"Using PHP to call KinesisVideoClient describeSignalingChannel can return ChannelARN successful,but call KinesisVideoSignalingChannelsClient getIceServerConfig doesn't return IceServerList.Aws\Result Object([data:Aws\Result:private] => Array    (        [@metadata] => Array            (                [statusCode] => 200                [effectiveUri] => https://kinesisvideo.ap-northeast-1.amazonaws.com/v1/get-ice-server-config                [headers] => Array                    (                        [x-amzn-requestid] => 0e909c15-4a9b-4a95-868b-f27ea3a4dc8a                        [content-type] => application/json                        [content-length] => 90                        [date] => Thu, 24 Feb 2022 06:01:18 GMT                    )                [transferStats] => Array                    (                        [http] => Array                            (                                [0] => Array                                    (                                    )                            )                    )            )    )[monitoringEvents:Aws\Result:private] => Array    (    ))my source code :$credentials = new Credentials('id','password');$kvClient = new KinesisVideoClient(['region'      => 'ap-northeast-1','version'     => 'latest','credentials' => $credentials]);$describeSignalingChannelResponse = $kvClient->describeSignalingChannel(['ChannelName' => 'stream1',]);$channelARN = $describeSignalingChannelResponse['ChannelInfo']['ChannelARN'];$kvscClient = new KinesisVideoSignalingChannelsClient(['region'      => 'ap-northeast-1','version'     => 'latest','credentials' => $credentials]);$getIceServerConfigResponse = $kvscClient->getIceServerConfig(['ChannelARN' => $channelARN]);FollowComment"


Question: Data Transfer charges across AWS Regions

"A customer is getting charged for data transfer ($700/month) from US-East to US-West. I verified with them and they don't have any cross region replication setup for S3, no snapshots, no RDS read replicas, 5 tiny EBS snapshots in US-West. What could be the other reasons that may cause data egress charges? any thoughts or comments?FollowComment"

Answer: "0Accepted AnswerWith Cost Explorer, customers can now find the cause themselves, before reaching out to support.Within Cost Explorer, use the Filter of Usage Type as 'DataTransfer-Out-Bytes (GB)'. It is avaialble for each region and this usage type is prefixed with region's 3 alphabet alias like 'USW2' (i.e. US West-2) etc.After the correct UsageType is selected, chose the GroupBy as 'Service', this will show the DataTransferOut cost originating from each service, helping understand the cause of the issue. There is additional filter of 'API Operation' available, if the customer wants to see which specific API operation within a service caused that DataTransferOut.Cost Explorer provides date range window to narrow down on different date ranges.Hope it helps.CommentShareAWS-User-8159347answered 4 years ago"


Question: Unable to scan Wifi networks with AmazonFreeRTS in iOS app after connecting to one

"Hi,I'm working with the AmazonFreeRTS library for iOS. The app I'm writing only needs to perform the function of connecting the device to a Wifi network.I'm able to successfully establish a Bluetooth connection to my device, and I'm able to retrieve a list of nearby Wifi networks. I'm also able to connect to my Wifi network by providing its password with the SaveNetworkRequest. I can tell that it worked because I can see that the device in my router's DNS table.The problem is that once the device is connected to Wifi, I can no longer get a list of Wifi networks in order to either see which network is connected or potentially let the user connect to a different network. When I issue the command to list networks, I get no response back from the device, not even an error.Thinking the problem might be in my code, I completely wiped out and reset my device (it's an ESP32 dev board, so I'm able to do this using esptool) and I repeated the procedure using the demo app provided by Amazon (AmazonFreeRTSDemo). The result is the same, once I connect, I can no longer see a list of networks.Is there some command I need to give in order to either disconnect my device from Wifi or otherwise put it in a state where it is able to scan Wifi networks again? I can see that the demo app starts the scan process by writing a 1 to the NetworkConfigControl address, and I've done the same, but it doesn't appear to help.Thanks,FrankFollowComment"

Answer: 0Hi Frank. I think this is answered by our discussion here: https://repost.aws/questions/QUYlyZtOVeT2Otn3i1NRR-zg/amazon-free-rtos-bluetooth-questionsCommentShareEXPERTGreg_Banswered a year ago


Question: API Gateway IAM_AUTH role identification

"Hello I have the following scenariocallee (with IAM_Role) -> API Gateway -> Downstream app.API Gateway will check the resource policy when IAM_AUTH is enabled to make sure that the role is valid. However, the customer wants to do a secondary check on the downstream app for an end to end validation so it needs to know the IAM role used for the original request to the API Gateway. Is there a way to do this?For exampleserver-a with role-a calls API Gateway with a request. API Gateway validates it's resource policy that role is allowed to make that call. Server-b downstream gets the request from API Gateway and also does a secondary check to have additional logic to check what role-a can do at an application level. Is there a way to pull that role from API Gateway in a timely fashion?Something in the header preferably such as the role name or role ID. The original request is sigv4 signed.Cloudwatch logs would be too delayed.FollowComment"

Answer: "0Accepted Answer$context.identity.userArn or $context.identity.user should have what you wanthttps://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-mapping-template-reference.html#context-variable-referenceThese are available in Lambda Proxy requests (which have all context by default), and are also available in mapping templates if you use non-proxy integration.CommentShareAWS-User-3193127answered 4 years ago"


Question: Non celebrity person recognition using Amazon Rekognition

"Is it possible to use Amazon Rekognition to detect faces of employees in a video of my company employees? I know Amazon Rekognition Video Analysis can analyze videos and detects objects, activities, people, celebrities, but can I use it for custom people (e.g. company employee) detection? In this case, instead of a celebrity name, it will be an employee name.FollowComment"

Answer: "0Accepted AnswerYes, this is possible. See Searching stored videos for faces.First, you create a collection of faces. In this case, you would create a collection of employee's faces. See Adding faces to a collection.Then, you can StartFaceSearch and provide the ID of your face collection, so Amazon Rekognition will only search for those faces. This is an asynchronous call, so when the processing has been completed, you use GetFaceSearch to fetch the results.CommentShareAWS-User-6881815answered 3 years ago"


Question: Recurring Lambda Scheduler

"Recurring Lambda scheduler is added to lambda "PBZTriggerSMSCampCron-kbeeprd",which runs every 1 minute,but in a same minute it was triggered twice which caused a huge error and inconsistencies in Production.Can anyone please help why it was triggered twice in a same minute.The Request Id are1.RequestId: afda9bf6-c885-477f-aaf8-631381e4a6762.RequestId: acf72f6b-5928-4fff-84c6-dfce4de89b4aThey where triggered at 18:16:23 and 18:16:44 respectivelyCan anyone please help why this occured.This Caused huge issue in ProductionFollowComment"

Answer: "2Hi, I don't have access to your account and can neither see your resources nor the event records.How are you triggering the "recurring Lambda scheduler".  Is this via Amplify or EventBridge (CloudWatch Events) or something else?I would check the following:Any other possible triggers of the lambda itself.Are there any errors on the lambda running?  If so, it's possible that the retry functionality could have kicked off another run of the lambda.What does the timeout look for your lambda function?Lastly, I would check the idempotency of the function.  This guide may be helpful: https://aws.amazon.com/premiumsupport/knowledge-center/lambda-function-idempotent/CommentSharejsoncanswered a year agoAWS-User-7625114 a year agoThe Lambda is triggered via Amplify.No triggers are present for lambda except the Recurring SchedulerThe timeout of lambda function is 15 minutes.There are no errors ,while trigger-1 was runnings till  ,then another trigger was triggeredShare"


Question: How can I use mysqldump in AWS RDS database and attach the result to JIRA ticket

"Hello,I wonder if someone could help me with the steps to take a backup of an RDS DB using mysqldump and attach the result to a JIRA ticket pleaseMany thanks in advanceFollowComment"

Answer: "0Thank you so much for asking your question.To dump data from RDS MySQL database instance, you can use EC2 instance, and mysqldump, then compressed it and attache the results to a JIRA.You can find the command detail on  RDS document(please see the step 2), and MySQL document (please select the version you are using from dropdown list).RDS MySQL has some limitation on using mysqldump, please read knowledge center in advance.CommentShareYUTAKA_Hanswered 5 months ago"


Question: RDS  "Failed to start" when i changed the parameter group

"with the default parameter group, there is no problem to pause and start RDSbut with the custom parameter group, i face "Failed to start" error everytime i pause and start RDSafter the "Failed to start" error, RDS backup and reboot the database automatically, and it works fine at the end.i've changed the parameter group from "default.mysql8.0" to the custom parameter groupi haven't changed any parameters of the new parameter group, every parameters is same with the default parameter groupthis is the log of the lastest pause and start,i have no idea what is the problem, thanks for the any advice2022-12-03T16:31:42.090150Z 0 [Warning] [MY-011068] [Server] The syntax 'log_s lave_updates' is deprecated and will be removed in a future release. Please use log_replica_updates instead. 2022-12-03T16:31:42.090159Z 0 [Warning] [MY-011069] [Server] The syntax '--m aster-info-repository' is deprecated and will be removed in a future release. 2022-12-03T16:31:42.090164Z 0 [Warning] [MY-011069] [Server] The syntax '--m aster-info-repository' is deprecated and will be removed in a future release. 2022-12-03T16:31:42.090220Z 0 [Warning] [MY-011069] [Server] The syntax '--relay-log-info-file' is deprecated and will be removed in a future release. 2022-12-03T16:31:42.090225Z 0 [Warning] [MY-011069] [Server] The syntax '--relay-log-info-repository' is deprecated and will be removed in a future release. 2022-12-03T16:31:42.090252Z 0 [Warning] [MY-011068] [Server] The syntax 'skip_s lave_start' is deprecated and will be removed in a future release. Please use skip_replica_start instead. 2022-12-03T16:31:42.090259Z 0 [Warning] [MY-011068] [Server] The syntax 's lave_exec_mode' is deprecated and will be removed in a future release. Please use replica_exec_mode instead. 2022-12-03T16:31:42.090265Z 0 [Warning] [MY-011068] [Server] The syntax 's lave_load_tmpdir' is deprecated and will be removed in a future release. Please use replica_load_tmpdir instead. 2022-12-03T16:31:42.090437Z 0 [Warning] [MY-010101] [Server] Insecure configuration for --secure-file-priv: Location is accessible to all OS users. Consider choosing a different directory. 2022-12-03T16:31:42.090470Z 0 [Warning] [MY-010918] [Server] 'default_authentication_plugin' is deprecated and will be removed in a future release. Please use authentication_policy instead. 2022-12-03T16:31:42.090478Z 0 [System] [MY-010116] [Server] /rdsdbbin/mysql/bin/mysqld (mysqld 8.0.30) starting as process 731 2022-12-03T16:31:42.099878Z 0 [Warning] [MY-013907] [InnoDB] Deprecated configuration parameters innodb_log_file_size and/or innodb_log_files_in_group have been used to compute innodb_redo_log_capacity=268435456. Please use innodb_redo_log_capacity instead. 2022-12-03T16:31:42.101840Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started. 2022-12-03T16:31:42.104547Z 1 [Warning] [MY-012191] [InnoDB] Scan path '/rdsdbdata/db/innodb' is ignored because it is a sub-directory of '/rdsdbdata/db/ 2022-12-03T16:31:42.513654Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended. 2022-12-03T16:31:42.827606Z 0 [Warning] [MY-013414] [Server] Server SSL certificate doesn't verify: unable to get issuer certificate 2022-12-03T16:31:42.827781Z 0 [System] [MY-013602] [Server] Channel mysql_main configured to support TLS. Encrypted connections are now supported for this channel. 2022-12-03T16:31:42.887455Z 0 [System] [MY-010931] [Server] /rdsdbbin/mysql/bin/mysqld: ready for connections. Version: '8.0.30'  socket: '/tmp/mysql.sock'  port: 3306  Source distribution. 2022-12-03T16:34:08.192155Z 11 [Warning] [MY-010055] [Server] IP address '125.178.113.15' could not be resolved: Name or service not known 2022-12-03T16:34:08.192271Z 12 [Warning] [MY-010055] [Server] IP address '125.178.113.15' could not be resolved: Name or service not known 2022-12-03T16:34:08.192151Z 10 [Warning] [MY-010055] [Server] IP address '125.178.113.15' could not be resolved: Name or service not known 2022-12-03T16:34:08.192487Z 9 [Warning] [MY-010055] [Server] IP address '125.178.113.15' could not be resolved: Name or service not known FollowComment"

Answer: 0Please confirm that you don't have any custom parameters with this command:aws rds describe-db-parameters --db-parameter-group-name <custom-parameter-group> --source userCommentShareMODERATORphilawsanswered 6 months agorePost-User-3380945 6 months agoi tried with this command aws rds describe-db-parameters --db-parameter-group-name silentwheel-db-parameter-group --source userbut i faced this error An error occurred (DBParameterGroupNotFound) when calling the DescribeDBParameters operation: DBParameterGroup not found: silentwheel-db-parameter-groupis there any reason aws cannot find my custom parameter group?Share


Question: discrepancy between pcluster partition conf and EC2 instance specification

"Submitting a slurm job with parameters#SBATCH --nodes=1#SBATCH --ntasks-per-node=1#SBATCH --cpus-per-task=6#SBATCH --gres=gpu:1#SBATCH --partition=gpu-t4fails withsbatch: error: CPU count per node can not be satisfiedThe partition comprises g4dn.2xlarge instances with 8 "vCPUs", according to https://aws.amazon.com/ec2/instance-types/g4.Surprisingly to me, /opt/slurm/etc/pcluster/slurm_parallelcluster_gpu-t4_partition.conf includesNodeName=gpu-t4-dy-g4dn-2xlarge-[1-2] CPUs=4 RealMemory=31129 State=CLOUD Feature=dynamic,g4dn.2xlarge,g4dn-2xlarge,gpu Gres=gpu:t4:1Should not CPUs= be larger than 4 for this specific instance type?FollowComment"

Answer: "0I searched some more and and found that, according tohttps://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cpu-options-supported-instances-values.html#cpu-options-accelerated,g4dn.2xlarge may not be supporting more than 4 "Valid CPU cores".CommentSharerePost-User-6396518answered 5 months ago0If DisableSimultaneousMultithreading is not specified in the cluster configuration file, the CPU is 8:NodeName=queue1-st-g4dn2xlarge-[1-1] CPUs=8 RealMemory=31129 State=CLOUD Feature=static,g4dn.2xlarge,g4dn2xlarge,gpu Gres=gpu:t4:1If DisableSimultaneousMultithreading is set to true in the cluster configuration file, the CPU is 4:NodeName=queue1-st-g4dn2xlarge-[1-1] CPUs=4 RealMemory=31129 State=CLOUD Feature=static,g4dn.2xlarge,g4dn2xlarge,gpu Gres=gpu:t4:1See https://docs.aws.amazon.com/parallelcluster/latest/ug/Scheduling-v3.html#yaml-Scheduling-SlurmQueues-ComputeResources-DisableSimultaneousMultithreading for more informationCommentSharerePost-User-7640917answered 5 months ago"


Question: SNS notification email/SMS body customization

"I am publishing DHT11 sensor data in AWS cloud through AWS IOT Core. SNS notification email/SMS will trigger if temp/humidity crosses a certain threshold. In present, i am getting below email/SMS using SNS,SMS body:topic name > {}EmailSubject line --> topic namebody --> {}Please let me know if i can customize SNS email/SMS body.FollowComment"

Answer: "0Accepted AnswerHi. If you are talking about the SNS rule action for the AWS IoT Core Rules engine then no. However you can introduce a Lambda to achieve it. Tutorial here: https://docs.aws.amazon.com/iot/latest/developerguide/iot-lambda-rule.htmlIf you require more sophisticated alert logic, you may consider using AWS IoT Events and this also supports customizing the notification messages using Lambda: https://docs.aws.amazon.com/iotevents/latest/developerguide/lambda-support.html. Alternatively, if you would visualize the data in Amazon Managed Grafana already, its alerts allow you to customize the message body: https://docs.aws.amazon.com/grafana/latest/userguide/alert-notifications.html#list-of-supported-notifiersCommentShareEXPERTGreg_Banswered 8 months agorePost-User-3741395 8 months agoThanks Greg for the help.Share"


Question: Can AWS Network Firewall allow traffic from an instance using its tags or some other metadata

Can AWS Network Firewall allow traffic from an instance using its tags or some other metadata?Use case: We have an instance in the same subnets as the other instances. We want that instance to access a smaller list of allowed targets (outbound internet domains or only allow that instance to access a target and not the other instances within the same subnetsFollowComment

Answer: 3Accepted AnswerAWS Firewall does not currently support using tags or other metadata. These are your available rule groups that you can create https://docs.aws.amazon.com/network-firewall/latest/developerguide/rule-groups.html.In addition AWS firewall can't inspect instances within the same subnet https://aws.amazon.com/blogs/aws/inspect-subnet-to-subnet-traffic-with-amazon-vpc-more-specific-routing/Here are some good deployment models for AWS Firewall https://aws.amazon.com/blogs/networking-and-content-delivery/deployment-models-for-aws-network-firewall-with-vpc-routing-enhancements/CommentShareAJ_Canswered a year agoEXPERTBrettski-AWSreviewed a year ago


Question: Create client in Unity

"Hello, I am trying to integrate GameLift into my Unity game, and I have gotten the server to start through GameLift, but can't seem to find the methods to call in Unity to connect from a client. I have "using Aws.GameLift.Server;", which gives me access to all the methods for setting up a server, but there doesn't seem to be a namespace for the client side methods. Thanks for any help!FollowComment"

Answer: "0Accepted AnswerHi @REDACTEDUSERYou are right, the GameLift Server SDK does not have client side methods. However, you can still include them by building the AWS .NET SDK [1]. Build the Net35 project and move the DLLs to your Plugins folder in Unity. This is very similar to how you imported the server DLLs [2]. The client DLLs you are interested in are AWSSDK.GameLift.dll, AWSSDK.Core.dll, AWSSDK.CognitoIdentity.dll, and AWSSDK.SecurityToken.dll.Hope that helps, let us know if you have more questions! We will definitely look into ways to make this process more user friendly.[1] https://aws.amazon.com/sdk-for-net/[2] http://docs.aws.amazon.com/gamelift/latest/developerguide/integration-engines-unity-using.htmlCommentSharerePost-User-5404175answered 6 years ago0It seems that although there is Unity support in the GameLift Server SDK, the AWS .NET SDK, as indicated at here, does not yet include GameLift in its list of supported modules.Not sure if this is an oversight at the moment given this is all very newly announced. I suspect we will see support for GameLift get included in the Unity SDK shortly.CommentSharerePost-User-9931085answered 6 years ago0Hi.My company is looking for a network solution for a Unity game.We looked for the GameLift service and it seem interesting, but we're not sure to correctly understand what the service can provide us.We tried the sample app and followed the "get started" section but without being able to go further.The documentation indicated that the cpp-aws-sdk must be used for unity client integration, but it appears that the Unity-Net-sdk must be used and the gameLift service is missing in this sdk.We understand that the GameLift service is for create gameSessions and scale game servers, but what about the client-server communication? Can we use the Unity multiplayer functionalities? Can we use GameLift for all platforms in unity (iOS, Android, WebGL).Thanks for clarifications.CommentSharerePost-User-7845958answered 6 years ago0I think at this point you will have to manage the GameLift sessions outside of the Unity client attempting to connect to them.A solution might be to use the the .NET Core SDK through an AWS Lambda service that the client can communicate with either directly or through an AWS API Gateway. The Lambda service, with the GameLift api available to it, can then initialize and manage game sessions and pass this information back to the Unity client.I think ultimately this is how you would may want to structure your network backend, as you might not want to give the client direct access to the GameLift resources. It is a bit cumbersome for testing purposes though.I'm in the process of trying to put something like this together for my own understanding and will share it here if I make any decent head way.CommentSharerePost-User-9931085answered 6 years ago0Thanks for the reply. Hopefully they add it to the Unity SDK soon, would really like to switch over to GameLift from our current hosting solution.CommentSharerePost-User-4890278answered 6 years ago0Could you expand a bit more on why structuring it this way may be better than integrating GameLift directly into the Unity client?CommentSharerePost-User-4890278answered 6 years ago0@REDACTEDUSERCommentSharerePost-User-8353690answered 6 years ago0Sorry for the late reply.I think depending on the auxiliary services around your game you may want to restrict session creation and initialization to control of an authoritative server.This would let you modify game initialization behaviour without issuing updates to the client.Your service would also be a little more secure against potential attacks that might abuse open access to your GameLift resources.CommentSharerePost-User-9931085answered 6 years ago0Thanks Andrew, I really appreciate it!CommentSharerePost-User-4890278answered 6 years ago0I think AWSSDK.GameLift.dll, AWSSDK.Core.dll is enough for client side.CommentSharerePost-User-0166092answered 6 years ago0Hi @REDACTEDUSERI have read a lot of posts saying how using another service on top of the GameLift service would make it more secure, but I just don't see how.Since you can give IAM users access only to certain actions, that means that a malicious user could only spam the CreateGameSession or StartMatchmaking calls, which is bad, sure. But what's stopping that user from spamming your intermediate service with those same requests ?How could the intermediate service can be made more "DDOS-proof" ?What am I missing ?CommentSharerePost-User-9673784answered 5 years ago0Bump. This never got any clarification and it still isn't clear what the intended approach is when it comes to Unity and Gamelift Client.CommentSharerePost-User-8080656answered 5 years ago0Hey there - apologies for the delay getting back to you. We do not recommend game clients connect directly to GameLift. Brendon above has a lot of the main points covered - lack of control over how often game clients call CreateGameSession or StartMatchmaking means your game can "fill up" quickly if even one client starts to misbehave. Instead our recommended approach is to proxy client-side requests through something that can authenticate your player connections - AWS Lambda is a good choice here coupled with Cognito.Here's a high-level diagram from our documentation that shows our best-practice deployment for GameLift servers in relation to your game client:https://docs.aws.amazon.com/gamelift/latest/developerguide/gamelift-architecture.htmlCommentSharerePost-User-5697045answered 5 years ago0Hi @REDACTEDUSERCommentSharerePost-User-1403441answered 4 years ago0Hi @hoover_song , I have the same problem here. I am trying to integrate client DLL into a Unity3d project, and I put prebuilt AWSSDK.Core.dll(3.3.29.12 .net35) into the Assets/Plugin directory. However, I failed to create AmazonGameLiftClient. It seems the reason is that Unity3d project is lack of app.config.I have asked a question about the error but get no answer.Had you find a way to integrate GameLift client into Unity3d, or you used the separate game service approach?Thank you very much.CommentSharerePost-User-1403441answered 4 years ago0Hi! Sorry to bump this after this time... But Here's the only place for this topic.When you say(And the diagram) "Client Service", I don't know what you want us to do.I can explain: In the API, only a client can request to create a session. You want us to make a "Fake client" (That is the service) to request this type of things and connects the "Real" Clients with the info from the service, without be a GameLift Client?Thanks in advanceCommentSharerePost-User-3780562answered 3 years ago0@REDACTEDUSERYour clients request actions in AWS services directly - Means your clients have to know about and have permissions to call and take action on AWS resources directly. This could work for your game but if clients are compromised, have bugs or you need to make changes to your backend you have fewer options to control. Basically it would be fine for development where your client base is limited.You clients request actions via a proxy service - You know have a trusted place to make requests, its easier to make changes to the backend and it gives you a place to build game service logic to support  FlexMatch etc. However this is more complex and something you could build later esp as your game needs to expand its testing base or is getting ready for release.@REDACTEDUSERCommentSharerePost-User-5332620answered 3 years ago0Hello!The doubt is: I can make a "Fake client" (Instance of GameLiftClient) and send requests from a trusted place then send the "real clients" to connect to the session created from the "Fake Client"?CommentSharerePost-User-3780562answered 3 years ago"


Question: Athena and Redshift Spectrum performance best practices

A customer is working on a PoC to validate both Athena & Redshift spectrum. Need help with following questions to provide some clarity.Is it fine to have a small Redshift cluster (e.g. 2-node dc2.large cluster) and have almost all data in S3 to be queried through Redshift Spectrum. Is this as recommended approach? What is the minimum recommended size of the cluster to use Redshift Spectrum?What is the correlation between performance and size of data stored in S3. Do we have any numbers that we shall share on what will be the general query performance for specific size of data using both Athena & Redshift Spectrum.Is there any major difference in query syntax between Athena & Redshift Spectrum. They want to understand how easy it's to swap between Athena & Redshift Spectrum. If there is a difference is there any known transition layer to support both of them?FollowComment

Answer: "0Accepted AnswerI would go through the Redshift Spectrum best practices blog here and plan to run some tests.  It is hard to quantify such metrics as every customer workload is different.Regarding your questions:1/ Depends on a variety of factors as noted in the best practices blog.  Such as parquet file format, Snappy compression, proper partitioning on S3 to help with query access patterns/filters, type of queries such as ORDER BY, DISTINCT which cannot be pushed down to Spectrum compute layer etc.  Amazon Redshift Spectrum owns managed compute layer independent of your Redshift cluster.  The number of Redshift Spectrum compute nodes that a query uses depends on the Redshift node type and the overall workload.  Based on the demands of your queries and Redshift cluster configuration, Redshift Spectrum scales automatically in an intelligent fashion.2/ Same as #13/ Regarding query syntax difference between Athena and Redshift Spectrum, yes.Athena's query engine is Apache Presto and hence, it follows query syntax of Apache Presto.  I would refer to Presto documentation here under "SQL Language" and "SQL Statement Syntax".  As far as Spectrum goes, you will find that Spectrum follows pretty much the same syntax as Redshift except things like you cannot do DML operations on Spectrum tables due to the external table.For the second part of your question, I would make sure that customer is aware when to use Athena versus Spectrum.  They are not meant to replace each other but rather meant for different workloads.  Athena is more like rent-a-car for adhoc/on-demand data explorations as and when needed without needing to spin up a cluster etc.  Whereas Redshift Spectrum is more like a secondary car and Redshift is your primary car.  A common pattern for Redshift Spectrum is to run queries that span both the frequently accessed “hot” data stored locally in Amazon Redshift and the “warm/cold” data stored cost-effectively in Amazon S3.  This pattern serves to separate compute and storage, enabling independent scaling of both to match the use case without having to pay disproportionately for value.  Athena and Redshift Spectrum query optimizers are completely different.  There are also differences such as you can get the same rich compliance standards of Amazon Redshift.CommentShareAWS-User-2533362answered 4 years ago"


Question: Elasticache - Usecase

What is the main usecase for Elasticache for RedisFollowComment

Answer: "1Hi, If someone wants data, you can deliver that data much faster if it's cached.  Consider caching your data if the following is true:a) Your data is slow or expensive to get when compared to cache retrieval.b) Users access your data often.c) Your data stays relatively the same, or if it changes quickly staleness is not a large issue.Usecases for Redis/Memcache are product catalogs in e-comm portal, Selling tickets of an event.  Basically, users tend to opt out of slower sites and hence caching improves data delivery much faster.CommentShareKamalanswered a year ago"


Question: Does FlexMatch support StartMatchmaking where the team is already big enough to satisfy the rule used?

"The game we are working on uses game servers for matches that may be 1-4 players (depending on the level in question.)I would like to keep the client logic simple and always use matchmaking, even if it's a 1 player game, or a multiplayer game where we already have a full team ready.When I attempt to StartMatchmaking with a number of players that matches the min/max settings of the rules, the ticket is stuck in SEARCHING state until timeout. Do I have to detect that I already have enough players and manually create the game session and player sessions in this case?Thank you in advance for the help!FollowComment"

Answer: "0Accepted AnswerHey @REDACTEDUSERThanks for trying out FlexMatch.We are adding support for 1 player matches today as we have had a number of developers request the ability to quickly integrate FlexMatch into their clients via 1 player matches. Those changes are currently flowing out to all regions and should be available in all regions by the end-of-day tomorrow. Until then, you will see tickets stuck in searching until timeout.FlexMatch will take all players on a matchmaking request and place them onto the same team. As such, you can submit a matchmaking request with each player you want on the team, and FlexMatch will find players to match against.Let us know if you have any other questions!CommentSharerePost-User-4056962answered 5 years ago0Hey @REDACTEDUSERPlease let us know if you have any more questions as you continue integrating GameLift and FlexMatch into your games.CommentSharerePost-User-4056962answered 5 years ago0Sorry -- I was more optimistic about our rollout times than I should have been. I anticipate this being in all regions by end-of-day tomorrow.CommentSharerePost-User-4056962answered 5 years ago0Ah, so the confusion here is that you think there are multiple teams. The game only has 1 team per instance.When I do the matchmaking, I am passing in 1..X players for that 1 team. In some cases, the team is already full of enough players before I start matchmaking (maybe I've invited enough friends to fill up the team). In such a case, I still want to use FlexMatch because then I deal with one flow (StartMatchmaking, DescribeMatchmaking, etc.) instead of having a separate flow where I CreateGameSession, CreatePlayerSessions, and so forth.When I call StartMatchmaking with 1 team of X players, where X == the Min/MaxPlayers in my RuleSet, I am stuck in SEARCHING.As an example, here is the ruleset I am using for a 2 player match. If I call StartMatchmaking from 1 client with 2 players, it gets stuck in SEARCHING. If I call StartMatchmaking from 2 clients with 1 player each, it moves on to PLACING.    {"name": "match-by-questId-2","ruleLanguageVersion": "1.0","playerAttributes": [{"name": "questId","type": "string"}],"teams": [{"name": "players","maxPlayers": 2,"minPlayers": 2}],"rules": [{"name": "SameQuestId","description": "Only match players when they're trying to play the same quest/game type.","type": "comparison","operation": "=","measurements": ["flatten(teams[*].players.attributes[questId])"]}]}CommentSharerePost-User-0025343answered 5 years ago0That all makes sense. The case I'm having trouble with is 1 team, and I know all the players. (See below for my ruleset)Also, thank you so much for all the help.CommentSharerePost-User-0025343answered 5 years ago0Awesome, it's good to know that it's not a known limitation (aside from the case of N=1, which sounds like is going to change soon!) Very promising. :) Thanks again for the help.CommentSharerePost-User-0025343answered 5 years ago0Re: 1 player matches, that sounds great, thanks.For the second part - it sounds like you are saying I can't use matchmaker to start a match if my team is already the correct size? But that I could use matchmaking by splitting the start call call into multiple calls (one per team member)? I suppose I would then match them back together via some player attribute (team id)?CommentSharerePost-User-0025343answered 5 years ago0NB: My confusion is that if I have a 2 player game, and call StartMatchmaking with 2 players listed, it also gets stuck in SEARCHING.CommentSharerePost-User-0025343answered 5 years ago0I am saying the opposite -- if you know all the players that you want to be together on a team, you submit all of them on a single ticket, and then the matchmaker will find players for the other team (assuming you have a match with 2 teams).If you have all of the players you want for both teams, FlexMatch won't be able to put the teams together in the same match -- you would need to just start your game session by creating it and the player sessions directly.Does that help?CommentSharerePost-User-4056962answered 5 years ago0How many teams do you have in your ruleset? Two teams with 1 player each? If that is the case, then submitting a single ticket with 2 players will not match (and should return an error). If you send me your matchmaker name and rule set name, I can better help you out.CommentSharerePost-User-4056962answered 5 years ago0Ok, got it -- thanks for bearing with me here!You should still be able to have just the one flow because all of the players passed in on that ticket will all be placed into the same match. If you start the match with maxPlayers, it should start immediately.My thought here is that you might be hitting the 'nth' case of the min=max=1 case that we addressed today that I mentioned earlier. I will investigate and see what's going on here.CommentSharerePost-User-4056962answered 5 years ago0We investigated, and it turns out that it is actually due to a confluence of three things:You are making party requests (multiple players on a ticket)questId is a stringYou are using a comparison ruleThe issue is itself is that to compare tickets to each other via the comparison rule during matchmaking, we have to reduce each ticket's playerAttributes to one value per attribute. If there are multiple people in a ticket (a party) then we have to know how to combine them which is controlled via the "partyAggregation" field for the comparison rule type. The default for partyaggregation is average.Right now, you when you send in two players on the same ticket, we try to take the average of your two questId strings and do not handle that well.While we fix that, you could override the default averaging for partyAggregation to do a min or a max operation instead, since those operations are valid for string comparisons.See "Comparison rule (comparison)" in our documentation.We will update the documentation when we decide how we want to handle taking the average of strings, but in the meantime, can you work around the issue by doing a min/max operation for partyAggregation instead?Sorry for the inconvenience here!CommentSharerePost-User-4056962answered 5 years ago0@REDACTEDUSERMy ruleset there looks like this:    {"name": "match-by-questId-1","ruleLanguageVersion": "1.0","playerAttributes": [{"name": "questId","type": "string"}],"teams": [{"name": "players","maxPlayers": 1,"minPlayers": 1}]}CommentSharerePost-User-0025343answered 5 years ago0Ok great, no worries, I know how that goes. :)CommentSharerePost-User-0025343answered 5 years ago0Just wanted to follow up and say that 1 player matches are now working for me as well. Very happy that I can use one approach on all of the match types. :) Thanks again!CommentSharerePost-User-0025343answered 5 years ago0"teams": [{"name": "guardians","maxPlayers": 3,"minPlayers": 3}],"expansions":[{"target":"teams[guardians].minPlayers","steps":[{"waitTimeSeconds":10,"value": 2},{"waitTimeSeconds":20,"value": 1}]}]if its not a joke, then just read very attentive to rule set expansions and make something like thatCommentSharerePost-User-7088876answered 5 years ago0Glad to hear we were able to get you unblocked! Let us know if you have any more questions.CommentSharerePost-User-4056962answered 5 years ago0Hey @Matchmaker, I think we reached max reply depth. :)I tried your advice to use playerAggregation="max/min" and am now getting into PLACING for games where I'm submitting a team of players equal to the min/max of the ruleset. So thank you! :) Once the N=1 case works in my region (I'm in US-EAST-1 fwiw), and I solve some issues with my game server startup process, I'll be good to go.Thank you again for your help!CommentSharerePost-User-0025343answered 5 years ago"


Question: Is it safe to spawn many disposable slices of limited lifetime or some kind of management strategy is required?

"If I have a slice made by various entities and components with a limited lifetime and that can be spawned at hi rate , but with just a limited number of them active at a time, do I have to implement a specific solution(es pooling) or the engine employ a general solution that manages this kind of scenario in a sustainable way?Both gameplay replicated elements ( projectiles , pickups,human and AI enemies) and temporary clientside fx like particles , sounds, decals , dead enemies , broken pieces and other physical debris.How much is too much as dynamic spawning is concerned?Imagine an .io kind of game where a server needs to run for a very long time.Are there known point of failure that can limit the use of simple and naive implementations?If some strategy is required are there engine specific best pratices for optimal ( memory/performance/ease of implementation) that better fit the engine design in this kind of scenario?Follow"

Answer: "0Accepted AnswerHi Gamely,In general, Entity Component Slices use reference counting to keep track of asset use. That reference count (as you may expect) is adjusted per every usage of the asset with the asset being unloaded at a ref count of 0. There are some legacy systems however where assets aren't freed until the level is unloaded. We hope to address this in a future version so keep your eyes peeled for that. Past that, I think implementing a pooling system would be a great idea depending on the quantity of slices you're spawning.I would also recommend checking out the Multiplayer Sample included with Lumberyard. It's a good example of spawning a good number of a variety of slices. It does not use pooling so it may help you get an idea of bounds.Please let us know if you have further questions here!SharerePost-User-6135477answered 6 years ago0Hi @REDACTEDUSERSharerePost-User-8353690answered 6 years ago0Thanks for your answer.Hope to have some free time to test something live.I will surely take a deep look at multiplayer sample.I need to inspect the code as every single sentence makes more question arise.I want to understand if the reference to a slice in spawn component make the slice and referenced resources load or not and if there a way to defer the loading and/or to preload to better control what is loaded at any time.what about assets from server point of view?what get loaded in the server and how to lighten the server package to remove client only assets or load simplified version of some assets(es model with just collision, more compressed animation with less bones etc.The idea here is always to maximize how much a single instance can manage to load less things , faster and more efficiently to not waste/trash memory and not degrade performances over time.It can be labeled as an early optimization, but even in the beginning is always better to make well informed choices so need to grasp all the engine fundamentals.Also allocators are an insteresting subject I would love if you can document further.SharerePost-User-7621041answered 6 years ago0On the subject of resource loading timing, we're actively looking at that. Presently you can try playing with AZ::Data::AssetFlags values to manipulate the timing of loads as it pertains to an instance of a slice. OBJECTSTREAM_QUEUE_LOAD should allow a slice to load while a loading asset is still being loaded while OBJECTSTREAM_PRE_LOAD should hold the slice until the loading asset finishes.On the subject of assets from the server point of view, I will have to do some follow up to get a clearer answer. What I do know is that we have a NULL Renderer exactly so we don't waste resources rendering when there isn't anywhere to display to. You can also control what fields are synchronized over the network so you don't have to synchronize every field of an entity.Can you let me know what you'd like to see in regards to allocators?SharerePost-User-6135477answered 6 years ago0Thanks I will look at that flags.About allocators I use to have few custom ones i use the most in my other project and I have just seen that there are just various ones in the engine, but there is no documentation and is still not clear to me how to make use of them.However main priority is still the doxygen like documentation and github to make studing the source way more comfortable that stick to the pc and visual studio.SharerePost-User-7621041answered 6 years ago"


Question: How to pass in parameters for Step Functions EC2 Service API DescribeTags?

I am learning Step Functions and I want to get a list of EC2 instances that matches my filter. I am not able to use the parameters described here:https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeTags.htmlI have tried using using Filter as an array and as numbered like Filter.1 (see screenshots)I am able to run the step function with empty parameters.FollowComment

Answer: "0Accepted AnswerLooking at the Boto3 documentation [1] for this method, it looks like you need to provide the Filters parameter like this:"Filters": [  {    "Name": "tag:Group",    "Values": [      "Production"    ]  }][1] https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ec2.html#EC2.Client.describe_tagsCommentShareEdanswered 6 months ago"


Question: Port validation error in IoT Core LPWAN devices to send Downlinks

"Using IoT Core Wireless to send a Downlink to a device, and configuring port 206 I get this errorThe port is supposed to be between 1 and 223, but 206 is not allowed?FollowComment"

Answer: 0Hi. Thanks for reporting this issue. It appears that 204-209 and 214-219 are not currently selectable. I've reported it to the service team and will post a follow-up comment when there's any news. Apologies for the inconvenience.CommentShareEXPERTGreg_Banswered 6 months ago


Question: Any case studies out there for e.g. University website development? Github>EC2>CodeDeploy?

"Hi,I don't have a lot of experience with AWS. As a means to understand the tech let's assume the following theoretical use case:University with 400,000 static files (html, images, js). Vendor hosted CMS generates the static files.University needs to host these generated statics files and implement SSO (Shibboleth SP3) on separate server eg EC2 Amazon Linux 2.Use GitHub for version control (team of 5 developers) and deploy to CodeDeploy from GitHub main branchUse Load Balancers.....From your experience of hosting large scale informational static websites is GitHub>CodeDeploy>EC2 a suitable option or should I be studying/considering other best practice AWS services?Starting out so any resources or direction appreciated.ThanksFollowComment"

Answer: "2Accepted AnswerThat's a super broad question covering a lot of ground (content management, website hosting, user authentication, etc.).Can you do all of those things? Absolutely. Service such as CloudFront, S3, Cognito, API Gateway (just for starters) are where I'd go but there are many more (including some that you've mentioned).Would I recommend the GitHub>CodeDeploy->EC2 architecture pattern? Not necessarily. Mainly because hosting static files is a great use case for CloudFront and S3 (far less expensive and far more scalable too). But there are many factors to consider here.I'd strongly recommend reaching out to your local AWS Solutions Architect to find the best way for you to meet your requirements.CommentShareEXPERTBrettski-AWSanswered a year ago0Ok thanks for your feedback. Much appreciated. I don't have the budget for hiring an AWS Solutions Architect I'm afraid but just trying to understand the AWS solutions for a real world project for now. A Premium Support Developer Plan $29/m offers "architecture guidance" it seems so will try that route.Having to install Shibboleth SP3 on the server would appear to make S3 not an option. The CMS also can't easily be hooked up with a CDN like CloudFront unfortunately. Vendor is planning a plugin to accommodate CDN integration.Will look into Cognito and keep researching. Thanks for pointing me in the right direction and have a nice day.HCommentSharehowster2022answered a year agoBrettski-AWS EXPERTa year agoYou don't have to hire an AWS Solutions Architect. We (the Solutions Architect team) are a customer-facing part of the AWS team. Look us up on LinkedIn and we're happy to help.Share"


Question: Sending email with Workmail via Python

"I'm trying to send email via Workmail using Pythonimport smtplibfrom email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartfrom email.mime.base import MIMEBasedef send_email(email_recipient, email_subject, email_message):    try:      server = smtplib.SMTP_SSL('smtp.mail.eu-west-1.awsapps.com', 465)      server.ehlo()      server.login('username', 'password')      text = msg.as_string()      server.sendmail(email_sender, email_recipient, text)      print('Email sent to %s' % email_recipient)    except Exception as e:      print(e)      print("SMTP server connection error")    return Truedef main():  send_email('email@domain.com', 'hello', 'world')main()This does not work because(535, b'Authentication credentials invalid')SMTP server connection errorBut using username and password, I am able to log into https://webmail.mail.eu-west-1.awsapps.com/workmail/ with these credentials.So my questions areIs it possible to send an email using the SMTP server of Workmail.If yes, why are those credentials invalid (I also tried base64)Many thanks in advance!FollowCommentJohnAWS a year agoHi,The username field must be the full email address of the user. This is different from webmail where a username suffices. Hope this helps.ShareCesliens a year agoHi @JohnAWS,thanks for your comment ! That does actually solved the issue, I had to send a test email from Workmail to get the email address used! Many thanks! :)Share"

Answer: "1As mentioned by John (of AWS) above, use full email address for SMTP.However please note that Workmail shouldnt be use for bulk emails and its primary use case would be Employees of a given company need to email each other on their company email addresses (and to some extent their individual partners).Check also SES service incase its a better fit.CommentShareYoungCTO_quibskianswered a year ago"


Question: "Hello, I'm encountering two problems related to Lambda and API Gateway. Could you provide me with a potential solution for these issues?"

"I'm currently using a Lambda function to host my Django application using Zappa, which has a size exceeding 1 GB. However, when I send the initial request to Lambda, the response times out because the default timeout set for API Gateway is 30 seconds. Is it possible to extend the default timeout for API Gateway?Additionally, I'm looking for an alternative solution to decrease the cold start period of Lambda, enabling it to handle the initial request more efficiently. Is there a way to achieve this?FollowComment"

Answer: "1No, that's not possible today. I'd suggest that the client upload the file to S3 then have the Lambda function read it from there. Bear in mind that Lambda functions with larger memory sizes have increased CPU and network performance so that might help.I'd start with this blog post as it has a lot of good suggestions that cover a wide range of use cases.CommentShareEXPERTBrettski-AWSanswered 8 days ago"


Question: Cloudwatch logs

Is there a way to recover expired cloudwatch data?FollowComment

Answer: "1Unfortunately, CloudWatch data cannot be recovered once it has expired. By default, CloudWatch metrics are saved for a period of 15 months. The data is automatically deleted after the retention period and cannot be recovered.To avoid future data loss, consider exporting CloudWatch data to another storage service before it expires.CommentShareEXPERTsdtslmnanswered 2 months ago"


Question: Error restoring an aurora serverless v1 cluster from a snapshot to provisioned aurora cluster (aurora serverless upgrade to v2)

"I'm following this documentation for PostgreSQL:https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.upgrade.html#aurora-serverless-v2.upgrade-from-serverless-v1-procedureI did point 1 Create a DB cluster snapshot of the Aurora Serverless v1 cluster, and now I'm trying to do point 2 Restore the snapshot to create a new, provisioned (that is, not Aurora Serverless) DB cluster.I'm getting the following error:"To create a cluster with deprecated engine version 10.21, please restore a snapshot that you created from a version 10.21 cluster."My snapshot was created from version 10.21 cluster.What's the solution?FollowComment"

Answer: "0Aurora 10.X is now deprecated:https://repost.aws/questions/QU0ligxMlJSJWhzzgKbKgytQ/questions/QU0ligxMlJSJWhzzgKbKgytQ/announcement-amazon-aurora-postgresql-10-x-end-of-support-is-january-31-2023?Since Aug 1, 2022 you won't be able to restore databases on 10.x, and starting on Jan 31, 2023, all clusters will be upgraded, your best option will be upgrade the current cluster to at least 11.9, usingUpgrade in place https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/USER_UpgradeDBInstance.PostgreSQL.html orDMS https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.PostgreSQL.htmlthen continue continue with the procedure from https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless-v2.upgrade.html#aurora-serverless-v2.upgrade-from-serverless-v1-procedureCommentShareJorgeanswered a month ago"


Question: No emails in Inbox - workmail

HiI am able to send mails and see them in sent folderHowever i do not see any mails in my inboxPlease help me with step by step instructionsSpritebrains.workFollowComment

Answer: "0Hi,I'm sorry to hear your experiencing problems with receiving mail, there can be multiple issues for this and here are some steps you can take to troubleshoot your problem:Check the MX record for your domain. Ensure your MX record points to WorkMail and only to WorkMail. For the value of the MX record you can check the domain details page. This page will also tell you if the value is incorrect.If you MX record is correct but mail is not landing in your mailbox it might be a problem with the inbound flow. A simple step to ensure all rules in SES to process your inbound mail are correct is to add your domain in the WorkMail console. Just re-add the domain which will trigger a workflow to check that everything is correct.If both these are correct and mail is still not arriving you can check if there are any Mail flow rules in the WorkMail console or if there are any mailbox rules.Kind regards,RobinCommentShareMODERATORrobinkawsanswered 2 months ago"


Question: changing which app 'orgname.awsapps.com' redirects to

"Right now, when I go to myorg.awsapps.com, it redirects to the Workdocs login-- which we don't use.Is there a way to make that URL redirect to workmail, instead?FollowComment"

Answer: "0Hi,Thank you for using WorkMail. I don't know if there is a way to change the destination of the default awsapps.com url. I will check with the service to log this as a feature request.Kind regards,RobinCommentShareMODERATORrobinkawsanswered 4 years ago0Thanks!CommentShareRossanswered 4 years ago"


Question: Where to find a better documentation of Gamelift server SDK for Unreal Engine?

UpdatePlayerSessionCreationPolicy()Updates the current game session's ability to accept new player sessions. A game session can be set to either accept or deny all new player sessions. (See also the UpdateGameSession() action in the Amazon GameLift Service API Reference).SyntaxFGameLiftGenericOutcome UpdatePlayerSessionCreationPolicy(EPlayerSessionCreationPolicy policy)I wan to set "Deny" policy in my unreal engine game once game starts. But how to implement it? The documentation in the website is dubious. Where can I get some tutorial on a proper implementation?FollowComment

Answer: "0Hi,The Unreal Engine UpdatePlayerSessionCreationPolicy documentation has an example of how you'd invoke this particular SDK callFGameLiftGenericOutcome outcome = Aws::GameLift::Server::UpdatePlayerSessionCreationPolicy(Aws::GameLift::Model::EPlayerSessionCreationPolicy::ACCEPT_ALL);In terms of when to invoke it, this would have to be custom logic within the game server itself. Once the game server has started (can be identified via the onStartGameSession callback) and the required players have joined, the server can invoke UpdatePlayerSessionCreationPolicy to prevent other players from joining. This could be built into the logic which accepts (AcceptPlayerSession) and reports new players to GameLift.Alternatively, if the customer has a client backend service that is routing players to GameLift servers, it can update the  PlayerSessionCreationPolicy  using the UpdateGameSession API call when required.Thanks!CommentShareShashankJ_AWSanswered 22 days ago"


Question: Problems with the proper syntax for SQL queries in Amazon Athena for creating a table as a select statement

"I am trying to use queries I have already tested locally in MySQL Workbench first to test run them in Amazon Athena's query editor, but nothing I do is making them work. I wasted hours last night reading through the documentation and official tutorials for how to use AWS, but none of them seem to indicate whether or not I can carry over the syntax of using `` around column names with spaces in them or not. That is one reason my queries may not be working.Here is the original syntax I used to run this query in Workbench:SELECT Loc Id, Runway Id, Length, Width, Surface Type Condition, Edge Light Intensity, WBC Single, WBC Dual, WBC Two Dual, WBC Tandem Two Dual, Base Marking ConditionFROM runways.runwayWHERE  Loc Id IN ('09J','14A','18A','1V6','22S');When I just run that, it says Error: line 4:3: backquoted identifiers are not supported; use double quotes to quote identifiers.So, then I try running this instead:CREATE TABLE IF NOT EXISTS runway_tableWITH (external_location = 's3://us-east-1-s3-bucket/airports_and_runways_table/') ASSELECT"Loc Id", "Runway Id", "Length", "Width", "Surface Type Condition", "Edge Light Intensity", "WBC Single", "WBC Dual", "WBC Two Dual", "WBC Tandem Two Dual", "Base Marking Condition"FROMRunwayWHERE"Loc Id" IN ('09J','14A','18A','1V6','22S');But when I try to run this, I get this error message:SYNTAX_ERROR: line 17:3: Table awsdatacatalog.runway_db_athena.runway does not exist. You may need to manually clean the data at location 's3://us-east-1-s3-bucket/airports_and_runways_table/runways_table/2023/04/06/tables/915d54ef-e803-4470-a8c3-4df181914989' before retrying. Athena will not delete data in your account.This query ran against the "runway_db_athena" database, unless qualified by the query. Please post the error message on our forum  or contact customer support with Query Id: 915d54ef-e803-4470-a8c3-4df181914989I am thinking this is because I am not specifying the FROM clause correctly. Should I include the S3 address instead of the word Runway in the From clause perhaps? I am so very lost here and this is part of the capstone project in my masters degree, so I really can't afford to fail here!p.s. out of curiosity, I also ran the same query but with no quotation marks around any column names, and to my shock and dismay, the error I got was the following:line 4:49: mismatched input 'Condition'. Expecting: ',', 'EXCEPT', 'FROM', 'GROUP', 'HAVING', 'INTERSECT', 'LIMIT', 'OFFSET', 'ORDER', 'UNION', 'WHERE', 'WITH', <EOF>Where line 4:49 was indeed Condition, but that word is a little misleading here, it was the 'Condition' in Surface Type Condition in the line:SELECTLoc Id, Runway Id, Length, Width, Surface Type Condition, Edge Light Intensity, WBC Single, WBC Dual, WBC Two Dual, WBC Tandem Two Dual, Base Marking ConditionThe fact that the error wasn't on Loc Id or Runway Id confuses me immensely!FollowComment"

Answer: "1As mentioned in the docs, if you query something with mixed case (Runway) it will lower case it when executing the query (runway). I would guess that your table Runway was created with a capital R and Athena can't find it.  Try adding double quotes around Runway in your query.Example:CREATE TABLE IF NOT EXISTS runway_table WITH (external_location = 's3://us-east-1-s3-bucket/airports_and_runways_table/') AS SELECT "Loc Id", "Runway Id", "Length", "Width", "Surface Type Condition", "Edge Light Intensity", "WBC Single", "WBC Dual", "WBC Two Dual", "WBC Tandem Two Dual", "Base Marking Condition" FROM "Runway" WHERE "Loc Id" IN ('09J','14A','18A','1V6','22S');Docs: https://docs.aws.amazon.com/athena/latest/ug/tables-databases-columns-names.htmlI would recommend not having column names and tables with mixed case and spaces so that you don't have to always use double quotes when querying.CommentShareDon_Danswered 2 months ago"


Question: IAM RDS Token Auth only working sometimes

"I'm encountered an issue that I've pretty much slammed my head against for a solid day or so. I enabled token based auth for our RDS instances. For testing reasons when I went about enabling I took a snapshot from an already existing db (let's call it db1).With db1's snapshot I created db2.Within db2 I created a user for token access and opened proper grants.I created the IAM reference to that user and db2.I enabled Token based auth on db2.When testing this works great. I am able to log in with multiple accounts.Fast forward to the next day, I go to implement the same steps on db1.After creating the proper user in the db, after ensuring the db reference maps in IAMand after enabling token based auth on db1 I cannot connect.I thought maybe this was specific to the instance so I started to test other devel type DBs and none of them worked.I decided to make another test instance off of another currently running db's snapshot (let's call it db3).I created db4 off of that db3 snapshot. Went thru all of the steps and this works.I am able to log in fine with token based auth.To conclude, it seems like I can use this token based auth on any new DB I spin up off of a snapshot, but enabling it on current DBs does not work. I have tried a reboot and a stop/start for sanity reasons after enabling to no avail.I'm pretty stuck at this point and wondering if there is something that's not obvious?FollowComment"

Answer: 0This was alleviated by doing a minor version upgrade on all currently running DBs. Why this was required is still beyond us. it seems like only newer DBs 2019+ work with the token auth despite matching mysql versions across our dbs. If you have a similar issue where you have long running older DBs (even if on the proper version) consider doing a minor upgrade.CommentShareXynanswered 4 years ago


Question: How do I activate SSL on WordPress with NGINX and SSL Certified by Bitnami and Automattic

I recently installed an EC2 Instance for WordPress with NGINX and SSL Certified by Bitnami and Automattic. It says it has SSL included but my site still says its not secure. How do I activate the SSL?FollowComment

Answer: "0HelloI understand that you want to activate the SSL for your application, Here are the steps you can do.SSH into the machine and run the below command: link to the docssudo /opt/bitnami/bncert-toolCommentShareGKanswered a year ago"


Question: Amazon Connect delay on routing profiles with only Chats

"We are experiencing a delay of almost 40 seconds on routing profiles that only have chats configured as priority 1 and with a 0 second delay.The contacts are being received by agents on other routing profiles that have chats configured as priority 2 or 3 with delays of 30-60 seconds, before the chats are routed to the person with the routing profile that should have priority 1 and no delay for chats.Here are the screenshot of the routing profiles, they both have the same queue, the first one is configured to receive chats first, and the second one is configured to receive calls first.We only have two agents assigned to those routing profiles, one agent to each profile, when we open a chat to test, both agents are available, but the chat is connected to the agent that has chats configured as priority 2 instead of being routed to the agent that has the routing profile with chats as priority 1, something else that is strange is that the routing profile configured with chats as priority 2 should have a 15 seconds delay for chats, but when he open the chat it will instantly be connected to the agent with that routing profile, skipping the 15 seconds delay.FollowComment"

Answer: "0I suggest you test this during off hours to have at least 1 agent logged in to each of the RP.  And see if chat is routing to the appropriate agent as expected.Base on what you mentioned, it is very possible that chat goes to the non-expected agents if the primary group were busy and the chat had been waited for 30 sec, then more agents from other RP are eligible to accept this chat.  Once the eligibility opens up, the longest idle agent across ALL the RP will pick up the chat.  So if you have a chat surplus situation, and chat is in queue for 30 sec, and your primary agent just come off ACW, their idle time will be very low, while RP with PRI 2/3 with 30sec delay might have a longer idle time.Also check the missed contact for the Chat that were routed to unexpected agents to see if primary agent potentially might have rejected the chat or missed accepting the chat as well.CommentShareClarenceChoianswered 2 months agorePost-User-4636110 2 months agoHi, we created two routing profiles to test with a different agent assigned to each profile, when we did the test both agents were available, but the test chat was connected to the agent that has chats configured as priority 2 instead of being offered to the agent with chats configured as priority 1, also the delay configured for the chats on the routing profile with priority 2 for chats was skipped, the agent got connected to the chat right away.ShareClarenceChoi 2 months agoSo base on your RP, looks to be right.  But first I would like to clarify that Routing Profile Priority has no influence across routing profile.  It is used within the RP's queue on which contact should the agent take first.  So in your example, the Troubleshooting RP PRI 2 is only being compared to the Voice Pri 1.  So that this agent will clear out all Voice calls first (RP PRI 1), then they will consider any queue that has (RP PRI 2), in this case, chat.I setup in my test env and it seems to work correctly that chat waited <15 sec is only routed to the RP that has 0 sec Delay.  And it will delay the contact to my available agent with the 15 sec delay only after 15 sec.With this being said, you should check the CTR to see the actual queue time, if the queue time is >15sec.  There could be something in the flow causing the issue.Another way to check is only have the Agent with RP 15 sec Delay be Available, send the chat in, it should WAIT at least 15 sec before sending the chat to the agent.  If the chat is sent right away.Also, I am assuming the queue for chat is the SAME queue in BOTH Routing Profile.  This has to be the case for this logic to work.  You masked the prefix so I cannot tell if they are absolutely the same queue or not.Share0It is hard to troubleshoot the delay on "profiles" without having a clear picture of the whole profiles/queues configuration. If you can share the details of the setup, we can maybe help identifying a root cause. Contacts are routed to queues, and queues are included in multiple profiles, so having the complete configuration, to see the queue(s) where you notice the delays, as well as what other profiles they are included in should help.CommentShareMagdaanswered 2 months agorePost-User-4636110 2 months agoHi, I added the screenshots and more information to the question.Share"


Question: "Google Analytics Flow error: Login failed, status code 400 (Token expired)"

"Hi all,My team has successfully created a flow moving data in JSON format from Google Analytics to an S3 bucket. However, after a few days, it has failed throwing this error:Login failed with status code 400: { "error": "invalid_grant", "error_description": "Token has been expired or revoked." }It seems to be a connector issue due to the token expiring because we have created a new Appflow connection using the exact same client id and client secret, assigned this new connection to the flow, and it worked as usual. (We expect it to fail again after a few days)Can this token be refreshed automatically from Google's side? If possible, how do we do this in the Appflow connection? If not, what are possible solutions? I am looking into CloudFormation as our last resort but didn't want to dive in yet if the issue has an easier fix.Thanks for the help!FollowComment"

Answer: "0Will solve via Lambda instead.CommentSharepsascueanswered 2 years ago0This occurs when you are authenticating via a Google Cloud OAuth consent screen which is in 'Testing' mode. To prevent the token from expiring after 7 days you need to add your Google Cloud project to the Google Cloud organization linked to your company's domain name and then publish the OAuth consent screen as 'Internal'. This enables any user with an e-mail address in your company's domain to authenticate via your OAuth app, provided that user has first been added to the Google Workspace or Google Cloud Identity organization, and they are also a user in Analytics 360. We managed to get it working using these instructions:Migrating a project into an organizationPublishing an internal appCommentSharetobyanswered a year ago"


Question: How do I updated a CloudWatch Synthetics Canary layer version number using the AWS CLI?

"Hello,I created a CloudWatch Synthetics Canary via a console blueprintI want to update the active layer version ("39" – bolded below) using the AWS CLII see it in the Code["SourceLocationArn"] attribute in my describe-canary responseThe update-canary operation doesn't have a SourceLocationArn option for the --code value.How do I updated the layer version number using the AWS CLI?Thank you        {            "Id": "aae1dc97-773b-47bb-ae72-d0bb54eec60c",            "Name": "daily-wisdom-texts",            "Code": {**                "SourceLocationArn": "arn:aws:lambda:us-east-1:875425895862:layer:cwsyn-daily-wisdom-texts-aae1dc97-773b-47bb-ae72-d0bb54eec60c:39",**                "Handler": "pageLoadBlueprint.handler"            },            "ExecutionRoleArn": "arn:aws:iam::875425895862:role/service-role/CloudWatchSyntheticsRole-daily-wisdom-texts-cf9-de04b4eb2bb3",            "Schedule": {                "Expression": "rate(1 hour)",                "DurationInSeconds": 0            },            "RunConfig": {                "TimeoutInSeconds": 60,                "MemoryInMB": 1000,                "ActiveTracing": false            },            "SuccessRetentionPeriodInDays": 31,            "FailureRetentionPeriodInDays": 31,            "Status": {                "State": "RUNNING",                "StateReasonCode": "UPDATE_COMPLETE"            },            "Timeline": {                "Created": 1641343713.153,                "LastModified": 1652481443.745,                "LastStarted": 1652481444.83,                "LastStopped": 1641675597.0            },            "ArtifactS3Location": "cw-syn-results-875425895862-us-east-1/canary/us-east-1/daily-wisdom-texts-cf9-de04b4eb2bb3",            "EngineArn": "arn:aws:lambda:us-east-1:875425895862:function:cwsyn-daily-wisdom-texts-aae1dc97-773b-47bb-ae72-d0bb54eec60c:57",            "RuntimeVersion": "syn-python-selenium-1.0",            "Tags": {                "blueprint": "heartbeat"            }        }FollowComment"

Answer: "0The number at the end of SourceLocationArn is the version of the Lambda layer you are using. The number gets incremented when some parts of the Lambda function are updated. Therefore, you cannot update with update-canary operation.Lambda codes are included in the layer. You can see the numbers of layers on Lambda console.  Select as follows: CloudWatch -> Synthetics Canaries -> <select your canary> -> Configuration -> Canary script Script location <https>. (That leads to lambda layers page.)CommentShareshimoanswered a year ago"


Question: Deploy OEM13c on AWS

"Hi Everyone,We are considering in moving our on-premises OEM environment to AWS. We would like to find out if it is possible to have our OMS running on an EC2 instance and our OEM Repository (OMR) running on an Oracle AWS RDS database as we are not allowed to have both the OMS and OMR running on the EC2 instance due to security reasons?Few questions in our mind:Can we use an AWS RDS Instance to setup our OMR and OMA on?Then setup an EC2 instance for our OMS configuration?Does AWS RDS allow for the OEM Repository (OMR) to be housed on RDS as the OMS requires SYS-level access to the repository?Since this setup needs to be able to communicate and monitor our on-premises Oracle Databases will there be any latency issues?Will there be any inbound and outbound transfer costs involved with this setup?Does Oracle support the deployment of OEM 13c on AWS?Basically we need initial help to understand whether it is good to move to AWS or should we stick to on-prem. Any suitable ideas on setting up the best architecture for this scenario in the Cloud would be more than welcome.Thank you.FollowComment"

Answer: "2Accepted AnswerCan we use an AWS RDS Instance to setup our OMR and OMA on?You can use RDS Custom for Oracle to set up OMR.Then setup an EC2 instance for our OMS configuration?Yes - you can set up OMS on EC2 instance.Does AWS RDS allow for the OEM Repository (OMR) to be housed on RDS as the OMS requires SYS-level access to the repository?Yes - it is possible to get SYS level access to RDS database in RDS Custom.Since this setup needs to be able to communicate and monitor our on-premises Oracle Databases will there be any latency issues?Latency issues will have to be tested but it is possible to monitor on-prem and databases in AWS using OEM in AWS.Will there be any inbound and outbound transfer costs involved with this setup?No cost for in-bound data transfer to AWS. There is a minor cost for out-bound data transfer from AWS.Does Oracle support the deployment of OEM 13c on AWS?This is a question for your Oracle representative.Please reach out to your AWS account team to seek further help on this matter.CommentShareSVanswered a year agorePost-User-1096341 a year agoThank you very much for your satisfactory answers, much appreciated.Share"


Question: EBS Volume Booting issue with New Volume

"After detached the volume only we can delete it to avoid the charges, but after creating the new volume we can attached the new volume into the instances its successfully attached but when we try to connect it again we the new volume its not booting the test 2/2 is not passing through why?FollowComment"

Answer: "0Hi there!From the notes, I understand that your EC2 instance is failing the status check after attempting to detach and attach a new volume.For guidance, reasons that can cause an instance to fail to boot are:Using incorrect device names when attaching the volume [1].Incorrect entries in the fstab file due to booting from secondary volumes attached to the instance. Please refer to document link [2] to troubleshoot issues when booting from a different volume.To troubleshoot the issue from your side, you can check the instance's system logs to determine the cause of the failure [3]. Depending on the cause of failure you may use [4] to further troubleshoot.I hope you find the above information helpful.Have a great day ahead!References:[1] https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/RootDeviceStorage.html[2] https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-booting-from-wrong-volume.html[3] https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstances.html#troubleshooting-retrieve-system-logs[4] https://aws.amazon.com/premiumsupport/knowledge-center/ec2-linux-status-check-failure/CommentShareLettyanswered a year ago"


Question: Lightsail Wordpress Elementor Library not connected. Error "cURL error 28: Operation timed out"

"Hello folks, sorry for asking a dummy question.I created a Wordpress website hosted by Lightsail.  The problem is the system cannot connect Elementor's library.  The plugin works OK, but it could not show nor I can use Elementor's sample templates.System info shows "cURL error 28: Operation timed out...." issue.  Wordpress memory limit is 256M; PHP memory limit is 512M.Elementor's technical support said I should "Ask your hosting provider to increase the cURL timeout or to whitelist http://elementor.com and my.elementor.com addresses."May I ask how?WilliamFollowComment"

Answer: "0I think you mean to allow communication to "http://elementor.com" in the firewall of the Lightsail OS.If your OS uses firewalld, just allow http and https.CommentShareEXPERTRiku_Kobayashianswered a month ago"


Question: How do I remove locales on AWS Linux?

"Hello all,The AWS AMIs seem to have a lot more locales than I will ever need.  I have searched and searched for a yum equivalent to:sudo apt-get purge localessudo apt-get purge language-pack-fabut can't find anyway to remove the unused locales.  One or more of them is causing downstream problems.  I effectively want to remove all except "en_us.UTF-8".Any thoughts?Thanks a lot.Edited by: GaretJaxx on Jan 14, 2019 6:20 PMFollowComment"

Answer: 0OK - here is what I did.  I followed the following post to effectively remove all locales except for en_us.UTF8.https://talk.maemo.org/showthread.php?t=94625(url)My exact commands were:sudo localedef --list-archive | grep -E -v "en_US.utf8" | xargs sudo localedef --delete-from-archivesudo mv /usr/lib/locale/locale-archive /usr/lib/locale/locale-archive.tmplsudo build-locale-archiveCommentShareGaretJaxxanswered 4 years ago


Question: Can I create a child AWS account and prevent the master from accessing it?

"Here is the use case we're considering:We'd like to make RDS DB backups to a separate AWS account which is completely isolated from our main account (e.g. the login credentials would be written on a piece of paper and stored in a safe).The idea being that even if our main AWS account was compromised, an attacker couldn't also destroy the DB backups.Obviously we could just create a one-off AWS account, but it would be nice to have the child account still share the same billing control panel, but nothing else.Essentially, I want it so that the master account does NOT have access to anything in the child account, except billing information.Is it possible to do this?I experimented with removing the OrganisationAccountAccessRole from the child account, and this seemed to prevent users from the master account from assuming that role in the child account. But, is this enough? Could an attacker re-add this role somehow if they compromised the master account?Thanks!FollowComment"

Answer: "0Accepted AnswerHello,Thank you for reaching out to AWSRegarding your query "is this enough? Could an attacker re-add this role somehow if they compromised the master account?":A : So for any cross account activity a role needs to be present in the destination account which has the trust policy with the master account present in it. Now, in your case the member account/child account should have a role with the master account trusted in to for any user from the master account to access child account.Since, you deleted this role the link between the master and member is now broken. Unless the child account is compromised and from within the child account some entity created this role again trusting the master account, the master will not be able to access any resource in the child account. Even if the master account is compromised, the role cannot be created in child account from master account.Thus, this should be enough for ensuring master account cannot access the resources of child account.Hope this helps. Should you have any further questions please feel free to reach out to us and we will be happy to helpHappy Cloud Computing!CommentShareAWS-User-6657843answered 4 years ago"


Question: High CPU Utilization with Cloud-Watch-Agent

I checked EC2 CPU and it went nealy 100% utilization at intervals for 3hours. It happened the past 3months too.  when I checked run command the the command output shows "cloud-watch-agant" at the top followed by "w3wp" and "MsMpEng". what is likey the cause for this? is "cloud-warch-agent" using high cpu utilization?FollowComment

Answer: "0I would look to restart the service and if it continues then check the CWAgent log in C:\ProgramData\Amazon to see what the cause is.CommentShareSiTheAWSGuyanswered 10 months agorePost-User-2368199 10 months agoHi, Thank you for the answer. May I possibly ask what kind of logs should I delete. there are too many logs in the file and I'm not so sure which logs should I delete.ShareSiTheAWSGuy 10 months agoI wasn’t suggesting you delete the logs. You need to open the CWAgent log to see if there is an obvious cause. Have you restarted the agent to see if that resolves it?Share0Hello,Cloud-watch-agent does the below:Collect internal system-level metrics from Amazon EC2 instances across operating systems. The metrics can include in-guest metrics, in addition to the metrics for EC2 instances. The additional metrics that can be collected are listed in Metrics collected by the CloudWatch agent.Collect system-level metrics from on-premises servers. These can include servers in a hybrid environment as well as servers not managed by AWS.Retrieve custom metrics from your applications or services using the StatsD and collectd protocols. StatsD is supported on both Linux servers and servers running Windows Server. collectd is supported only on Linux servers.Collect logs from Amazon EC2 instances and on-premises servers, running either Linux or Windows Server.However, to determine on why 100% CPU is utilized, you might have to reach out to the AWS Support team to try and check your EC2 level metrics and determine if it was due to an issue related to the VM or whether actually high CPU workload was handled by the CW agent to have such a high CPU.Hope this helps.CommentShareSUPPORT ENGINEERAWS-User-Chiraganswered 10 months ago"


Question: Cannot terminate environment?

"sorry i figured it out, i'd delete this thread if i knew how.Edited by: conscused on Feb 3, 2021 9:16 AMFollowComment"

Answer: 0i figured it outCommentShareconscusedanswered 2 years ago