Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added public/images/aws/deploy-lambda-function.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added public/images/aws/invoke-lambda-function.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ The rule to be removed must be exactly the same as in the existing configuration

## Comparison with Fault Injection Service

AWS [Fault Injection Service (FIS)]({{< ref "fis" >}}) also allows controlled chaos engineering experiments on infrastructure.
AWS [Fault Injection Service (FIS)](/aws/services/fis) also allows controlled chaos engineering experiments on infrastructure.
While similar in purpose, there are notable differences between FIS and LocalStack Chaos API.

This table highlights those differences, offering a detailed comparison of how each service approaches chaos engineering, their capabilities, and their integration options.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ sidebar:

The Chaos Engineering Dashboard in LocalStack offers streamlined testing for cloud applications, enabling you to simulate server errors, service outages, regional disruptions, and network latency with ease, ensuring your app is ready for real-world challenges.

The dashboard uses [LocalStack Chaos API]({{< ref "chaos-api" >}}) under the hood to offer a set of customizable templates that can be seamlessly integrated into any automation workflows.
The dashboard uses [LocalStack Chaos API](/aws/capabilities/chaos-engineering/chaos-api) under the hood to offer a set of customizable templates that can be seamlessly integrated into any automation workflows.

![chaos engineering dashboard](/images/aws/chaos-engineering-dashboard.png)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ See [this issue](https://github.com/localstack/localstack/issues/7041) for more
LocalStack ships with multi-account support which allows namespacing based on AWS account ID.

LocalStack uses the value in the AWS Access Key ID field for the purpose of namespacing over account ID.
For more information, see [Credentials]({{< ref "credentials" >}}).
For more information, see [Credentials](/aws/capabilities/config/credentials).

The Access Key ID field can be configured in the AWS CLI in multiple ways: please refer to [AWS CLI documentation](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-precedence).

Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/aws/capabilities/config/podman.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ From the Podman docs:

To run `localstack`, simply aliasing `alias docker=podman` is not enough, for the following reasons:
- `localstack` is using [docker-py](https://pypi.org/project/docker/) which requires a connection to `/var/run/docker.sock`
- Lambda requires mounting the Docker socket `/var/run/docker.sock` into the container (see [Lambda providers]({{< ref "user-guide/aws/lambda" >}})).
- Lambda requires mounting the Docker socket `/var/run/docker.sock` into the container (see [Lambda providers](/aws/services/lambda)).

Here are several options on running LocalStack using podman:

Expand Down
96 changes: 0 additions & 96 deletions src/content/docs/aws/capabilities/event-studio.md

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -186,8 +186,10 @@ DOCKER_FLAGS="--network my-network" localstack start
# launch your container
docker run --rm it --network my-network <image name>
# then your code can access localstack at its container name (by default: localstack-main)
{{</tab>}}
{{<tab header="Docker" lang="bash">}}
```
</TabItem>
<TabItem label="Docker">
```bash
# create the network
docker network create my-network
# launch localstack
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ The data is only used to provide you with insights into the usage of LocalStack

![Stack Insights](/images/aws/stack-insights-getting-started.png)

To start using this feature, log in to your [LocalStack account](https://app.localstack.cloud/) and start a [LocalStack instance on your local machine]({{< ref "getting-started/auth-token" >}}).
To start using this feature, log in to your [LocalStack account](https://app.localstack.cloud/) and start a [LocalStack instance on your local machine](/aws/getting-started/auth-token).
The system will start making your events accessible on the [Stack Insights dashboard](https://app.localstack.cloud/stacks).

Click on the Stack widget to see:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ To that end, we use the "Shadow Jar" plugin.

Here's our final `build.gradle`:

```groovy showLineNumbers=true
```groovy showLineNumbers=true title="build.gradle"
plugins {
id "java"
id "org.jetbrains.kotlin.jvm" version '1.5.31'
Expand Down Expand Up @@ -210,7 +210,7 @@ In this project, we are following
[official documentation](https://docs.aws.amazon.com/lambda/latest/dg/java-logging.html#java-wt-logging-using-log4j2.8)
to setup up `src/main/resources/log4j2.xml` content.

```xml
```xml title="log4j2.xml"
?xml version="1.0" encoding="UTF-8"?>
<Configuration packages="com.amazonaws.services.lambda.runtime.log4j2.LambdaAppender">
<Appenders>
Expand Down Expand Up @@ -246,7 +246,7 @@ spring.cloud.function.scan.packages=org.localstack.sampleproject.api
Once configured, you can use `FunctionInvoker` as a handler for your Rest API lambda function.
It will automatically pick up the configuration we have just set.

```java
```java title="FunctionInvoker.kt"
org.springframework.cloud.function.adapter.aws.FunctionInvoker::handleRequest
```

Expand Down Expand Up @@ -276,7 +276,7 @@ Let's configure it by creating a new configuration class `JacksonConfiguration.k
`src/main/kotlin/org/localstack/sampleproject/config`:


```kotlin
```kotlin title="JacksonConfiguration.kt"
package org.localstack.sampleproject.config

import com.fasterxml.jackson.annotation.JsonInclude
Expand Down Expand Up @@ -319,9 +319,7 @@ implementations.

Let's create a small logging utility to simplify interactions with the logger

{/*{{< highlight kotlin "linenos=table" >}}*/}
{/* TODO: packing this into a java block for now */}
```kotlin
```kotlin title="Logger.kt"
package org.localstack.sampleproject.util

import org.apache.logging.log4j.LogManager
Expand All @@ -331,7 +329,6 @@ open class Logger {
val LOGGER: Logger = LogManager.getLogger(javaClass.enclosingClass)
}
```
{/*{{< / highlight >}}*/}

### Add Request/Response utilities

Expand Down Expand Up @@ -404,7 +401,7 @@ To transfer data from requests into something more meaningful than JSON strings
(and back) you will be using a lot of Models and Data Transfer Objects (DTOs).
It's time to define our first one.

```kotlin showLineNumbers
```kotlin showLineNumbers title="SampleModel.kt"
package org.localstack.sampleproject.model

import com.fasterxml.jackson.annotation.JsonIgnore
Expand All @@ -423,7 +420,7 @@ data class SampleModel(
Let's add our first endpoints to simulate CRUD operations on previously
defined `SampleModel`:

```kotlin showLineNumbers
```kotlin showLineNumbers title="SampleApi.kt"
package org.localstack.sampleproject.api

import com.fasterxml.jackson.databind.ObjectMapper
Expand Down Expand Up @@ -476,7 +473,7 @@ We know Java's cold start is always a pain.
To minimize this pain, we will try to define a pre-warming endpoint within the Rest API.
By invoking this function every 5-10 mins we can make sure Rest API lambda is always kept in a pre-warmed state.

```kotlin showLineNumbers
```kotlin showLineNumbers title="ScheduleApi.kt"
package org.localstack.sampleproject.api

import com.fasterxml.jackson.databind.ObjectMapper
Expand Down Expand Up @@ -518,7 +515,7 @@ We can still define pure lambda functions, DynamoDB stream handlers, and so on.

Below you can find a little example of few lambda functions grouped in `LambdaApi` class.

```kotlin showLineNumbers
```kotlin showLineNumbers title="LambdaApi.kt"
package org.localstack.sampleproject.api

import com.amazonaws.services.lambda.runtime.events.DynamodbEvent
Expand Down Expand Up @@ -631,7 +628,7 @@ functions:
```
</TabItem>
<TabItem label="AWS CDK">
```java
```java title="ApplicationStack.kt"
package org.localstack.cdkstack

import java.util.UUID
Expand Down Expand Up @@ -706,7 +703,7 @@ class ApplicationStack(parent: Construct, name: String) : Stack(parent, name) {
```
</TabItem>
<TabItem label="Terraform">
```hcl
```hcl title="variables.tf"
variable "STAGE" {
type = string
default = "local"
Expand Down
4 changes: 2 additions & 2 deletions src/content/docs/aws/tooling/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ description: Increase your development efficiency with LocalStack Cloud Develope
template: doc
---

The core of LocalStack is the [cloud service emulation]({{< ref "aws" >}}).
The core of LocalStack is the [cloud service emulation](/aws/services/).
But LocalStack also provides a variety of tools to make your life as a cloud developer easier.

With LocalStack Cloud Developer Tools you can:
Expand All @@ -13,4 +13,4 @@ With LocalStack Cloud Developer Tools you can:
* debug Lambda executions directly from your IDE
* inject LocalStack service endpoints automatically into your application
* ...
and much more!
and much more!
Loading