2017-05-09 5 views
0

Je veux obtenir les mesures de vert.x avec Hawkular, mais j'ai un problème. Suivant le tutoriel de ceci. http://vertx.io/docs/vertx-hawkular-metrics/java/Comment appeler Hawkular à partir de Vert.x

Ensuite, je change le code du tutoriel de vert.x http://vertx.io/blog/my-first-vert-x-3-application/

comme ça.

de cette

@Before 
    public void setUp(TestContext context) { 
    vertx = Vertx.vertx(); 
    vertx.deployVerticle(MyFirstVerticle.class.getName(), 
     context.asyncAssertSuccess()); 
    } 

à cette

VertxOptions vertxOptions = new VertxOptions() 
    .setMetricsOptions(new VertxHawkularOptions() 
     .setHost("localhost") 
     .setPort(8080) 
     .setTenant("com.acme") 
     .setAuthenticationOptions(
      new AuthenticationOptions() 
       .setEnabled(true) 
       .setId("jdoe") 
       .setSecret("password")).setEnabled(true)); 
vertx = Vertx.vertx(vertxOptions); 

    JsonObject message = new JsonObject() 
     .put("id", "myapp.files.opened") 
     .put("value", 7); 
    vertx.eventBus().publish("metrics", message); 

Mais je pense que je n'y a aucun changement dans Hawkular. Tout d'abord, j'ai vérifié avec WireShark, il ne semble pas y avoir de connexion de la requête HTTP de cette application. Je veux savoir si j'exécute ce code, puis-je voir des changements dans les mesures Hawkular?

J'ai déjà vérifié.

  • ce programme passe ces codes.
  • même si je change l'hôte et le mauvais port, il n'y a pas d'exécution.
+0

Avez-vous activé le pont de mesures? http://vertx.io/docs/vertx-hawkular-metrics/java/#_user_defined_metrics – tsegismont

+0

Merci pour vos conseils, mais dans mon environnement ce n'est pas grave. – Ryo0606

Répondre

0

Je pense que le processus de test se termine avant que les métriques aient eu le temps d'être signalées. J'ai essayé avec votre exemple (qui semble correct à côté de ce problème de synchronisation), et j'ai dû mettre un Thread.sleep de 1 seconde après la publication sur le bus d'événement afin de voir quelque chose dans Hawkular.

curl -u jdoe:password -H "Hawkular-Tenant: com.acme" http://localhost:8080/hawkular/metrics/counters

donne maintenant

[{"id":"vertx.eventbus.publishedRemoteMessages","dataRetention":14,"type":"counter","tenantId":"com.acme"},{"id":"vertx.pool.worker.vert.x-internal-blocking.queuedCount","dataRetention":14,"type":"counter","tenantId":"com.acme"},{"id":"vertx.eventbus.receivedMessages","dataRetention":14,"type":"counter","tenantId":"com.acme"}, etc.

+0

Merci beaucoup! Je mets un sommeil, puis j'obtiens les métriques !! – Ryo0606