Mostrando postagens com marcador Código. Mostrar todas as postagens
Mostrando postagens com marcador Código. Mostrar todas as postagens

segunda-feira, 10 de agosto de 2020

Enviando o Resultado de uma Consulta SQL em formato HTML via Logic App

É um requisito bem simples, você precisa que um resultado de consulta ao banco de dados, ou seja, uma saída direta de uma tabela ou um resultado retornado de procedimento precisa ser enviado por email. Esse e-mail pode ser um retrato do momento da execução, algumas verificação diária de um processamento ou simplesmente uma notificação de algo que não deveria ter acontecido. E para facilitar o entendimento enviaremos o resultado formatado em HTML.

Existem inúmeras maneiras mais ou menos eficazes de realizar essa atividade, essa é uma forma de exemplificar um processo simples e rápido de ser implementado.

Consulta SQL

Suponhamos que precisamos enviar uma listagem dos produtos mais vendidos nos últimos sete dias e para isso criamos a consulta abaixo:

Abaixo fazemos pequenas adaptações na consulta, para formatar o resultado para que seja enviado por email e tenha um visual mais legível.

  1. Aplicamos a tag <li> a tag para listar todos os registros de conjunto de dados

  2. Em seguida, envolvemos a lista de itens com a tag HTML <ul>.

O resultado da consulta não é visualmente bonito, já o resultado em HTML :-)

Azure Logic App

Agora vamos criar o nosso Logic App com um gatilho recorrência, a execução da consulta e uma ação "Enviar um e-mail"

Gatilho

Vamos programar para que o aplicativo execute diariamente às 20h.

Ação

Para facilitar vamos executar diretamente o comando SQL, entretanto poderíamos optar por executar um procedimento. Importante configurar o método de autenticação.

Resultado

Agora basta selecionarmos a plataforma que irá efetuar o disparo do email, neste caso está configurado o disparo por uma conta do Gmail. Além da possibilidade de adicionar texto extra ao corpo do email, podemos ainda utilizar fórmulas para coletar outras informações.



Importante, como o resultado de uma consulta pode ser mais de uma linha, essa ação criará um laço que será executado para cada linha, entretanto nossa consulta sempre irá retornar somente uma linha, logo somente um email será disparado.

Execução 

Após a execução podemos verificar se as etapas foram concluídas com êxito e tempo de execução.

Checando o Email

E podemos ver o e-mail que será entregue todo dia, uma forma simples para atingir um objetivo. 

Até a próxima! :-)

Marcelo Goberto de Azevedo 

Arquiteto na GFT Brasil

//marcelogoberto.com.br


segunda-feira, 6 de abril de 2020

Usando Análise de Código no Visual Studio 2019 para Melhorar a Qualidade do Código


O Visual Studio oferece um recurso que executa análise de código estático para ajudar os desenvolvedores a identificar potenciais melhoras de design, globalização, interoperabilidade, desempenho, segurança, entre outras categorias de problemas que podem ser evitadas. A análise de código pode ser executada manualmente ou há qualquer momento dentro do projeto no Visual Studio. Uma outra vantagem é utilizada no processo de entrega continua (CD) , ela pode ser configurada para ser executada automaticamente no Azure DevOps.



Por que usar a análise de código estático?

A principal razão é que todos códigos será verificado antes da execução, ou sejam, análise estática verifica TODOS os códigos. Podem ser encontradas vulnerabilidades em códigos  que não estejam sendo executados, ou que não sejam de nosso conhecimento quando existem soluções monolíticas.

O segundo benefício é que você pode definir as regras específicas para o projeto e elas serão seguidas sem nenhuma intervenção manual. Se alguém esquecer de seguir essas regras, elas serão destacadas pelo analisador de código estático. Outro benefício é que podem ser identificados falhas no início do ciclo de desenvolvimento, o que significa menos custo para corrigi-los.

Vamos ver como ativar e configurar o analisador de código no Visual Studio 2019 para um projeto:

1. Abra a solução no Visual Studio 2019
2. Abra as propriedade do projeto e selecione a opção "Análise de Código"



3. Na parte de "Configurar Conjunto de Regras" você poderá definir e/ou configurar as regras que deseja que sejam validadas, para esse exercício vamos selecionar a opção "Todas as Regras da Microsoft"



4. Depois basta selecionar no menu "Compilação" a opção "Executar Análise de Código na Solução"



5. Como resultado da analise na "Lista de Erros" será exibidos todas as sugestões para melhorar o código



6. Clicando sobre um item, será exibido o ponto onde deve ser feita a interação para implementação da solução



7. Depois que implementar as melhorias, basta executar novamente a análise para atualizar a lista de recomendações.

Através da utilização de análise de código podemos garantir melhores códigos e principalmente ir aprender as melhores práticas através das recomendações, porque cada vez que efetuarmos uma implementação estaremos aprender uma boa prática, que com certeza será aplicada durante o processo de criação num próximo desenvolvimento.

Marcelo Goberto de Azevedo
Arquiteto na GFT Brasil

quinta-feira, 30 de janeiro de 2020

Implementando SonarQube para Análise de Código de Projetos C#/VB.NET

Implementando SonarQube para Análise de Código de Projetos C#/VB.NET

O SonarQube é uma ferramenta (plataforma de código aberto) para inspeção da qualidade do código, detectar bugs, melhorias de código e vulnerabilidades de segurança em linguagens de programação.

Neste tutorial vamos criar um servidor de SonarQube para que seja possível executar a validação de um código de um projeto que esteja acessível localmente na máquina.

Passo 1 » Instalação e Configurando o Server de SonarQube

Vamos utilizar o portal do Azure para criar uma instância de contêiner para hospedar e rodar nosso servidor do SonarQube, será através desse servidor que será possível referenciá-lo no projeto ou Pipeline do Azure DevOps e também verificar os resultados das análises.

1. Acessar o Portal do Azure
2. Pesquisar um recurso “instância de contêiner”



3. Adicionar uma instância e definir dados Básico



Importante no preenchimento: 
Nome da imagem: sonarqube (esse é nome da imagem para criação do contêiner)
Tamanho: alterar para 2 vcpus e 3.5 de memória para suportar a instância

4. Na parte de rede é importante criar a Porta 9000/TCP e remover a porta 80/TCP



Importante no preenchimento: 
Rótulo do nome DNS: esse nome será endpoint do servidor SonarQube

5. Efetuar a revisão e criação da instância



6. Aguardar a implantação do recurso



Passo 2 » Configuração a Plataforma SonarQube e Criando o Projeto

7. Acessar a plataforma SonarQube no servidor criado
    Para acessar basta utilizar o endereço (FQDN) seguindo pela porta 



8. Utilizar o login e senha (admin/admin) para logar na plataforma

9. Iniciar um novo projeto para conectar com seu código fonte que irá ser analisado



10. Defina a chave do projeto, essa chave será utiliza para localizar o repositório do SonarQube para armazenar os resultados



11. Agora é necessário a geração do token que será utilizado para geração da analise



12. Selecione a linguagem C# or VB.NET



13. Faça o download do Scanner for MSBuild


14. Selecione o tipo de projeto e faça o download do pacote



Importante:
Para a execução dessa validação, o SonarQube Scanner necessita que o Java 11 esteja instalado (http://www.google.com/search?q= java+jdk+11)

15. Faça a extração o arquivo baixado para a pasta “C:\Arquivos de Programas\...”



16. É importante definir esse diretório no %PATH% do Windows, veja como em (http://www.google.com/search?q=Add+directory+to+your+PATH+environment+variable+windows)

Passo 3 » Execute a validação de código no Projeto

17. Agora basta acessar o “Developer Prompt de Comand for VS ????” e acessar a diretório onde está a solução do projeto que deseja gerar a análise


 18. Agora basta executar os comandos que foram exibidos no previamente no passo 12 



19. Ao final todos os dados coletados estarão à disposição para análise no portal do SonarQube




Numa próxima matéria, vamos implementar o SonarQube na esteira (CI/CD) do Azure DevOps.

Marcelo Goberto de Azevedo
Arquiteto na GFT Brasil
https://marcelogoberto.blogspot.com/