Net Aspire - O Futuro é Lindo
Tags: dotnet, docker, blazor, cloudnative
Published: 2024-05-30 21:08:25


## Net Aspire - Cloud o que?

Faaala Galeraaa. 

Na minha rotina de estudos decidi dedicar um tempo ao .Net Aspire para entender porque tá todo mundo ouriçado com a mais nova "Cloud Ready Stack"

E... Yes, Yes, Aspire é simplesmente sensacional. 

**Orchestration (Pelo pouco que entendi até aqui)**

Em poucas palavras... 
Sabe o cursinho de docker que tu comprou? Cancela que tu não vai mais usar.
> "Já matamos o Javascript com o Blazor" 
> "Flutter com o MAUI"
> "Agora chegou a hora de matar o Docker com o Aspire"


Brincadeiras a parte, mas ficou extremamente mais ágil desde a adição até a configuração das aplicações, mano, é tudo C# tá dominado. 


Segue os passos para adicionar um banco de dados Postgres como exemplo

**Adicionar Nuget Package "Aspire.Hosting.PostgreSQL"**

![Imagem do Nuget para PostgreSQL](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/q4wyqhq2v2hyox92byo9.png)

**Configurar tudo com C# + Intellisense + Copilot**

``` C#
var dbPassword = builder.AddParameter("DatabasePassword", secret: true);
var dbServer = builder.AddPostgres("dbServer", password: dbPassword);
var db = dbServer.AddDatabase("TodoApp");

dbServer.WithDataVolume()
        .WithPgAdmin();

builder.AddProject<Projects.TodoApp_Api>("todoapp-api")
        .WithReference(db)
        .WithExternalHttpEndpoints();
```


Aaaah voltando ao Docker, calmem, ele ainda está lá e ele precisa estar rodando né para não tomar estes erros como eu hahahaha.

![Imagem de erro ao subir a aplicação com o sem subir o serviço do docker](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/zb7qsz923zl5m5w457ya.png)


**Observabilidade**

Para mim a melhor parte, como Dev algumas vezes já tive que ficar acessando diferentes máquinas para analisar os logs da aplicação para entender um determinado comportamento da aplicação.

E ter uma ferramenta como o Net Aspire onde tu consegue acompanhar desempenho, registrar logs e rastrear execuções tudo em tempo real é incrível, isso vira o jogo ao nosso favor.

**Logs estruturados**

![Imagem dos logs estruturados](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hb867d2zlc7qz0kjqkao.png)

**Rastreamento da API**

![Imagem do rastreamento da API](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/vhw3706iqv34nuzmxi2u.png)

**Logs do console**

![Imagem logs do console](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1b90pgtcoibnbjzztur6.png)


**Tooling**

Bom, acho que se você chegou até aqui já tem uma noção da quantidade de ferramentas que nós Dev's teremos para utilizar ao nosso favor.

Bom e sem falar que estamos apenas no começo do Aspire muito ainda esta por vir, não vejo a hora de brincar de verdade. 


**Tá querendo bater um papo sobre Tech e não sabe como me achar?**

[Github >> Cristian Lopes](https://github.com/CristianLopes/TodoAspireApp)

[LinkedIn >> Cristian Lopes](https://www.linkedin.com/in/cristian-lopes-3110029a/)

Ou da um pulo no Sul do nosso Brasilzão e bora assar uma carne.


**Refêrencias**:

https://learn.microsoft.com/en-us/dotnet/aspire/get-started/aspire-overview

https://www.youtube.com/watch?v=jwDC_UQ8H70