Alguém aqui já utilizando spring cloud sleuth ou o spring cloud contract?
25/05/2017 10:13
1
Alguém utilizando algum desses frameworks em produção ou testando, quero aumentar a discussão sobre esses dois assuntos rs
Tags: spring, spring-cloud-sleuth, spring-cloud-contract


0
Comecei a estudar mais a fundo o Spring Cloud (por sua causa inclusive!).
Uma verdadeira pérola o negócio, estou achando muito interessante e com certeza vamos usar nos próximos projetos.


0
Cara, eu estou usando o sleuth e estou achando muito foda rs ... eu conseguir saber por onde (microsservices) uma requisição passou e fazer testes integrados com o contract fica muito mais simples, testes integrados você faz de ponta a ponta ou com mock das integrações?
25/05/2017 10:44


0
Oi Felipe,

no início do desenvolvimento (bem no início), costumo usar mocks, mas logo na sequência passo a usar testes integrados mesmo, até para validar todas as pontas no processo.


0
Eu ainda não estou usando ou estudando. Não tenho trabalhado com estruturas de microservices. Alias, esse é um hype do momento que acho bastante interessante, mas vejo pouca aplicabilidade em lugares que não tenham integração contínua rodando de maneira consistente e até mesmo algo de devops. Mas em java, hoje, vocês consideram a melhor opção para microservice, o spring cloud? Já viram algo de microprofile também?


0
Oi Antônio,

ou, conheci o Spring Cloud graças ao Felipe Adorno no nosso hangout. Nunca tinha ouvido falar e comecei a ler a documentação. Durante o processo vi que ele resolvia UM MONTE de coisas que eu fazia na mão. Ainda não usei em nenhum projeto em produção, mas é um forte candidato.

Aproveitando, podíamos fazer mais um hangout hein???


0
Kiko, da uma olhada no spring cloud contract q é bem legal para isso, vc não precisa subir tudo para fazer o teste integrado. Eu estou usando bastante aqui porque se não fica muito custoso subir 20 microsserviços para fazer o teste integrado hehehe
Antônio, como toda a hype deve ser estudada ates de ser adotada, microsserviços não pode ser uma bala de prata e sim, se o seu devops não for maduro você e se vc não tiver deploy automatizado fica bem dificil e outro ponto importante é log distribuido.
Kiko, podemos marcar um sim, vamos ver isso e agendar uma data?
29/05/2017 14:19


0
Bora,
meu único período de inatividade será do dia 31/5 a 12/6, pois estarei de férias. Tirando isto, to liberado!


0
@Felipe, quando falei sobre microserviços é porque já li algumas coisas, mas ainda não vejo contexto de aplicação real, nem maturidade para aplicar nos projetos que trabalho.

Sobre o hangout tranquilo. Falaríamos sobre o que? 


0
Pessoal, 
Essa semana comecei a estudar Spring Clound Contract a fim de implantar aqui na empresa onde trabalho.
Porém todos os exemplos que vi na net quando reproduzo todo 404 quando rodo os testes,  
alguém já passou por isso ?
01/12/2017 18:04


0
Fala Fabiano, você pode colocar o stacktrace que dá quando vc tenta usar?
02/12/2017 19:29


0
Fala Felipe beleza mano?
cara baixo seu código do github e rodo "mvn clean install" no projeto "demo" beleza ele instala em meu .m2 local.
quando rodo "mvn test" no projeto "client" recebo 404, segue o stacktrace:
?
2017-12-03 17:54:03.942 INFO 10490 --- [nio-8080-exec-6] o.a.c.c.C.[Tomcat].[localhost].[/] : RequestHandlerClass from context returned com.github.tomakehurst.wiremock.http.StubRequestHandler. Normalized mapped under returned 'null'
2017-12-03 17:54:04.299 ERROR 10490 --- [nio-8080-exec-7] WireMock : Request was not matched:
{
"url" : "/v1/payments/1/status",
"absoluteUrl" : "http://127.0.0.1:8080/v1/payments/1/status",
"method" : "GET",
"clientIp" : "127.0.0.1",
"headers" : {
"accept" : "text/plain, application/json, application/*+json, */*",
"user-agent" : "Java/1.8.0_111",
"host" : "127.0.0.1:8080",
"connection" : "keep-alive"
},
"cookies" : { },
"browserProxyRequest" : false,
"loggedDate" : 1512330844253,
"bodyAsBase64" : "",
"body" : "",
"loggedDateString" : "2017-12-03T19:54:04Z"
}
Closest match:
{
"url" : "/v1/payments/11/status",
"method" : "GET"
}
Tests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 13.493 sec <<< FAILURE! - in br.com.sample.client.ValidateContractTest
validatePaymentApprovedContract(br.com.sample.client.ValidateContractTest) Time elapsed: 0.095 sec <<< ERROR!
org.springframework.web.client.HttpClientErrorException: 404 null
at org.springframework.web.client.DefaultResponseErrorHandler.handleError(DefaultResponseErrorHandler.java:63)
at org.springframework.web.client.RestTemplate.handleResponse(RestTemplate.java:700)
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:653)
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:613)
at org.springframework.web.client.RestTemplate.getForEntity(RestTemplate.java:312)
at br.com.sample.client.ValidateContractTest.validatePaymentApprovedContract(ValidateContractTest.java:26)

2017-12-03 17:54:04.342 INFO 10490 --- [ Thread-6] o.s.w.c.s.GenericWebApplicationContext : Closing org.springframework.web.context.support.GenericWebApplicationContext@1ab06251: startup date [Sun Dec 03 17:53:52 BRST 2017]; root of context hierarchy
2017-12-03 17:54:04.342 INFO 10490 --- [ Thread-3] ationConfigEmbeddedWebApplicationContext : Closing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@34d480b9: startup date [Sun Dec 03 17:53:58 BRST 2017]; root of context hierarchy
2017-12-03 17:54:04.346 INFO 10490 --- [ Thread-6] o.s.c.support.DefaultLifecycleProcessor : Stopping beans in phase 0
2017-12-03 17:54:04.347 INFO 10490 --- [ Thread-6] o.s.i.endpoint.EventDrivenConsumer : Removing {logging-channel-adapter:_org.springframework.integration.errorLogger} as a subscriber to the 'errorChannel' channel
2017-12-03 17:54:04.348 INFO 10490 --- [ Thread-6] o.s.i.channel.PublishSubscribeChannel : Channel 'application:-1.errorChannel' has 0 subscriber(s).
2017-12-03 17:54:04.348 INFO 10490 --- [ Thread-6] o.s.i.endpoint.EventDrivenConsumer : stopped _org.springframework.integration.errorLogger
2017-12-03 17:54:04.349 INFO 10490 --- [ Thread-6] o.s.s.c.ThreadPoolTaskScheduler : Shutting down ExecutorService 'taskScheduler'

Results :

Tests in error:
ValidateContractTest.validatePaymentApprovedContract:26 ? HttpClientError 404 ...

Tests run: 2, Failures: 0, Errors: 1, Skipped: 0

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 21.273 s
[INFO] Finished at: 2017-12-03T17:54:04-02:00
[INFO] Final Memory: 32M/282M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.18.1:test (default-test) on project client: There are test failures.
[ERROR]
[ERROR] Please refer to /Volumes/HD/Development/workspace/spring-contract/spring-cloud-contract-demo/client/target/surefire-reports for the individual test results.
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
03/12/2017 17:59


0
Fala Fabiano,
Cara realmente tava com um bug hehe ... o problema vc pode olhar no arquivo approvedPayment.groovy, ele está esperando um header application/json e o restTemplate por padrão não passa esse header e ai da o erro na hora da validação. Eu fiz o commit no github então é só atualizar ai na sua maquina.

Valeu
09/12/2017 14:15


0
Opa valeu Felipe,
Estou desbravando um pouco deste assunto e estou mantendo em um repositótio no Github,
Aproveitei o que você fez e estou adicionando outros exemplos, se interessar para alguém segue o link:
https://github.com/fabianogoes/spring-cloud-contract-crud

Críticas/Dicas/Sugestões serão muito bem vindas.

um abraço
10/12/2017 16:02



Ainda não faz parte da comunidade???

Para se registrar, clique aqui.


Aprenda Groovy e Grails, Spring e mais com a Formação itexto!

Livro de Spring


/dev/All

Os melhores blogs de TI
em um único lugar!

 
Spring Brasil é mantido por itexto Consultoria.
Em caso de problemas contacte Henrique Lobo Weissmann (Kico) por e-mail: kico@itexto.com.br
Todo o conteúdo presente neste site adota o Creative Commons como licença padrão.