Question: How do I copy files from my S3 bucket hosted in Europe to my S3 bucket hosted in the United States?

I'm trying to copy my files from our partners in Europe to our site here in the United States. I am supposed to have full access to these files when I am done. How do I do this?FollowComment

Answer: "3The idiomatic approach is S3 object replication, and in particular cross-region replication. You can copy objects to another bucket in the same region or another region, and in the same account or another account. You can also copy to multiple target buckets. You can contact AWS support to copy existing objects. Do be aware of S3 pricing for replication as you will still incur data OUT transfer charges which can be quite costly.For a one-and-done experience, see the aws s3 sync CLI command or use s3cmd sync. Data transfer pricing rules still apply. Note that this operation can be very slow for buckets with many objects (millions). Also, these tools first copy from S3 to your system, then from your system to S3, unlike replication which is a direct bucket-to-bucket transfer (or at least, that's how it appears to the user).CommentShareEXPERTbwhaleyanswered 2 years agoEXPERTHernitoreviewed 2 years agoEXPERTRaphaelreviewed 2 years agoJames_S EXPERT2 years agoFor a one-off copy you can also use S3 Batch; here's a blog post looking at the process: https://aws.amazon.com/blogs/storage/data-management-at-scale-using-amazon-s3-batch-operations/Share0AWS provides multiple tools to copy objects between your buckets.Use AWS DataSync for ongoing data distribution, data pipelines, and data lake ingest, as well as for consolidating or splitting data between multiple buckets.Use S3 Replication for continuous replication of data to a specific destination bucket.Use S3 Batch Operations for large-scale batch operations on S3 objects, such as to copy objects, set object tags or access control lists (ACLs), initiate object restores from Amazon S3 Glacier, invoke an AWS Lambda function to perform custom actions using your objects, manage S3 Object Lock legal hold, or manage S3 Object Lock retention dates.As for retaining permissions:With S3 ReplicationBy default, the owner of the source object also owns the replica. Amazon S3 replicates the object version and the ACL associated with it.If you add the owner override, Amazon S3 replicates only the object version, not the ACL. In addition, Amazon S3 doesn't replicate subsequent changes to the source object ACL. Amazon S3 sets the ACL on the replica that grants full control to the destination bucket owner.When you update a replication configuration to enable, or disable, the owner override, the following occurs.If you add the owner override option to the replication configuration:When Amazon S3 replicates an object version, it discards the ACL that is associated with the source object. Instead, it sets the ACL on the replica, giving full control to the owner of the destination bucket. It doesn't replicate subsequent changes to the source object ACL. However, this ACL change doesn't apply to object versions that were replicated before you set the owner override option. ACL updates on source objects that were replicated before the owner override was set continue to be replicated (because the object and its replicas continue to have the same owner).If you remove the owner override option from the replication configuration:Amazon S3 replicates new objects that appear in the source bucket and the associated ACLs to the destination buckets. For objects that were replicated before you removed the owner override, Amazon S3 doesn't replicate the ACLs because the object ownership change that Amazon S3 made remains in effect. That is, ACLs put on the object version that were replicated when the owner override was set continue to be not replicated.With S3 BatchS3 Batch Operations support custom ACLs that you define and canned ACLs that Amazon S3 provides with a predefined set of access permissions.If the objects in your manifest are in a versioned bucket, you can apply the ACLs to specific versions of every object. You do this by specifying a version ID for every object in the manifest. If you don't include a version ID for any object, then S3 Batch Operations applies the ACL to the latest version of the object..If the objects in the manifest are in a bucket uses the bucket owner enforced setting for Object Ownership, the Replace access control list (ACL) operation can only specify object ACLs that grant full control to the bucket owner. The operation can't grant object ACL permissions to other AWS accounts or groups. For more information, see Controlling ownership of objects and disabling ACLs for your bucket.With DataSyncWhen transferring objects between Amazon S3 buckets, DataSync copies objects together with object metadata and tags. DataSync does not copy other object information such as object ACLs or prior object versions.CommentShareBlake_Manswered 2 years ago"


Question: Elastic IP addresses could not be released

"Hello,I'm trying to release an IP address but every time i get this error:54.*******: The address with allocation id [eipalloc-857e2ae0] cannot be released because it is locked to your account. Please contact AWS Support to unlock it.FollowComment"

Answer: "0Hello,Looking at the IP address that you have provided I can see that there is a reverse DNS associated with this EIP. This would explain as to why you are unable to release it from your account.To have this removed you will need to open a support case with the customer support team as they will be able to remove it for you.ec2-user@ ~$ dig -x 54.175.20.2 +shortmail.bizplanme.com.Edited by: aws-chrisa on Jan 13, 2021 8:18 AMCommentShareAWS-User-8424448answered 2 years ago0Hello,Thank you, case opened.CommentShareahsolimananswered 2 years ago"


Question: How to get glue to discover an eventbridge payload for use in CDK gluetable deployment?

"New to glue and athena.I have a great toy example by an AWS community builder working.  But in my real use case, I want to capture all the fields from an eventbridge event 'detail' section and have columns created.  This is nested multiple levels.  I can't figure out the schema discovery process.  Tried to post a text file to S3 and have a glue crawler work on it but no luck.Thanks in advance.FollowComment"

Answer: "1Accepted AnswerThe crawler is for data, not likely to work well on metadata like that.You could for instance run an AWS Lambda that reads the json event using pandas (which will infer the schema).However, my advice is not to deploy tables (at least tables that evolve) using CDK, let the code/crawlers maintain it. What it sounds you are trying to do (coordinate CDK deployments with tables changes is going to be problematic)CommentShareGonzalo Herrerosanswered 3 months agoVince_bighire_tools 3 months agoThanks for the quick replyShare"


Question: Lua Tutorial not working. Am i doing something wrong?

"Hello,I'm doing the tutorial one by one but now I'm stuck for several hour on one of the component tutorials with lua scripting. I've done all according to the tutorial documentation but it does not work. This is the code in the tutorial:local trigger_test ={properties ={}}function trigger_test:OnActivate()self.TriggerBusHandler = TriggerAreaNotificationBusHandler:Connect(self, self.entityId);endfunction trigger_test:OnTriggerAreaEntered(enteringEntityId)Debug.Log("[TRIGGER] Entity ".. tostring(enteringEntityId) .." ENTERED");endfunction trigger_test:OnTriggerAreaExited(exitingEntityId)Debug.Log("[TRIGGER] Entity ".. tostring(exitingEntityId) .." EXITED");endfunction trigger_test:OnDeactivate()self.triggerBusHandler:Disconnect();endreturn trigger_testHowever when I try to launch it, it comes up with the error: "[Error] Lua error (2 - scripts/testscripts/trigger_test.luac:9: attempt to index global 'TriggerAreaNotificationBusHandler' (a nil value)) during call to OnActivate". I know what it means but since I dont know much about scripting i dont know how to fix this. Can anyone help?Follow"

Answer: "0Accepted AnswerHey @REDACTEDUSERREMOVEDUPLOADLet us know if this fixes it :)Cheers!SharerePost-User-5738838answered 6 years ago0@REDACTEDUSER"It looks like the problem could be the Lua basics structure.It's missing a comma after the closing bracket of Properties. Also looks likethe "P" in Properties sub-table isn't capitalized. These are crucialfor lua to function."Can you try that?SharerePost-User-8353690answered 6 years ago0Ok I finely found a solution. It turns out you need to have the script in the location where lua is and as well in the project folder. Eg.:c:\Amazon\Lumberyard\1.7.0.1\dev\Bin64vc120\andc:\Amazon\Lumberyard\1.7.0.1\dev\Cache\SamplesProject\pc\samplesproject\scripts\don't know how to make it so that you only need one location though, but now its outputting this:[TRIGGER] Entity [17156986295506254569] ENTERED[TRIGGER] Entity [17156986295506254569] EXITEDLua error (2) during call trigger_test:OnDeactivate: [string "c:/amazon/lumberyard/1.7.0.1/dev/samplespro..."]:21: attempt to index field 'triggerBusHandler' (a nil value)[Error] Lua error (2) during call trigger_test:OnDeactivate: [string "c:/amazon/lumberyard/1.7.0.1/dev/samplespro..."]:21: attempt to index field 'triggerBusHandler' (a nil value)so there is one more error i need to find a solution for. Any ideas?SharerePost-User-6088083answered 6 years ago0Have you tried to use just the .lua file? The .luac file is just a precompiled version and I don't think renaming it will work.http://docs.aws.amazon.com/lumberyard/latest/developerguide/lua-scripting-ces.htmlSharerePost-User-8353690answered 6 years ago0Thank you for the fast response. I hope so i see more scripting stuff in the next tutorial and they all seem to have some error. I already browsed the net to try and find a solution but nothing has worked so far.SharerePost-User-6088083answered 6 years ago0Is it possible that I'm missing some kind of a plugin?SharerePost-User-6088083answered 6 years ago0One thing that I forgot to mention is that Lua makes files with .lua but lumberyard wants files with .luac. I have just been renaming them so dont know if that could also cause the issue.SharerePost-User-6088083answered 6 years ago0Well i checked and all should be installed OK. I even restarted the whole lumberyard engine and opened a clean map and redone the whole process but still the same result:Error] Lua error (2 - scripts/triggertest.luac:9: attempt to call field 'connect' (a nil value)) during call to OnActivateand[Error] Lua error (2) during call to OnDeactivate: scripts/triggertest.luac:21: attempt to index field 'triggerBusHandler' (a nil value)SharerePost-User-6088083answered 6 years ago0Yop i tried to use the .lua file but lumberyard just has one option of files to choose and its .luac. I'm trying to reinstall the whole engine see if it helpsSharerePost-User-6088083answered 6 years ago0Ok so i reinstalled lumberyard 1.8 but same problem and still lumberyard wants only files with .luac and does not let me to select others. So i installed lumberyard 1.7 and there it is ok and accepts .lua. the lest problem im now facing is:Can't load the script with invalid asset (not loaded or null)!the current script i have there is:triggertest ={}function triggertest:OnActivate()self.triggerBusHandler = triggerAreaNotificationBusHandler.connect(self, self.entityId)endfunction triggertest:OnTriggerAreaEntered(enteredEntityId)Debug.Log("[Trigger]Entity ".. tostring(enteredEntityId) .." Entered")endfunction triggertest:OnTriggerAreaEnxited(exitedEntityId)Debug.Log("[Trigger]Entity ".. tostring(enxitedEntityId) .." Enexited")endfunction triggertest:OnDeactivate()self.triggerBusHandler:Disconnect()endso what am i doing wrong now? :DSharerePost-User-6088083answered 6 years ago0Well i reinstalled lumberyard and now im having the same issues and nothing helps at the momentSharerePost-User-6088083answered 6 years ago0Sorry to hear you are having issues with the tutorial. I'm filing a ticket to have someone take a look and help. Just a heads up that with GDC this week, support may be a little slower than normal. Hopefully someone here in the community can answer in the meantime.SharerePost-User-8353690answered 6 years ago0That is very odd. I haven't seen any other people reporting issues. I'll add that to the ticket.SharerePost-User-8353690answered 6 years ago0It is possible. You might want to run Setup Assistant and made sure all the SDKs and plugins have the green check.SharerePost-User-8353690answered 6 years ago0Tryed that alraedy but i can try again.SharerePost-User-6088083answered 6 years ago0No joy still same errors:Access to undeclared global variable 'triggerAreaNotificationBusHandler'!---------- START STACK TRACE ---------- =C: ?:/amazon/lumberyard/1.7.0.1/dev/samplesproject/scripts/components/triggertest.lua(9): ? ---------- END STACK TRACE ----------[Error] Access to undeclared global variable 'triggerAreaNotificationBusHandler'!---------- START STACK TRACE ---------- =C: ?:/amazon/lumberyard/1.7.0.1/dev/samplesproject/scripts/components/triggertest.lua(9): ? ---------- END STACK TRACE ----------Lua error (2 - [string "c:/amazon/lumberyard/1.7.0.1/dev/samplespro..."]:9: attempt to index global 'triggerAreaNotificationBusHandler' (a nil value)) during call triggertest:OnActivate[Error] Lua error (2 - [string "c:/amazon/lumberyard/1.7.0.1/dev/samplespro..."]:9: attempt to index global 'triggerAreaNotificationBusHandler' (a nil value)) during call triggertest:OnActivateLua error (2) during call triggertest:OnDeactivate: [string "c:/amazon/lumberyard/1.7.0.1/dev/samplespro..."]:21: attempt to index field 'triggerBusHandler' (a nil value)[Error] Lua error (2) during call triggertest:OnDeactivate: [string "c:/amazon/lumberyard/1.7.0.1/dev/samplespro..."]:21: attempt to index field 'triggerBusHandler' (a nil value)SharerePost-User-6088083answered 6 years ago0One more thing though. When i save a script for the first time it comes with the warning: "Performance is down. File will be saved. You must reconcile with performance later!"SharerePost-User-6088083answered 6 years ago0Hello,I'm having similar troubles with the same tutorial. I have very little knowledge of coding and scripting so I don't even know where to look at.The error I get is "The script asset 0xddd88d20 doesn't contain a table with name trigger_test"I also sometimes get the "Perforce is down!..." -error message.Any suggestions?SharerePost-User-3887739answered 6 years ago0"The script asset 0xddd88d20 doesn't contain a table with name trigger_test"means that the script dosnt have a variable (all complex lua variables are tables really) named: "trigger_test" make sure the top line is "trigger_test" all capitalized correctly and that it matches the same name on the file.SharerePost-User-2315619answered 6 years ago0I got that same issue today, I found out that creating a new lua file and not putting "local" on the top table (so "trigger_test") works for me.SharerePost-User-2315619answered 6 years ago0@REDACTEDUSERthe first error you are getting is because the main table, eg.:trigger_test ={}must also be the name of the lua script, eg.: trigger_test.luaIf you are using the 1.7 version of the engine you can not have local trigger_test in the script just trigger_testSharerePost-User-6088083answered 6 years ago0I need help with this too. I cannot attach a script because I can't get anything other than .lua scripts but the Lua Script component won't let me attach anything but a .luac file.SharerePost-User-5499201answered 6 years ago0@REDACTEDUSERany news?SharerePost-User-6088083answered 6 years ago0Ok I just reinstalled my whole Win 10 system, installed lumberyard 1.8 and still same issue:Warning] Access to undeclared global variable 'TriggerAreaNotificationBusHandler'---------- START STACK TRACE ---------- =C: ?scripts/trigger_test.luac(9): ? ---------- END STACK TRACE ----------Lua error (2 - scripts/trigger_test.luac:9: attempt to index global 'TriggerAreaNotificationBusHandler' (a nil value)) during call to OnActivate[Error] Lua error (2 - scripts/trigger_test.luac:9: attempt to index global 'TriggerAreaNotificationBusHandler' (a nil value)) during call to OnActivategeneral.exit_game_modeReturned:general.clear_selectionReturned: 1general.exit_game_modeReturned:Lua error (2) during call to OnDeactivate: scripts/trigger_test.luac:21: attempt to index field 'triggerBusHandler' (a nil value)[Error] Lua error (2) during call to OnDeactivate: scripts/trigger_test.luac:21: attempt to index field 'triggerBusHandler' (a nil value)Enable AcceleratorsAt this point there is one last thing that comes to mind that i could do but i don't think that it will help. Im thinking of downloading the latest Lua script and overwriting the one in the engine but i think this bug comes from the Engine itself not the script. Anyone else has some idea what i could do here?SharerePost-User-6088083answered 6 years ago0actually tried that already as i suspected it at one point but let me try again. Though is it ok when i rewrite the file from .lua to .luac? cause when i want to open a script from the engine in the entity inspector it only allowes me to choose .luacSharerePost-User-6088083answered 6 years ago0IT WOOOOOOORKEEEEEEDDDDD!!!!! finally after a week i can go on! :D :DSharerePost-User-6088083answered 6 years ago0Sure will thanks again. I think that reinstalling the Win 10 helped too as i had U4 engine installed before and as i mentioned i tried it without the "Handler" before with no luck. But at least its working now so thanks you ever so much!SharerePost-User-6088083answered 6 years ago0Excellent!! Again, sorry for this issue — we'll update the Lua tutorial as fast as humanly possible :)There is a strange event happening with the extension names. We save the files as .lua but the editor actually stores it as .luac. This is basically the compiled format of the .lua file. This compile process occurs in Asset Processor when it detects the new / updated version of said .lua file. There shouldn't be an issue with saving the extension out as .lua if you're using an external lua editor. But if you do come across any bugs like that, please let us know!Cheers!SharerePost-User-5738838answered 6 years ago0Ignore: Looks like you got it working. Awesome!SharerePost-User-8353690answered 6 years ago0Hi now i have a problem in the tutorial with Tags :D. its giving me the error:[Warning] Lua execute error (2) on EBus (TickBus): trying to bind to a non-table value : scripts/tutorial_tag.luac:24: attempt to get length of local 'DynamicTaggedEntities' (a userdata value)---------- START STACK TRACE ---------- ---------- END STACK TRACE ----------the 2 boxes scale correctly on the Z axis as they should however they do not scale on the Y axisSharerePost-User-6088083answered 6 years ago0Are you still getting this error? It might be better to start a new thread. @REDACTEDUSERSharerePost-User-8353690answered 6 years ago"


Question: AWS SSO With External Account

"Hi, I'm working on out internal AWS SSO.If i try to login to one of organization account i have the option to open the Management Console or to get the access key and secret key by clicking on "programmatic access". This option is also avaiable from cli using "aws sso configure" command.When i add an external AWS Account (that not belongs to our organization) this option is not available and when i click on the external account the login on Management Console is performed.How can i configure sso to show the "Command line or programmatic access" on external AWS account?thanks in advancePieroFollowCommentRaphael EXPERTa year agoHow have you added this account into AWS SSO?Share"

Answer: "0The reason for this is that external accounts are treated as third party applications which we currently dont generate API keys for.AWS accounts belonging to your organization are treated differently and known as AWS accounts while Accounts outside your organization are added the same way you configure an application in the user portal.CommentShareAdeyinianswered 9 months agopetecocoon 9 months agoHi Adeyini, thank you for your answer, did you know if there is any solution / tools for quickly creating API keys for that accounts (even on CLI)?Thank youShare"


Question: AWS Abuse Report : has been implicated in activity which resembles attempts to access remote hosts

I was notified that AWS  detected a DOS attack from your network.  The below domain is not mine but AWS support informed me that the attack came from my server to that address.I am not sure how to find the source of this attack on my server and need some assistance in trying to locate the source so I can deal with it.  I don't see anything in this log that provides that.Below the logs.54.214.137.99 - - [01/May/2023:05:15:27 +0200] "POST /wp-login.php HTTP/1.0" 301 - "https://lucacalzature.it/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0"54.214.137.99 - - [01/May/2023:05:15:27 +0200] "POST /wp-login.php HTTP/1.0" 301 - "HTTPS://LUCACALZATURE.IT/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0"54.214.137.99 - - [01/May/2023:05:15:32 +0200] "POST /lc1945 HTTP/1.0" 301 244 "HTTPS://LUCACALZATURE.IT/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0"54.214.137.99 - - [01/May/2023:05:15:32 +0200] "POST /lc1945 HTTP/1.0" 301 244 "https://lucacalzature.it/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0"54.214.137.99 - - [01/May/2023:05:15:32 +0200] "POST /lc1945/ HTTP/1.0" 301 - "HTTPS://LUCACALZATURE.IT/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0"54.214.137.99 - - [01/May/2023:05:15:32 +0200] "POST /lc1945/ HTTP/1.0" 301 - "https://lucacalzature.it/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0"54.214.137.99 - - [01/May/2023:05:15:33 +0200] "POST /lc1945 HTTP/1.0" 301 244 "https://lucacalzature.it/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0"54.214.137.99 - - [01/May/2023:05:15:33 +0200] "POST /lc1945 HTTP/1.0" 301 244 "HTTPS://LUCACALZATURE.IT/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0"54.214.137.99 - - [01/May/2023:05:15:33 +0200] "POST /lc1945/ HTTP/1.0" 301 - "https://lucacalzature.it/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0"54.214.137.99 - - [01/May/2023:05:15:33 +0200] "POST /lc1945/ HTTP/1.0" 301 - "HTTPS://LUCACALZATURE.IT/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0"54.214.137.99 - - [01/May/2023:05:15:34 +0200] "POST /lc1945 HTTP/1.0" 301 244 "HTTPS://LUCACALZATURE.IT/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0"54.214.137.99 - - [01/May/2023:05:15:34 +0200] "POST /lc1945 HTTP/1.0" 301 244 "https://lucacalzature.it/wp-login.php" "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:1 ...[Logs Truncated]Comments:<<<FollowComment

Answer: "0I believe you are reading the message wrong.  I believe you are being informed that your host was used to attack the site listed as part of a DDoS attack.  As I read the log, I suspect that your host is 54.214.137.99 and it appears that you have SSH (tcp/22) open to public addresses on the internet as I can connect to this host via SSH from my internet connection.  You should check logs on your host for unauthorized access, inspect for malware and secure the Security Group on your instance to only allow SSH from trusted IPs.  In addition, I would suggest that you contact AWS support for additional information.Hope this helps.CommentShareEXPERTiBehranswered a month ago0You're server was not secured and is now compromised. You need to delete it, start over and secure it by limiting your inbound security groups on sensitive ports. If you haven't done this yet then AWS will isolate it.Also this is not a DDoS attack as this resembles your machine attempting to access sensitive pages on someone's word press login page.CommentShareDavidanswered a month ago"


Question: Does RDS allow EXECUTE on DBMS_SYSTEM?

"I am trying to run following through my admin account:begin    rdsadmin.rdsadmin_util.grant_sys_object(        p_obj_name     => 'DBMS_SYSTEM',        p_grantee      => 'USERNAME',        p_privilege    => 'EXECUTE',        p_grant_option => false);end;It gives error saying:begin*ERROR at line 1:ORA-20199: Error in rdsadmin_util.grant_sys_object. ORA-20900: You do not have permission to grant DBMS_SYSTEMORA-06512: at "RDSADMIN.RDSADMIN_UTIL", line 221ORA-20900: You do not have permission to grant DBMS_SYSTEMORA-06512: at line 2What is the problem here? And ho do I get a workaround for this?Please reply as I'm stuck because of this.FollowComment"

Answer: "0Hi there,Execute privileges on DBMS_SYSTEM are not available to the master user in RDS Oracle. Note that this is an undocumented internal package that may change between versions. However, depending on what you are trying to accomplish, there is a probably a way to do it in another way.For example, session tracing can be enabled with DBMS_SESSION (same session) or DBMS_MONITOR (another session), and events can be set in a session directly with "alter session" or via a login trigger. While Oracle provides no supported method for writing to the alert log, you can use UTL_FILE to write to your own log files in database directory objects (directories can be created using the RDSADMIN.RDSADMIN_UTIL.CREATE_DIRECTORY procedure).Hope this helps.Thanks,MichaelCommentShareAWS-User-9938760answered 5 years ago0I'm not sure if this was changed recently or if it depends on the version, but I was able to successfully grant EXECUTE on DBMS_SYSTEM on my SE2 12.2 RDS instance:SQL> exec rdsadmin.rdsadmin_util.grant_sys_object('DBMS_SYSTEM','IDS_GOV_WPD','EXECUTE');PL/SQL procedure successfully completed.SQL> select privilege from dba_tab_privs where grantee = 'IDS_GOV_WPD' and table_name = 'DBMS_SYSTEM';PRIVILEGEEXECUTECommentShareallenbanswered 4 years ago"


Question: AWS: Multipart upload results in 403 Forbidden error even though single part upload works fine

"CONTEXT:In my app, I have a feature that allows the user to upload a video. I noticed that when the users try to upload large videos, sometimes the upload fails.After, I did a bit of research, I found-out for files larger than 100 Mb, I should use multipart upload.So I have been following this tutorial to implement multipart upload in my app. And I reached Stage Three.PART 1: Previous single part upload works fineThis is the implementation of a single part upload using pre-signed urls:BACKENDvar AWS = require("aws-sdk");const REGION = "*************************"; //e.g. "us-east-1"const BUCKET_NAME = "l****************";AWS.config.update({ region: REGION });const s3 = new AWS.S3({  signatureVersion: "v4",  apiVersion: "2006-03-01",});var getVideoSignedUrl = async function (key) {  return new Promise((resolve, reject) => {    s3.getSignedUrl(      "putObject",      {        Bucket: BUCKET_NAME,        Key: key,        ContentType: "video/*",        ACL: "public-read",        Expires: 300,      },      (err, url) => {        if (err) {          reject(err);        } else {          resolve(url);        }      }    );  });};exports.getVideoSignedUrl = getVideoSignedUrl;FRONTENDexport const getVideoPreSignedUrl = async () =>  await axios.get("/api/profile/getVideoPreSignedURL");export const uploadVideoFileToCloud = async (file) => {  const { data: uploadConfig } = await getVideoPreSignedUrl();  await axios.put(uploadConfig.url, file, {    headers: {      "Content-Type": file.type,      "x-amz-acl": "public-read",    },    transformRequest: (data, headers) => {      delete headers.common["Authorization"];      return data;    },  });};PART 2: Multipart upload which throws 403 forbidden errorBACKENDvar AWS = require("aws-sdk");const REGION = "***********************"; //e.g. "us-east-1"const BUCKET_NAME = "************************";AWS.config.update({ region: REGION });const s3 = new AWS.S3({  signatureVersion: "v4",  apiVersion: "2006-03-01",});// ==========================================================// Replacing getVideoSignedUrl with initiateMultipartUpload// That would generate a presigned url for every partconst initiateMultipartUpload = async (object_name) => {  const params = {    Bucket: BUCKET_NAME,    Key: object_name,    ContentType: "video/*",    ACL: "public-read",    Expires: 300,  };  const res = await s3.createMultipartUpload(params).promise();  return res.UploadId;};const generatePresignedUrlsParts = async (object_name, number_of_parts) => {  const upload_id = await initiateMultipartUpload(object_name);  const baseParams = {    Bucket: BUCKET_NAME,    Key: object_name,    UploadId: upload_id,  };  const promises = [];  for (let index = 0; index < number_of_parts; index++) {    promises.push(      s3.getSignedUrlPromise("uploadPart", {        ...baseParams,        PartNumber: index + 1,      })    );  }  const res = await Promise.all(promises);  const signed_urls = {};  res.map((signed_url, i) => {    signed_urls[i] = signed_url;  });  return signed_urls;};exports.initiateMultipartUpload = initiateMultipartUpload;exports.generatePresignedUrlsParts = generatePresignedUrlsParts;FRONTENDThis is where the error occurs. See const resParts = await Promise.all(promises)export const getMultiPartVideoUploadPresignedUrls = async (number_of_parts) => {  const request_params = {    params: {      number_of_parts,    },  };  return await axios.get(    "/api/profile/get_multi_part_video_upload_presigned_urls",    request_params  );};// Using multipart uploadexport const uploadVideoFileToCloud = async (video_file, dispatch) => {  // Each chunk is 100Mb  const FILE_CHUNK_SIZE = 100_000_000;  let video_size = video_file.size;  let video_size_in_mb = Math.floor(video_size / 1000000);  const number_of_parts = Math.floor(video_size_in_mb / 100) + 1;  const response = await getMultiPartVideoUploadPresignedUrls(number_of_parts);  const urls = response.data;  console.log(    "🚀 ~ file: profileActions.js ~ line 654 ~ uploadParts ~ urls",    urls  );  // async function uploadParts(file: Buffer, urls: Record<number, string>) {  // const axios = Axios.create()  // delete axios.defaults.headers.put["Content-Type"];  const keys = Object.keys(urls);  const promises = [];  for (const indexStr of keys) {    const index = parseInt(indexStr);    const start = index * FILE_CHUNK_SIZE;    const end = (index + 1) * FILE_CHUNK_SIZE;    const blob =      index < keys.length        ? video_file.slice(start, end)        : video_file.slice(start);    console.log(      "🚀 ~ file: profileActions.js ~ line 691 ~ uploadParts ~ urls[index]",      urls[index]    );    console.log(      "🚀 ~ file: profileActions.js ~ line 682 ~ uploadParts ~ blob",      blob    );    const upload_params = {      headers: {        "Content-Type": video_file.type,        "x-amz-acl": "public-read",      },      transformRequest: (data, headers) => {        delete headers.common["Authorization"];        return data;      },    };    const axios_request = axios.put(urls[index], blob, upload_params);    promises.push(axios_request);    console.log(      "🚀 ~ file: profileAction.helper.js ~ line 117 ~ uploadParts ~ promises",      promises    );  }  // Uploading video parts  // This throws the 403 forbidden error  const resParts = await Promise.all(promises);  // This never gets logged  console.log(    "🚀 ~ file: profileAction.helper.js ~ line 124 ~ uploadParts ~ resParts",    resParts  );  // return resParts.map((part, index) => ({  //   ETag: (part as any).headers.etag,  //   PartNumber: index + 1  // }))};This is the error that's logged:PART 3: AWS Bucket & CORS policy:CORS Policy:[{"AllowedHeaders": [""],"AllowedMethods": ["PUT","POST","GET"],"AllowedOrigins": [""],"ExposeHeaders": [],"MaxAgeSeconds": 3000}]Bucket policy hasn't been changed since I created the bucket and it's still empty by default:{"Version": "2012-10-17","Statement": [{"Sid": "Statement1","Principal": {},"Effect": "Allow","Action": [],"Resource": []}]}So maybe I should add something here?I also have all of these unchecked:NOTES:I tested multipart upload with files smaller and larger than 100 Mb. And it always throws the 403 forbidden error.I don't understand why I would get forbidden error if the single part upload works just fine. In other words, the upload is allowed and if both single part and multipart upload are using the same credentials, then that forbidden error should not occur.I have a piece of code that shows me the progress of the upload. And I see the upload progressing. And the error seems to occur AFTER the upload of EACH PART is done:FollowCommentjschwar313 a year agoHave you considered using the boto3 sdk instead?  It's much simpler.  Just a suggestion.  The upload statement in python would be something like this:  upload_file_response = s3.upload_file(source, destination, key, ExtraArgs=extra_args, Callback=callback, Config=config) and the handling of the part sizes is handled in the config parm.Sharejschwar313 a year agoYou could do a multipart upload with a S3 resource called upload_file described here:  https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/s3.html#client.TransferConfig options are described here:  https://www.programcreek.com/python/example/106648/boto3.s3.transfer.TransferConfigIt's pretty easy, to tell you the truth, but use whatever method you like.  it's available in different languages, not just python, too.Share"

Answer: "0Hi.Good question.  Multipart upload permissions are a little different from a standard s3:PutObject and given your errors only happening with Multipart upload and not standard S3 PutObject, it could be a permission issue.If using IAM, the following permissions are typically needed:s3:PutObject (Needed for object upload in general)KMS permissions (Needed for object upload in general)s3:ListMultipartUploadPartss3:AbortMultipartUploads3:ListBucketMultipartUploadsFrom an ACL perspective, you may need to validate that the ACL for the bucket is setup properly (READ on the bucket will allow for ListBucketMultipartUploads):https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#acl-access-policy-permission-mappinghttps://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.htmlIf the permission issue is fixed, that should do the trick.CommentSharejsoncanswered a year ago"


Question: Setting minor version of elastic beanstalk node.js platform

These docs: https://docs.aws.amazon.com/elasticbeanstalk/latest/platforms/platform-history-nodejs.htmlnote the different minor versions of node.js that are available for a given platform version (like Node.js 12 AL2 version 5.4.8).  How do you set the minor version you will be using (like v12.20.2?)thanks!FollowComment

Answer: "1Accepted AnswerEach Node.js platform version supports a few Node.js language versions. Valid Node.js versions, as well as the default version. Each Node.js version includes a respective version of npm (the Node.js package manager).On Amazon Linux 2 platform versions, only the default Node.js version is pre-installed. You can use a package.json file in the root of your project source to specify the Node.js version you want your application to use. Refer to https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/nodejs-platform-packagejson.htmlOn Amazon Linux AMI platform versions (preceding Amazon Linux 2), all listed Node.js versions that a platform version supports are pre-installed on it. The default Node.js version applies when the NodeVersion option in the aws:elasticbeanstalk:container:nodejs namespace isn't set. Refer to https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options-specific.html#command-options-nodejsFurther info and especially some gotchas are called out at https://docs.aws.amazon.com/elasticbeanstalk/latest/platforms/platforms-supported.html#platforms-supported.nodejsCommentShareRoBanswered a year ago"


Question: How can I migrate Classic Load Balancer to Application Load Balancer

"Hello,I'm not a web developer. I created my AWS EB WebApp as Classic Load balancer. I'm now setting up Cloudfront distribution for CDN with a custom domain that I bought from AWS Route 53. My cloudfront is working, but it's not responding for POST request. When I read about it online, I think my aws eb webapp should be migrated to Application Load Balancer. Could you help please? - HaileFollowComment"

Answer: "3yes you need to migrateTo migrate your EB environment to ALB, you can follow these steps:Create a new Application Load Balancer in your AWS account.In your EB environment, go to the Configuration tab and select the Modify button.In the Load Balancer section, select the Application Load Balancer option and select the ALB you created in step 1.Review and apply the changes to your EB environment.After migrating your EB environment to ALB, you can configure your CloudFront distribution to use the ALB as its origin. This should allow your CloudFront distribution to support both GET and POST requests.CommentShareEXPERTsedat_salmananswered 2 months ago2Take a look at this Knowledge Center article: https://repost.aws/knowledge-center/migrate-classic-load-balancerCommentShareEXPERTTushar_Janswered 2 months agoEXPERTalatechreviewed 2 months agoEXPERTiwasareviewed 2 months ago"


Question: Retrieve my data / Beginner

Started to use AWS a few years back; uploaded some of my data.  It's the only place I have this data.  Have not used this service for years- need my data back.  Cannot find how to get my data back (all I can do is download 1 file at a time.  Think it is all in S3?  Any assistance is appreciated.FollowComment

Answer: "1Hi ThereIf you need to download a lot of files from S3, you can use the CLI on your local machineInstall the CLI (See https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html)Run the aws s3 sync command.  This will download all of the files in the s3 bucket to your local machine.Example aws s3 sync s3://mybucket c:\myfolderCommentShareEXPERTMatt-Banswered 9 months agoEXPERTChris_Greviewed 9 months ago"


Question: How do we make data un-usable for a AWS Data Exchange customer when the subscription ends?

"As a publisher of data set on AWS Data Exchange, we would like the data asset downloaded by customers on their server from AWS Data Exchange to be technically un-usable when they terminate the subscription.FollowComment"

Answer: "1If a subscriber makes a copy of the data, there is no way to render it unusable after the subscription ends. Typically, data sharing agreements can be used to govern acceptable usage (including upon the termination of a subscription).CommentSharejchananswered 10 months ago"


Question: can aws deliver the public ip directly on the CHR interface mikrotik routeros?

"can aws deliver the public ip directly on the CHR interface mikrotik routeros?when I create an instance in aws and use an elastic ip such as 52.200.1.219 and enter winbox, in ip address I see this ip 172.31.17.112.that way I depend on an aws firewall that is in the middle, I would like to know if it is possible to place the public ip 52.200.1.219 directly in mikrotik routerosany help?FollowComment"

Answer: "0No, it's not possible to assign an Elastic IP address to an instance directly. There is a 1:1 NAT operation that is provided by the Internet Gateway in your VPC that maps between the Elastic IP address and the private IP address.The filtering mechanism between the internet and your instance is a Security Group - to allow traffic to your instance (in this case the virtual router); allow the appropriate protocols and ports in the security group.CommentShareEXPERTBrettski-AWSanswered 7 months agorePost-User-1136194 7 months agobut why aws it not allowed to have the public ip directly in the virtual router??? It is something very strange for me, in digital ocean by default it is that wayShareBrettski-AWS EXPERT7 months agoThat's just the way it works in AWS. Instances in a VPC have a private IP address. They can be assigned a public/elastic IP which is handled by doing 1:1 NAT at the Internet Gateway.Share"


Question: rdsadmin Queries in Performance Insights - PostgreSQL

We are seeing 100% CPU usage coming from the "rdsadmin" user in Performance Insights for PostgreSQL across various engine versions.This seems to have come up many times in the past but I have not seen a response from AWS in yearshttps://repost.aws/questions/QUYF5u0w0pR9qWF6U0Uoovzg/postgresql-14-3-performance-insight-rds-admin-never-stopping-query-bughttps://repost.aws/questions/QUhzcRl7G0S_WGVwjkIeZ8Sw/postgresql-12-2-rdsadmin-uses-one-complete-cpu-for-a-query-continuouslyhttps://repost.aws/questions/QUKRiZ5SyHTsmXaa9r5Lnsuw/performance-insights-for-postgres-12-2-is-consuming-100-cpuCan someone from aws please confirm if this is a known issue?FollowComment


Question: lightsail SSD size back

"I was using a $20 instance with LightsailSince /dev/xvda1 has reached 100% usage (80GB/80GB)I created a new instance from the snapshot and created a $40 instance.Immediately after creation, /dev/xvda1 was at 50% usage (80GB/160GB),When I checked half a day later, /dev/xvda1 was at 100% usage (80GB/80GB).On the console it says "8 GB RAM, 2 vCPU, 160 GB SSD",It's definitely on the $40 plan.Do you know why the trouble occurs?Also, please tell me how to solve it.FollowComment"

Answer: "0We are unable to reproduce this issue on our end.  If you confirm the instance metadata is inconsistent with the on-instance disk size, please reach out to customer service so we can investigate your specific instances rather than attempting to reproduce.CommentShareAWS-Andyanswered 8 months ago"


Question: Not having an asset store is stopping me from learning this

"As a long standing web developer trying to learn video game development, an official asset store with known working assets is the one thing that is stopping me from trying this engine out.  I'm seeing a lot of "Go to Unreal or Unity stores, and hope they work in lumberyard" answers to assets in Lumberyard, but in those same posts I see things like "Will most likely require modification to work inside lumberyard".  Yea, the tutorial series is great and a good into to using the toolkit, but not being an asset developer myself I can't jump right in and try to make something my own.Follow"

Answer: "0If you're trying to learn game development, I would strongly suggest you start with a widely-adopted engine. Unity and Unreal have masses of assets, tutorials, learning materials, etc. By comparison, Lumberyard has virtually nil, and the number of devs using it is minuscule. It needs a big push to start to develop an ecosystem, and right now it's not getting it.Lumberyard has a lot of potential, and one day might leave beta and get the promotion it requires, but for right now I'd say it's a terrible choice for a learner.SharerePost-User-5431342answered 3 years ago0Starter game has a bunch of assets. As does the new PhysXSamples with the Cowboy character in 1.23.Theres probably a lot of thinks we may be missing, so I would be curious as to what assets do you think are missing wrt to learning Lumberyard?SharerePost-User-5332620answered 3 years ago0Well, I don't think it's about a lack of particular assets that prevents someone from learning Lumberyard, specifically.But, the OP is talking about learning game development, generally. In that case, picking one of the major engines gives you the choice of countless books, thousands of hours of quality tutorials, from Unity Learn, Youtube, Udemy, Pluralsight, and on and on.Then, when you've learned enough to start attempting something on your own, there are huge libraries of assets available to select from, giving you endless possibilities to experiment and learn from.So, it's not that a lack of specific assets literally prevents you from learning Lumberyard, but a question of why you'd choose Lumberyard when it lacks all those benefits, and will likely make for a harder path. I'd love to see Lumberyard become competitive with those other engines, but we all know that's not happening at the moment.SharerePost-User-5431342answered 3 years ago0@REDACTEDUSERSharerePost-User-2594560answered 3 years ago0I have to say I agree with @REDACTEDUSERLumberyard does have the potential to do great things with it, but it's just too complex for a beginner to start with it.  Unity assumes beginner level of understanding and explains things as such, and Unreal has a huge in-depth set of documentation, examples and community support.  As much as they've tried to get away from it, I consider lumberyard much more akin to Cry Engine in the sense that it's a powerful engine with lots of bells and whistles but you really need to have an existing base level of understanding of development in general before you can really be productive with it.SharerePost-User-1217528answered 3 years ago0I do feel bad for the devs when we make this type of criticism, because they try to look at what specifically might be missing, and how they could improve.The fundamental problem is that Lumberyard is clearly not getting the kind of investment it needs to become a significant player.Bearing in mind that even Godot, which is essentially a couple of guys supported on Patreon, has an asset store, has just held the latest GodotCon, and has a clear roadmap to their new Vulkan renderer. Whereas Lumberyard is a project from Amazon, has none of that, and still languishes in beta after 4 years without even a roadmap!Hardly anyone is interested in it, because almost no employers are looking for those skills.  And if a studio did select Lumberyard, they would have very little chance of recruiting anyone with experience. It's a vicious cycle,   and the ecosystem is not going to grow unless Amazon decides to invest seriously in Lumberyard, and compete with the other big engines.SharerePost-User-5431342answered 3 years ago0This is great feedback. I'm going to let our demo and samples team know.SharerePost-User-5332620answered 3 years ago0BTW Hopefully folks have seen the getting started guides and videos (that I hope are helpful).This is great place to start: https://www.youtube.com/watch?v=E1NgI8urJ7oSharerePost-User-5332620answered 3 years ago0Personally I agree that an asset store should be  a priority. Can't imagine it would be difficult for Amazon to roll one out. And community/paid Gems and Assets being central and accessible would  potentially greatly increase engine functionality and community activity (with proper store curation).Using assets from other stores may require modification, although it is usually painless (depending on the asset and quality): Materials in LY use specular workflow and have some naming conventions for textures, animation orientation is slightly different, physics collision may require additional setup . . . but you can reach out on the forums if you are having issues, or on either of the Discord servers, and of course review the docs and tutorials.Despite this, I agree there is a steep learning curve for raw beginners. But its rapidly improving with each incremental release, so i hope you hang in there!SharerePost-User-2743711answered 3 years ago0could you buy assets from one of the other stores and convert them to lumberyard?edit: google says unreal and unity uses .fbx so i would think the stores would give you usable assets.edit2: did some more looking into it and unity packages the assets u download from the store as .unitypackage so u need to extract the file from it with an other apphttps://www.youtube.com/watch?time_continue=280&v=eyNcX9QSNgI&feature=emb_logohttps://unitypackage-unpacker.software.informer.com/1.0/SharerePost-User-6701439answered 3 years ago0It depends on the type of assets we're talking about. Things like models and animations tend to be in standard formats, and can be transferred between engines without too much trouble. Materials tend to be more troublesome, since different engines treat them differently.But when you start looking at more complex assets - things that contain code, blueprints, physics, etc, then they're not portable between engines at all.SharerePost-User-5431342answered 3 years ago0very true i didnt think about the code side of things. i guess maybe someone could make a store and the community here could add code and asset to it. i would but im lazy lol.SharerePost-User-6701439answered 3 years ago0Lol. I wouldn't worry about being being lazy - the main point of competition in modern game engines is to let developers achieve as much as possible, as easily as possible. If this were a little non-profit open-source project, then we could have a conversation about the community taking on the creation of an asset store.But as this is a product from one of the largest and richest corporations on Earth, I really think it's up to them!SharerePost-User-5431342answered 3 years ago0Even a proper website would be the first step. The forum is only linked half way down the downloads page. I only found it by coincidence. An asset store is also a must have. It gives people an incentive to use the engine and creates the opportunity to earn money selling assets. That will drive more development for the engine as more people gain experience in creating assets it also builds a talent pool for game studios to hire from.In reality it would take a day or 2 to setup a website with an asset store and some proper navigation  since most of the difficult work has been done already. When I pick a system to bet my success on I want to see that there is progress being made. I want to see that it is being seriously developed and not just some back burner project in a cornerLumberyard needs a proper site with:Home PageBlogGalleryRoadmapForumAsset store / free assetsDocumentation / TutorialsLike I said most of the hard work has already been done. It just needs to be organized and displayed as a proper website, with proper navigation.I have been watching this project for over 2 years and this is the first time I have even seen the forum. I still haven't invested my time to download the engine.SharerePost-User-3190921answered 3 years ago0They will implement it sooner. But as a time being I am focusing on trying to do things myself. The reason I will chose Lumberyard over Unity or Unreal is its real-time capabilities. If you observe game development carefully they are aiming for ray tracing. And the first candidate for game engine on that category is Cryengine. And now you have Lumberyard. I don't think that Unreal and Unity can match Cryengine and Lumberyard on that category. Because it has something to do with its core code. If you watch Unreal talks about their Global Illumination. It is funny that they warn their developer not to use that on forest. And in Cryengine you can normally use that. And you don't need to bake everything Because it is in real-time. Lumberyard can be user-friendly as time goes by like Unreal and Unity. But Unreal and Unity will struggle to implement real-time lighting because their lighting needs baking. They can try but they need to change the core of their engine.SharerePost-User-2061097answered 3 years ago0@REDACTEDUSERhttps://docs.aws.amazon.com/lumberyard/latest/userguide/configurator-intro.htmlBut what the Community answered you here can also help even starting with other resources ...Thanks!SharerePost-User-7328120answered 3 years ago"


Question: Best practice to use X-Ray with Appmesh

"I would like to know when using Appmesh, what is the best practice for distributed tracing? Since Envoy is running alongside every service, Do we need to instrument our application with SDK? Or Envoy is enough for sending tracing data? After all one of the Service Mesh benefits is observability.In other words, in what situation do we need to instrument our application ourselves when using app mesh?FollowComment"

Answer: "0Couple of things -1, X-Ray is not only about "gathering" the traces. It's also about analytics and visualization. i.e. what you gonna do AFTER the traces are generated. It's like Prometheus and Grafana (not exactly, but you get the point).You can use Appmesh to send the traces to X-Ray and generate insight from them.2, Envoy used in Appmesh not necessarily support all the latest features of Envoy. One noticeable one is not able to set the sampling rate. If that's something you want to customize, X-Ray is an option.CommentShareJason_Sanswered a year agoMosi a year agoThanks.I totally agree with you on 1. We are gonna use X-Ray to analyze our application and potentially improve it.My point is if we need to instrument our application manually what is the point of Appmesh sending X-Ray traces? I think in a perfect world when using Service Mesh(Appmesh) we no longer need to instrument our application and Envoy does it on our behalf.What we are doing now: We are using Golang gin framework and because X-Ray SDK does not support gin, we had to use OTEL. At the same time, we are using Appmesh. My question is do we need to instrument our application(gin) while we are using Appmesh?Share0I would like to know when using Appmesh, what is the best practice for distributed tracing?AppMesh distribute requests to downstream services, the envoy will be nodes in XRay trace graph.Since Envoy is running alongside every service, Do we need to instrument our application with SDK?Because Envoy supports vend segment, user can get segments represent envoy nodes in trace graph, even does not instrument application code by OTel/XRay SDKs. But if user wants to have more details instrumentation info in application, can further instrument application either by ADOT or XRay sdk.Or Envoy is enough for sending tracing data? After all one of the Service Mesh benefits is observability. In other words, in what situation do we need to instrument our application ourselves when using app mesh?Follow previous question. It is up to how many details user want to have in his trace. The segment vended from envoy has basic data such as name, duration, response code, etc. If user feels it is not enough, can further instrument applications.CommentShareAWS-User-3368379answered a year ago"


Question: CodeCommit - notifications for author of PR's

"Is it possible to configure (without the use of lambdas and code) that the author of a Pull Request gets notifications on comments, rejects and approvals. And that the reviewer gets notifications on events after a review? This is normal in GitHub etc. but is not default in CodeCommit?FollowComment"

Answer: "0I had the same exact use case that I wanted to see in CodeCommit, because I've been very used to that in GitHub and GitLab. The only thing I've been able to find so far has been setting up a Lambda function, triggered via EventBridge when PR comments are added, which extracts the commit comment, and then sends that to an SNS topic, to which folks are subscribed. I haven't seen anything out of the box in CodeCommit.CommentShareanotovanswered a year ago"


Question: Custom Domains Quota

"Hi,https://eu-central-1.console.aws.amazon.com/servicequotas/home?region=eu-central-1#!/services/cognito-idp/quotas/L-71267F98 shows there's a fixed quota of 4 domains per account when using custom Cognito domains.Does this mean I can only have 4 domains as custom domains like example.com per account or does this also mean I can only have 4 subdomains per account on a particular domain like auth.example.com?FollowComment"

Answer: "0Tried it by myself by setting up 5 User Pools and tried to set up 5 subdomains for 1 domain:The limit for custom domains is: 4. (Service: AWSCognitoIdentityProviderService; Status Code: 400; Error Code: LimitExceededException; Request ID: ...; Proxy: null)CommentSharealexanderzeitleranswered 2 years ago0Hi,By custom domain, we mean when you specify the domain name in the Amazon Cognito console, and you provide a certificate you manage with AWS Certificate Manager (ACM). After you add your domain, Amazon Cognito provides an alias target, which you add to your DNS configuration.That is, both auth.example.com or example.com would be treated as a custom domain. More information on the same can be found at:https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-add-custom-domain.htmlAdditionally, we can find Cognito Hard Limits at :  https://docs.aws.amazon.com/cognito/latest/developerguide/limits.html#limits-hardHope this helps!CommentShareAWS-User-9460217answered 2 years ago"


Question: How do you delete code signing profiles created in the OTA Job configuration workflow

I have created a number of code signing profils for use in OTA Update Jobs for FreeRTOS and ESP32.I need to be able to delete some of these profiles but cannot seem to see where/how I can do this.I have looked in AWS Signer> signing profiles. But the do not show up there.Any help would be greatly appreciated.Thanks!FollowComment

Answer: "0Hi. You can list them using the CLI with aws signer list-signing-profiles: https://docs.aws.amazon.com/cli/latest/reference/signer/list-signing-profiles.html. By default, it will only list active profiles.There is no delete operation. But you can cancel a signing profile using the command line: https://docs.aws.amazon.com/cli/latest/reference/signer/cancel-signing-profile.htmlCommentShareEXPERTGreg_Banswered 2 months ago"


Question: Aws how to access user

How can we access user through command line interface if there is no availability of AWS Access Key ID and AWS Secret Access KeyFollowComment

Answer: "0Assuming you want to specifically use CLI, I’d suggest to look into the upload login profile CLI command to issue password reset. If you don’t want to do that, then you could look on below references and see if they help.https://blog.gruntwork.io/a-comprehensive-guide-to-authenticating-to-aws-on-the-command-line-63656a686799https://docs.aws.amazon.com/cli/latest/reference/iam/update-login-profile.htmlhttps://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys_retrieve.htmlCommentShareEXPERTalatechanswered 4 months ago0There are various ways.  For example, if you would like to issue CLI from EC2, you can use IAM role to achieve this.Refer to below from EC2 guide.But developers would then have to manage the credentials and ensure that they securely pass the credentials to each instance and update each Amazon EC2 instance when it's time to rotate the credentials. That's a lot of additional work.Instead, you can and should use an IAM role to manage temporary credentials for applications that run on an Amazon EC2 instance. When you use a role, you don't have to distribute long-term credentials (such as a sign-in credentials or access keys) to an Amazon EC2 instance.https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.htmlCommentSharecharliezhanganswered 4 months ago"


Question: I have an item in my current billing cycle that I need to get the details for.

"Hello:I have a billing charge for an S3 item for the current billing cycle (this month) that looks like this:$0.01 per GB - flat fee for all bytes retrieved in One Zone-Infrequent Access  ------  15,590.954 GB  ----   $155.91I would like to get the details for that item because no such action has been taken. That is when did it happen and what are the details of the transfer.Is it possible to do this?Thanks,DerekFollowComment"

Answer: "0Hello,Sorry to hear about the experience and any concerns this has caused, Derek. I recommend reading through this article to assist with finding the resources related to the charge:https://aws.amazon.com/premiumsupport/knowledge-center/resources-unexpected-charges/On that page you can learn about the AWS Cost Explorer & AWS Cost and Usage reports; which help you visualize, understand, and manage your AWS costs and usage over time.I also encourage looking into this link for suggestions to help you avoid unexpected charges on your bill:https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/checklistforunwantedcharges.htmlIf you'd like, you're also welcome to create a case with our Billing team for further assistance with this:http://go.aws/support-centerBest wishes,— Thomas E.CommentShareEXPERTAWS Support - Thomasanswered 5 months ago"


Question: Greengrass v2 fleet provisioning - how to scale authorization policies.

"I will have a fleet of Greengrass v2 devices which will be deployed to production environments using fleet provisioning pattern.In the provisioning template I will specify a common IoT policy I have created for the devices.Each device will have its own serial number, which will also be the thing's name and I want this serial number(thing name) to be used as a topic filters in the mentioned IoT policy so the Greengrass and other components on the device can only communicate on topics relevant to them.I want to use ${iot:Connection.Thing.ThingName}* variable to filter the topics but:The documentation for Greengrass v2 states:ImportantThing policy variables (iot:Connection.Thing.) aren't supported for in AWS IoT policies for core devices or Greengrass data plane operations. Instead, you can use a wildcard that matches multiple devices that have similar names. For example, you can specify MyGreengrassDevice to match MyGreengrassDevice1, MyGreengrassDevice2, and so on.Does this mean the ${iot:Connection.Thing.ThingName}*  variable specified in my common policy in provisioning template won't work and my Greengras Core devices will not be able to communicate with IoT Core?If so, how can I achieve IoT policy authorization scaling with Greengrass devices?The suggested solution - to specify * wildcard will match any serial number and thus will not be secure enough.FollowComment"

Answer: "0Hi,in order to scale policies with Greengrass you can leverage Certificate policy variables. They work in the same way as thing policy variables but their values are sourced from the device certificate.The only thing you cannot scope down via policy variables is the iot:Connect resource.  Greengrass might create multiple MQTT connections, and these connections use clientId based on the thing name but with a postfix (eg coredevice, coredevice-1, etc).To scope down this action, craft a separate policy or each of the Greengrass Core device containing only the iot:Connect action and a specific resource as shown below.  Attach the policy to the certificate together with the other policies.The policy is similar to the following, where <thingName> should be replaced with the literal thing name of the core device.{    "Version": "2012-10-17",    "Statement": [      {        "Effect": "Allow",        "Action": [          "iot:Connect"        ],        "Resource": [            "arn:aws:iot:region:account:client/<thingName>*"        ]      }}CommentShareEXPERTMassimilianoAWSanswered 4 months agoK676 4 months agoPolicy variables don't seem to have much use as the certificate properties are set by the certificate issuer, thus I do not have ability to set them according to my needs and cannot set the serial number(thing name) according to my design. So this means the policy specified in Greengrass fleet provisioning template needs to use * wildcard for thingNames? This in turn would also mean that by using provisioning template, each Greengrass device in a fleet will have the same permissions to access everything and then components, client devices and any other software running on the device (either using IPC to GGC or proprietary MQTT software client using the same thing certificate) will need to publish and subscribe to relevant topics explicitly. Creating additional policy to scope down the permissions to a <thingName*> requires additional manual or eventually programmatic operation which I wanted to avoid by specifying this in provisioning template's policy resource.ShareMichaelDombrowski-AWS EXPERT4 months agoYou do have the ability to set certificate fields including common name among others. Certificates can be generated using a certificate signing request (CSR) which you have full control over.Share"


Question: Firewall rules for Mysql on Lightsail

"Hi,Is there any way to setup IP filtering on database (MySQL) that is hosted on Lightsail?I can only see public/private access option.FollowComment"

Answer: "0Hi, @Dataedo.Unfortunately the database in Lightsail cannot cover your needs.Lightsail database don't have source filtering like security group.You can create Amazon RDS as another option.And if you want to connect to your RDS database from your Lightsail instance, you can use the VPC Peering feature to connect Lightsail's managed VPC to your default VPC.Please refer to the following article. (Sorry, Japanese Article)https://dev.classmethod.jp/articles/lightsail-vpc-peering/CommentShareEXPERTiwasaanswered 5 months ago"


Question: How are the disconnection events triggered for LoRaWAN gateways?

"Hi!According to the documentation, IoT Core supports publishing messages to notify you of connection status events for LoRaWAN gateways.My question is: what is the criteria to trigger a "disconnect" event? Does IoT Core somehow periodically ping the gateway, or is there a timeout based on the last uplink message received from any IoT device sending data through the gateway?Thank you in advance for your responseFollowComment"

Answer: "0Accepted AnswerHi. The Basic Station LNS protocol uses WebSocket as the transport protocol: https://lora-developers.semtech.com/build/software/lora-basics/lora-basics-for-gateways/?url=tcproto.html.WebSocket is a connection-oriented protocol. For graceful closing of the connection, there is a closing handshake: https://datatracker.ietf.org/doc/html/rfc6455#section-1-4. You can see this implemented in Basic Station here: https://github.com/lorabasics/basicstation/blob/ba4f85d80a438a5c2b659e568cd2d0f0de08e5a7/src/net.c#L639. If Basic Station shuts down, it will send this handshake, causing AWS IoT Core for LoRaWAN to detect the disconnection immediately.For less graceful situations, such as sudden power loss, WebSocket has the ping-pong mechanism: https://datatracker.ietf.org/doc/html/rfc6455#section-5-5-2. Here is where Basic Station will send a pong if it receives a ping from the LNS: https://github.com/lorabasics/basicstation/blob/ba4f85d80a438a5c2b659e568cd2d0f0de08e5a7/src/net.c#L577-L592.It takes ~2 minutes to detect disconnection if I cut power to my gateway.CommentShareEXPERTGreg_Banswered 6 months ago"


Question: Using MQTT Bridge and MySensors - getting started

"HelloI've set up MQTT bridge, from a legacy (MySensors) system which end-devices publish to, which now sends updates via MQTT to AWS-IoT.I can now Test this by subscribing to topics - and can see the json arriving:{"topicFilter": "mygateway2-out/////+","qos": 0,"messages": [{"format": "json","topic": "mygateway2-out/61/255/3/0/0","timestamp": 1620612201680,"payload": 74},{"format": "json","topic": "mygateway2-out/254/255/3/0/0","timestamp": 1620612198109,"payload": 67}]}I want to be able to injest this into IoT-Core, so I can name, log and graph them.  And also potentially "publish" to specific "topics" to control the devices.I'm not sure where to start with this.  Do I need to use SiteWise?  Or can I create a lambda to transform these messages, and create "Things" in IoT-Core?  Ideally, I'd like new "Things" to be created based on any new "topics" received.  This would allow me to have MySensors added and Things created automatically.I'm not using Greengrass or anything.  Just Mosquitto as a broker with an AWS TLS secure Bridge function.Can anyone steer me in the right direction?FollowComment"

Answer: "0Found answer, using Act and Rules to act on messages.CommentSharenzbaxtermananswered 2 years ago"


Question: ALB Routing to Unhealthy Targets

"Created a Private API GW, provisioned an ALB pointing to the ENIs for the API GW PrivateLink. The targets are in an unhealthy state, but the API request to the ALB pushes through and returns the expected payload from API GW.Any reason why ALB is routing to unhealthy targets?FollowComment"

Answer: 0Accepted AnswerALB fails open when all targets in a target group are unhealthylook for The load balancer sends requests to unhealthy targets on https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-troubleshooting.htmlCommentShareAWS-User-6308988answered 4 years ago


Question: RDS PostgreSQL: how to move to the version15?

"I have now RDS PostgreSQL v9., it works a few years. It started with v9. and still use it.Now I'd like to use some new features (for example bloom filters etc) so move to v15.How can I switch to v15 (move database etc)?Can it be done automatically or manually?Does it cost for me additionally?FollowComment"

Answer: "0RDS PostgreSQL can be upgraded as described in the following document.You said you are using version 9 so once you upgrade to 14.1 you will need to upgrade to 15.2.https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.PostgreSQL.htmlThe upgrade itself can be done manually, and we are aware of no special fees.Since this will be a fairly large upgrade, we recommend that you take a snapshot and make sure it works well with your application before executing it.CommentShareEXPERTRiku_Kobayashianswered 15 days ago0Hi Oleg,Further to Riku's comments, depending on which version of Postgres you're using you'll likely have to upgrade to 14.1 first before going to 15.2. See this section of the guide for further details - https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_UpgradeDBInstance.PostgreSQL.html#USER_UpgradeDBInstance.PostgreSQL.MajorVersionRiku is right there are no fees for upgrading, and it has to be manually initiated from either the command line or console.I hope that helps Oleg :)ThanksCommentShareSUPPORT ENGINEERBrandonanswered 13 days ago"


Question: CloudWatch dashboards suddenly show no data

"My CloudWatch dashboards were all showing data for the past week. I copied a couple of panels on my CloudWatch dashboard, then saved the dashboard to another name.Now, no panel in either dashboard is showing any data. I've tried selecting time period of 15m, 1h, 3h, 1w, 1 month. The charts simply don't show any data points. The tables show, "No data found. Try adjusting the dashboard time range or log query."One of the queries, which I did not edit today is:filter(eventName="GitPush") | stats count() as GitPushRequests by bin (5m) as t | sort t ascWe definitely have GitPush events in the past week. Usually dozens or 100s per minute.I tried logging out and back in. I am in Chrome. I even tried going to the dashboard from Firefox, first time accessing from that browser, in case it was a browser caching issue. (I don't want to clear browser cache if I don't have to.)Also note that I tried editing a couple of the panels to bring me to "Logs Insights" with the Save changes button. From there, I run the query and it does show data. So, the issue is with the dashboard, not the data, not the queries.Edited by: Marnee on Feb 2, 2021 12:30 PMFollowComment"

Answer: "0I edited my original question to say that I tried editing one of the panels and running the query from the edit panel screen.After doing that, I cancelled the edit. When it went back to the dashboard, now data is showing. This looks like a defect to me.CommentShareMarneeanswered 2 years ago"


Question: My AWS Instance suddenly became completely unresponsive

"Hello All,I was in the middle of performing some actions on my server (Ubuntu 20.04 - had run bundler install for a rails app). In the middle of querying the gem server, it hung and then since then I cannot connect to the server. The status checks all say things are good, the monitoring shows the server went to 100%.After about 10 minutes I shut down the server via the console and then restarted. I still cannot access it (via ssh using the public IP address). In addition, I tried access via ssh using the private IP address from another AWS instance (in the same availability zone). No matter what I try I cannot gain access to the machine again. I have restarted (stopped and started) twice and it hasn't helped. The monitoring shows that the cpu usage is normal now after restarting and the network monitoring also shows something going in and out despite the fact that I cannot connect.Can some one help with this? The instance id is: i-05afe6ed27ef2eb98Thanks,Scott LittleFollowComment"

Answer: "0Doh, after the start and restart I had forgotten to change the dns record to point to the new IP address. I am not sure why my test pointing to the private ip didn't work though, I guess that those are more private than I thought - not accessible from aws machines in the same zone.Anyway, never mind and sorry for the noise.CommentShareSmallCubedanswered 2 years ago"


Question: Does the total of emails sent in a day include bounces?

"Hello,I would like a clarification: the data I see in the dashboard (daily email usage) is the total number of emails sent, right?If I receive notification emails similar to the one below (bounce notification), are these messages included in that total number?Thank youExample of bounce notification:Reporting-MTA: dns; a7-42.smtp-out.eu-west-1.amazonses.comAction: failedFinal-Recipient: rfc822; someone@domainDiagnostic-Code: smtp; 550 5.7.1 Email rejected per SPAM policyStatus: 5.7.1FollowComment"

Answer: 0Yes. The counter is based upon calls to the SendEmail API operation.CommentSharecloud-commanderanswered a year ago


Question: Where do I find more details about SMS delivery failures?

"I just sent a few SMS from SNS and all of them were "failed", according to the SNS console. However, I can't see the details of those failures. Where can I find them?FollowComment"

Answer: "1Anyone can help? Messages are not delivered and we are simply thinking now of moving to another provider.CommentShareyegor256answered 4 years ago1I found this article, which helped: https://docs.aws.amazon.com/sns/latest/dg/sms_stats_cloudwatch.htmlCommentShareyegor256answered 4 years ago"


Question: Quicksight email frequency >1day or location of Athena queries / Quicksight dataset?

"Hello,We have Amazon Connect CTRs streaming into Athena, and in Quicksight we refresh this Athena SQL view/SPICE every 30 minutes. We have a client request to email the report every 30 minutes (48 times per day); however, Quicksight only allows the report to be emailed daily. In addition, we would like the ability to FTP the data out of Athena/Qucksight every 30 minutes, similar to what we can do with Filezilla and S3.I don't see where Athena query results or Quicksight Analysis/Dashboards are stored for access. How can we get this data emailed/FTPed every 30 minutes? Is there a way to copy an Athena query or Quicksight Analysis/Dashboards to S3 or similar for email/FTP access? Thank you.JohnFollowComment"

Answer: "0Thank you Arun. It seems part1 is resolved in that Quicksight can be set to refresh every 30 minutes, so now it's finding the Object and emailing it. The challenge is that is uses manifest format (bucket/reports/yyyy/mm/day/name) and then a random object name.I am wondering if EventBridge searching for a new object/PUT and then an action of SES would work, or if it's just easier to use Lambda to listen to a new object in an S3 bucket and then follow the email example you provided? I assume the second option, but since I don't code in lambda I thought I'd ask. Thanks again.JohnCommentSharejohnwittanswered 6 months agoJohn 6 months agoIn addition, a 3rd party solution is to use Shipyard as it can run an Athena query every 30 mins and email out the results.Share0There is no direct method to schedule a query from Athena. However, we can indirectly achieve this by using a “Lambda function” as illustrated in [1]. Once the query gets executed and the query result gets stored in output location, you can programatically email it using python functions (an open source example can be referred from [2]).————————Reference:[1] https://aws.amazon.com/premiumsupport/knowledge-center/schedule-query-athena/[2] https://stackoverflow.com/questions/3362600/how-to-send-email-attachmentsCommentShareSUPPORT ENGINEERArunanswered 6 months ago"


Question: Can I Use NVMe Reservation on a Multi-Attach Enabled Volume?

"Hi,I want to use Amazon EBS Multi-Attach to share data between multiple EC2 instances.In the UserGuide, it saysMulti-Attach enabled volumes do not support I/O fencing. I/O fencing protocols control write access in a shared storage environment to maintain data consistency. Your applications must provide write ordering for the attached instances to maintain data consistency.I've googled "I/O fencing" and found that NVMe Reservation is a good way (compared to "power fencing", which means powering off the error node) to implement I/O fencing.However, I failed to use NVMe Reservation on a Multi-Attach Enabled Volume.The details are as follows.EC2: r5b.large, ubuntu-22.04EBS: io2, 100GiB, 6000 IOPS, enabled Multi-AttachI run following command in ec2 instance:> sudo nvme listand getNode                  SN                   Model                                    Namespace Usage                      Format           FW Rev--------------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- --------/dev/nvme0n1          volxxxxxxxxxxxxxxxx Amazon Elastic Block Store               1           8.59  GB /   8.59  GB    512   B +  0 B   2.0/dev/nvme1n1          volxxxxxxxxxxxxxxxx Amazon Elastic Block Store               1         107.37  GB / 107.37  GB    512   B +  0 B   2.0then run> sudo nvme resv-register -n 1 --crkey=0x0 --nrkey=0xa1 --rrega=0 /dev/nvme1n1and getNVMe status: INVALID_OPCODE: The associated command opcode field is not valid(0x2001)I googled this error message and find that it may be caused by the driver not supporting. To confirm that, I run> sudo nvme amzn id-ctrl /dev/nvme1n1 -Hand get...oncs      : 0  [8:8] : 0Copy Not Supported  [7:7] : 0Verify Not Supported  [6:6] : 0Timestamp Not Supported  [5:5] : 0Reservations Not Supported  [4:4] : 0Save and Select Not Supported  [3:3] : 0Write Zeroes Not Supported  [2:2] : 0Data Set Management Not Supported  [1:1] : 0Write Uncorrectable Not Supported  [0:0] : 0Compare Not Supported...The fifth bit indicates that "not supporting reservation".So does NOT AWS Multi-Attach Enabled Volume support NVMe Reservation? Or there are other ways to solve this problem？FollowComment"

Answer: "1Hi Robert,NVMe reservations are included in the I/O fencing support comment, and are not supported today on EBS Multi-Attach volumes. If you require shared block storage with I/O fencing support, please take a look at FSx for NetApp ONTAP iSCSI volumes, which support fencing.CommentSharekdavydanswered 7 months ago"


Question: Can you used presigned urls + AWS Media Services?

I'm assuming this can be done since the user is ultimately accessing the content from a CloudFront distro?FollowComment

Answer: "0Accepted AnswerYou can use signed URLs with CloudFront, regardless of the type of origin*.One thing to be aware is that the media content generated by AWS media services (and other applications) reference other content (e.g.HLS M3U8 references other M3U8s and media fragments, etc). These URLs won't be signed, so you either need to update these (perhaps by using Lambda@Edge) or use CloudFront signed cookies instead.(* as long as the origin isn't expecting query-string entries with exactly the same names as those for CloudFront signed URLs)CommentShareEXPERTLeeAtk@AWSanswered 3 years ago"


Question: Migrate MySQL 8 to Aurora MySQL 8

"We are having trouble migrating on-premise MySQL 8.0.26 to AWS Aurora MySQL. For this project we're using AWS Database Migration Service (DMS) but it seems we are reaching the limit of the amount of databases to migrate. When we try to migrate over 500+ databases with one task, the task fails with the error "No tables were found at task initialization". When we edit the filter to migrate < 500 databases, the task starts successfully. Can anyone confirm that 500 databases is the limit for DMS? We have to do over 7k databases, but filtering those will not be easy. Is it possible to increase the current limit of 500? Kind regards, Lennard.FollowComment"

Answer: "0You can find limits for DMS here: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Limits.htmlMultiple tasks will be a better path for you as you also may be hitting some limits of the migration instance.CommentShareEXPERTRob_Hanswered a year agoRodney Lester a year agoSee here for how to change the number of tasks: https://docs.aws.amazon.com/dms/latest/userguide/CHAP_BestPractices.htmlShare0I dont think there is a limit on databases or schemas to migrate for mysql source.I would suggest enable extra logging (DETAILED_DEBUG) on component SOURCE_UNLOAD and track the query being passed by DMS against  source to capture table list.once you have the query from log use that directly on source db to identify any issues. this could be an edge case or a bug. once identified i would suggest working with AWS Support for solution/bug reporting/workaround.CommentShareAWS-User-8174525-subhashanswered a year agoAWS-User-0833429 a year agoThank you for the response. I've tried the job again with the suggested settings, but the error remains unchanged. No additional logging is visible in CloudWatch. I'll try to contact AWS Support on this.Share"


Question: What happens if a Route 53 name server receives a query without EDNS0 information?

What happens if a Route 53 name server receives a query without EDNS0 information?FollowComment

Answer: "0Assuming the query is otherwise valid and directed to the correct server, it would respond. EDNS50 is an optional extension to the DNS protocol; it's absolutely not required and a good number of clients do not in fact support it at all.CommentShareQuinnyPiganswered 7 months ago"


Question: Sharing a Terraform/CDK-based Modern Data Stack Solution Privately via AWS

"I am looking for a way to share my Terraform-based modern data stack solution, which I have created using various AWS services, with other companies privately via AWS. However, in the future, we might also consider using AWS CDK for infrastructure creation. Can anyone provide guidance on how I can accomplish this? Specifically, what are the best practices or methods for securely sharing this solution with other organizations while maintaining control over access and usage, and being able to adapt to different infrastructure creation tools in the future?FollowComment"

Answer: "1You can create AWS Service Catalog where you can explore the option of product catalog and can be shared with different clients. Or other good option maybe is terraform cloud workspace where you can create specific directories related different customers , basically creating isolation among customersCommentShareShashank Abhishekanswered 5 months agoAWS-User-1518540 5 months agoThank you for the answer, I have been looking at AWS Service Catalog for a while now.  How widely is it used? Could it potentially be something that we can achieve for multiple clients and keeping it private access only. (Exploring it)ShareShashank Abhishek 5 months agoIts a widely used service where basically on your aws account you create product catalogs for different customers and then you share the unique url to each of them for managing their solution which you created for them within service catalog. This is safe and secure.ShareAWS-User-1518540 5 months agoHow to publish a terraform/cdk based product. It seems that for a product, you can publish a cfn template but there doesn't seem to be a direct approach to upload terraform/cdk code.ShareAWS-User-1518540 5 months agoI think one approach could be create a cfn template which takes input parameters feeds it to lambda function which invokes a Codepipeline (CI tool) which runs terraform code.(are you aware of any further approach for deploying terraform/cdk code.)Share"


Question: Details for modifying a reserved instance

"I'd like to modify our reserved instance from to a larger instance in the same class. Importantly, it is a convertible instance and I am able to find the documentation regarding how to modify the instance. However, I am not seeing the technical details of what that entails.Do I need to disconnect the EBS drives currently attached to my reserved instance before proceeding with a modification?Does a modified reserved instance just automatically appear and all drives, users, settings, etc move to it? Or do I have to reconfigure the new instance with my original instance's settings?FollowComment"

Answer: "1If it's within the same instance family (T4, M5, etc) and you are just changing size, you shouldn't need to do anything special:From the docs Instance Size Flexibility:With instance size flexibility, the Reserved Instance discount applies to instance usage within the instance family. The Reserved Instance is applied from the smallest to the largest instance size within the instance family based on the normalization factor.When changing out the instance resource itself, you will want to ensure you preserve any resources that may be destroyed along with the instance such as ENI, EBS volumes, etc. You can then re-attach these resources to the new instance.CommentShareC Mencarellianswered 4 months ago"


Question: Setting up auto scaling from alarm based on SQS messages for fargate ECS

"I would like to auto scale a container based on SQS messages in a queue. When I go through to the ECS service setup I try and select the auto scale option for ECS Services, but my list is empty. I have ECS clusters, services, and tasks, set up; but nothing is in the list. Clearly I am missing a configuration here but I can't find what it is I am missing. The auto scale is able to be set up for two existing metrics, CPU and memory, which is great. But I want this to scale based on messages visible in the SQS queue. I have probably misunderstood the use of this section, but if I could be pointed in the right direction that would be great.Can this be done through the console, or is it something I would have to configure through terraform?ThanksFollowComment"

Answer: "3Accepted AnswerHello,There was a similar question a few months back. I can't link my response to it, but putting the link here to the question if that is of help to deal with the configuration and Infra as Code (CFN though): https://repost.aws/questions/QUctw_D1ykSbOaxjDRToVbkg/looking-for-an-ecs-eks-fargate-cloudwatch-sqs-exampleWhat you might be missing is a Scaling Target associated with your ECS Service. You need to first define that with a min/max container for the service.Hope this helps,CommentShareJohnPrestonanswered 2 months agorePost-User-3942636 2 months agoah ok, thanks. I'll take a look at the scaling targets and configuring that to see if that works out. ThanksShare"


Question: Quicksight export more than 1 million rows data to multiple csv

"I have a requirement to export more than 1 million rows from a table visualization in QuickSight to a csv file or multiple csv files.How does QuickSight deal with data exceeding 1 million rows? Does it export it to multiple csv files? If not, what can be a good alternative to export all data from QuickSight to csv?FollowComment"

Answer: "0Hi,Please see this article on exporting data from visuals on Amazon QuickSight.https://docs.aws.amazon.com/quicksight/latest/user/exporting-data.htmlPer the documentation: “Amazon QuickSight supports exporting up to 1 million rows or 500 MB of data, whichever limit is reached first.”Hope this helps.CommentShareNick Furranswered 10 months ago"


Question: MySQL DMS continuous replication with schema changes.

"A customer wants to migration a MySQL with DMS they will do continuous sync of the database, from the docs it states replication is done at the database logs level.  Does mean that any schema changes that they would make during the migration would also be migrated across?FollowComment"

Answer: 1Accepted AnswerDMS supports a part of DDL only. Please see http://docs.aws.amazon.com/dms/latest/userguide/CHAP_Introduction.SupportedDDL.html .And DMS has some limitations around DDL on MySQL as a source. Please see http://docs.aws.amazon.com/dms/latest/userguide/CHAP_Source.MySQL.html#CHAP_Source.MySQL.Limitations .CommentShareTats Shibataanswered 6 years ago


Question: Which GPU instances are supported by the sagemaker algorithm forecasting-deepar?

"I previously ran a hyperparameter tuning job for SageMaker DeepAR with the instance type ml.c5.18xlarge but it seems insufficient to complete the tuning job within the max_run time specified in my account. Now, having tried to use the accelerated GPU instance ml.g4dn.16xlarge, I am prompted with an error - "Instance type ml.g4dn.16xlarge is not supported by algorithm forecasting-deepar."I cannot find any documentation that indicates the list of instance types supported by deepar. What GPU/CPU instances have more compute capacity than ml.c5.18xlarge which I could leverage for my tuning job?If there isn't, I would appreciate any recommendations as to how I could hasten the run time of the job. I require the tuning job to complete within the max run time of 432000 seconds. Thank you in advance!FollowComment"

Answer: "1Hi, thanks for pointing this out. Indeed, all g4dn instances are currently not supported by the forecasting-deepar algorithm, but as you rightly point out, this is currently not documented. I will raise this with the service team to include in in the documentation.In the meantime, you can try out the P3 instances instead - these are also powerful GPU instances and should help you speed up the training time.CommentShareHeikoanswered a year agoAWS-User-3244191 a year agoI appreciate the quick response @Heiko! I see that for training there are 3 P3 instance options available, i.e. - 2xlarge, 8xlarge and 16xlarge. It would be super helpful if you could confirm which of these are configured for deepar.Additionally, I was hoping you could help me understand how the parameter 'instance_count' in the sagemaker Estimator class affects training time. The way I understand it is that the number attributed to this parameter results in the number of EC2 instances with the specified instance type to be allocated. For example with an instance_count = '3', we would have 3 EC2 instances, each with a p3.2xlarge (for example) launched to parallelize training.If so, which would you say is better in terms of improving training speed - using a higher instance_count / a single higher compute capacity instance?Thank you!Share"


Question: incompatible-restore: your MySql memory setting is inappropriate for the us

"Hi, we've been unable to use create-db-instance-read-replica in our main RDS MySQL 5.6.39 database for a few days.We've used it reliably for years and do it weekly, but starting this week it has consistently failed to produce a replica. The instance created by the API call lands on the "incompatible-restore" state. This is what we see:Summary > InfoIncompatible-restoreLogs & Events > Recent eventsDatabase instance put into incompatible-restore. Your MySql memory setting is inappropriate for the usagesWe haven't found anyone reporting this specific scenario, only a thread mentioning "memory setting is inappropriate" for Aurora, but with "incompatible-parameters", not "incompatible-restore."We found this thread https://forums.aws.amazon.com/thread.jspa?messageID=537144 for a different "incompatible-restore" scenario with pointers to:Temporary tables: We don't have any long-running sessions that could be clinging on to temporary tables (from querying sys.session) nor any MEMORY tables listed in information_schema.TABLES.MyISAM: We don't have any MyISAM tables outside the mysql/information_schema Table SchemasSomeone also jumped in there to say they managed to clone some time later, but we've been trying for 3 days with no success.I'd love some help understanding what's happening or pointers into how I could dig further and solve this problem.ps: the instance is temp-staging-reports-replicaEdited by: julianobsnri on Mar 29, 2019 12:24 PMFollowComment"

Answer: "0Accepted AnswerHello julianonri,Can you please attempt another read replica creation and send me a private message if it fails? We recently deployed a change that should allow you to create read replicas again without the instance being placed into incompatible-restore due to memory settings.Regards,JaimeCommentShareAWS-User-7891421answered 4 years ago0Having exactly the same problem. In one account where we had this issue the first time it started working somehow after a few days/tries. Setting up a secondary account now with the same setup and issues are back.Did you by any chance create the RDS and removed it again, then recreated it? The Logs&Events tab show some DB info from days before even though I just created the database. Also changing the name makes it deploy with no issues. Seems that the replica technology does not clean up well.Also, see this post over at stackexchange:https://dba.stackexchange.com/questions/233717/mysql-rds-incompatible-restore-while-creating-read-replicaCommentShareYannickvVRanswered 4 years ago0Did you by any chance create the RDS and removed it again, then recreated it?Yeah, we do this every week and have been doing so for more than a year.Also, see this post over at stackexchange:Thanks, I will test different params later this week. I hope they don't have to be set on the primary because doing that for our scenario is pretty risky.CommentSharejulianonrianswered 4 years ago0I can confirm we can successfully create read replicas again =]CommentSharejulianonrianswered 4 years ago0Hello, could this issue be back? just few mintues before I've had the same problem on RDS MySQL read replica, then I've set sort_buffer_size back to the default value and re-created replica - error was not there any more, I've bring back my original sort_buffer_size and it was successfully applied - read replica is in healthy status as well.asdasdCommentSharerePost-User-0847555answered a year ago"


Question: Unable to list s3 buckets using IAM user with AdministratorAccess and AmazonS3FullAccess

"Hello Folks,I created an IAM user as per best practice and granted this user the following policies:AdministratorAccess{  "Version": "2012-10-17",  "Statement": [      {          "Effect": "Allow",          "Action": "*",          "Resource": "*"      }  ] }AmazonS3FullAccess{  "Version": "2012-10-17",  "Statement": [      {          "Effect": "Allow",          "Action": [              "s3:*",              "s3-object-lambda:*"          ],          "Resource": "*"      }  ] }And configured the AWS CLI to use the Access keys for the IAM user. When trying to list all the buckets on the account using the IAM user, I am getting the following error:An error occurred (AccessDenied) when calling the ListBuckets operation: Access DeniedDon't understand why it's returning an AccessDenied error as the IAM user has the necessary permission to be able to run any action on any resource. Would appreciate some help/guidance on this. Thank you!FollowComment"

Answer: "2Accepted AnswerThere could be a mismatch somewhere, run aws configure list to show the actual credentials that you are using in the AWS CLI right now, and verify that the (partially obscured) access_key and secret_key are those that you expect to be using.CommentShareRWCanswered a month agorePost-User-5048586 a month agoThank you for your answer on this. I ran: aws configure list and the access_key and secret_key are what I'm expecting the CLI to use. When I run: aws s3 ls (using the root accounts' access key), the buckets are returned without an issue. Don't understand why I'm not able to do the same with the IAM User with admin permissions.ShareRWC a month agoAs the root user, aws iam list-attached-user-policies --user-name [the_iam_user] and confirm it's definitely got "PolicyName": "AdministratorAccess" and "PolicyArn": "arn:aws:iam::aws:policy/AdministratorAccess".And also as the root user, aws iam list-access-keys --user-name [the_iam_user] the AccessKeyId is definitely what you expect it to be, and its status is Active ?SharerePost-User-5048586 a month agoYou were right on the money. After running aws iam list-attached-user-policies --user-name [the_iam_user], I noticed AdministratorAccess was not one of the policies attached to the IAM user. I was attaching the policies from a group, for some reason the user didn't inherit the permissions of the group. I added the policy directly to the IAM user and that resolved the issue. Thanks a lot for your help.Share1Run the following command to make sure you are the principle you think you are.aws sts get-caller-identityIf that is correct, check to see if there is a bucket policy on the bucket that might be denying your request.CommentShareEXPERTkentradanswered a month ago"


Question: Baseline value for Pivot table with a filter

"How can I calculate a baseline value that has a filter? For example, what I am trying to do is sumOver(sum(X),[{Row in Pivot table}, {Column in Pivot table}=0])FollowComment"


Question: S3 LifeCycle rules with tag filters

"I want to transition the storage class not only after a certain amount of days, but also when the object is ready to be transitioned. Which could be several days.My idea is to use Tag filters:Transition after 1 dayPrefix: my-files/Tag: Ready:YesOn object creation, no Tags are applied to the object.On day N+1 the object isn't transitioned, since the tag rule doesn't matchOn day 7, I add the tag "Ready:Yes"Will the object transition on day 8 (last_modified>1 and tag=Ready:Yes) or will it not, since the process scanning files to be transferred will not list my object since it's age is more than 2?Or another way to phrase my question: will all the objects present in the bucket be evaluated every day to see if they are eligible for a Lifecycle Rule? Or are objects flagged as ineligible the first time and never re-evaluated again?ThanksDanielFollowComment"

Answer: "0Accepted AnswerAmazon S3 will evaluate the object's LastModifiedDate to determine if the object is eligible for transitition. The LastModifiedDate is based on when the body of the object was last modified. Adding tags to an object will not cause the LastModifiedDate to reset. Additionally, Amazon S3 will scan you bucket daily to evaluate if an object is eligible for a Lifecycle Rule.Objects eligible for transitioning via a Lifecycle Rule due not contain any additional headers. However, objects eligible for expiration via a Lifecycle Rule will contain an additional "Expiration" header. You can perform a HeadObject API call these objects to see if Amazon S3 has evaluated the object and determined if it's eligible for expiration. You can use this behavior to test out your use case by loading test objects into a prefix and configuring a Lifecycle Rule to expire objects within that prefix. Then, on the day you want to expire the object, you can add the required tags to the object and then wait for a bit and then perform HeadObject call. You will see that the object has been evaluated by Amazon S3 and has determined that the object is eligible for expiaration by viewing the "Expiration" header.CommentShareAWS SA Neilanswered 4 months ago"