You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/arduino-cloud/09.business/02.aws-s3-exporter/content.md
+39-5
Original file line number
Diff line number
Diff line change
@@ -370,44 +370,78 @@ AWS S3 and Arduino Cloud are now connected with the stack successfully deployed.
370
370
371
371
## Lambda, CloudWatch & EventBridge
372
372
373
-
Once the CloudFormatio stack has been deployed getting CSV destination bucket getting filled every hour, there are three useful tools to monitor stack deployment. These are Lambda, CloudWatch and EventBridge.
373
+
Once the CloudFormation stack is deployed and the CSV destination bucket receives data every hour, three AWS services can help us provide monitoring and troubleshooting capabilities: **Lambda**, **CloudWatch** and **EventBridge**. These tools can help us provide visibility to the execution status, performance metrics and event triggers of the AWS S3 CSV Exporter.
374
374
375
375
### Lambda
376
376
377
+
The **AWS Lambda function** is the core component responsible for running the data extraction process at scheduled intervals. It retrieves specified data from Arduino Cloud and stores it in the AWS S3 bucket.
378
+
379
+
The Lambda function overview displays key details such as the function name, assigned **Amazon Resource Name (ARN)** and the trigger responsible for the execution, **EventBridge (CloudWatch Events)**. Additional function metadata includes the application name and the last modification date.
380
+
377
381

378
382
383
+
The configuration section provides insights into the execution environment. It includes details about the function runtime, execution history and triggers. Other important parameters, such as destinations, environment variables and error-handling configurations, can also be managed here.
384
+
379
385

380
386
381
387
### CloudWatch
382
388
389
+
**Amazon CloudWatch** monitors the Lambda function and related resources in real time. It logs each function execution and generates performance metrics to analyze execution behavior, track invocation counts and detect failures.
390
+
391
+
The CloudWatch metrics dashboard presents data such as invocation frequency, execution duration and success rate. Metrics related to event processing, error rates and memory consumption provide additional insights into function efficiency and stability.
392
+
383
393

384
394
395
+
CloudWatch logs have execution records for every function run, including timestamps, request IDs, memory consumption and billed execution duration. This information is critical for debugging and verifying execution consistency.
396
+
385
397

386
398
399
+
Detailed logs display function specific messages, showing configuration settings such as applied filters, aggregation parameters and time window alignment. Logs also corroborate successful data exports, including file upload status, highlighting any warnings or errors encountered during execution. This helps us verify if it could establish communication with configured Arduino keys.
400
+
387
401

388
402
389
403
### EventBridge
390
404
405
+
**Amazon EventBridge** manages the scheduling of Lambda function executions. It makes sure that the data extraction process runs at predefined intervals without manual intervention.
406
+
407
+
The **EventBridge Rules** dashboard shows the rule responsible for triggering the *AWS S3 CSV Exporter Lambda function*. The rule type is **Scheduled Standard**, meaning it executes the function at fixed intervals, with its status appearing as Enabled, indicating that it is active and operational.
408
+
391
409

392
410
411
+
The rule details section provides more information about the execution schedule, including the assigned **ARN** of the event rule, the designated target Lambda function and the configured schedule for triggering the function at regular intervals.
412
+
393
413

394
414
415
+
The Lambda function's EventBridge trigger confirms the active connection between EventBridge and the Lambda function. The trigger state is Enabled, ensuring scheduled execution. This section also displays additional configurations related to event targeting and optional input parameters.
416
+
395
417

396
418
419
+
The combination of Lambda, CloudWatch and EventBridge provides monitoring and maintenance of the AWS S3 CSV Exporter. Lambda handles function execution and triggers, CloudWatch logs real time function activity and performance metrics. At the same time, EventBridge schedules the execution process to maintain continuous data exports.
420
+
421
+
Together, these services provide the tools to track performance, detect errors and optimize the automated CSV data extraction from Arduino Cloud to AWS S3.
422
+
397
423
## Building the Code (Optional)
398
424
399
-
Ensure that at least [**Go version 1.22**](https://go.dev/) is installed to build the exporter locally. The core code can be built using the following command:
425
+
The [**AWS S3 CSV Exporter repository**](https://github.com/arduino/aws-s3-integration/tree/0.3.0) contains the source code required to build and deploy the exporter. While precompiled binaries are available, building the exporter locally allows customization and testing before deployment.
426
+
427
+
### Building Locally
428
+
429
+
To build the AWS S3 CSV Exporter, make sure that at least [**Go version 1.22**](https://go.dev/) is installed. The exporter can be compiled using:
400
430
401
431
```bash
402
432
./compile-lambda.sh
403
433
```
404
434
405
-
This creates a **`arduino-s3-integration-lambda.zip`** file. Alternatively, you can run the following command to build the exporter:
435
+
This script creates an **`arduino-s3-integration-lambda.zip`** file, which is the packaged Lambda function ready for deployment.
436
+
437
+
Alternatively, the following command can be used to build the exporter:
406
438
407
439
```bash
408
440
task go:build
409
441
```
410
442
443
+
This approach is useful for developers who want to test or modify the exporter before deploying it using AWS CloudFormation.
444
+
411
445
## Additional Documentation
412
446
413
447
To help you get the most out of the exporter, the following documentation resources are recommended for your reference:
@@ -424,6 +458,6 @@ To help you get the most out of the exporter, the following documentation resour
424
458
425
459
## Conclusion
426
460
427
-
In this tutorial, you have learned to use the **Arduino AWS S3 CSV Exporter** to capture time series data from **Arduino Cloud** and store it in **AWS S3** for management and analysis. With configurable options for aggregation intervals, tag filtering, and data compression, the exporter offers flexibility for various project needs.
461
+
This tutorial showed how to use the **Arduino AWS S3 CSV Exporter** to extract time series data from **Arduino Cloud** and store it in **AWS S3** for structured management and analysis. The exporter can be adapted to different use cases with configurable settings for aggregation intervals, tag-based filtering and optional data compression.
428
462
429
-
Following this tutorial, you can deploy and configure the exporter using a CloudFormation template, making it a useful tool for integrating cloud based data storage into your IoT projects.
463
+
By deploying the exporter using a CloudFormation template, you have simplified cloud based data storage for IoT applications. This setup automates data collection, simplifying trend analysis, device monitoring and long-term storage management.
0 commit comments