Non-conformance type: dynamic

This is a non-conformance of which there was code evidence collected for this link, but no calls were detected between the two services at runtime.

Involved services

Potential interpretations for the non-conformance

Unused / Unreachable Code

The line of code that is responsible for triggering a flow of communication between the two component is not reachable or the line is not used at all in the implementation. It could be the case that the function that should call this line is not implemented, commented out or wrapped in a code-block (e.g. if-else statement or switch statement) that is never executed.

Misconfiguration of Service

One of the most common causes for failures in microservice systems is misconfiguration of services; usually different third-party services (or libraries) are used in project and each needs to be configured independently. If a service is not configured properly, it might not be reachable for other services that are trying to communicate with it.

Service Registration Issue

The service might not have been (correctly) registered at the service registry component. If it isn't registered at the service registry component, then other services do not which address and port they should use to initiate communication with this service.

The folowing information could help with understanding of the detected non-conformance:

The following line of code should produce a call between prometheus-kube and grafana-server but no such call was seen during dynamic.

Sequences extracted from the static model that should produce dynamic behavior for link between prometheus-kube and grafana-server

  • api_gateway vets_service prometheus_kube grafana_server
  • config_server vets_service prometheus_kube grafana_server
  • github_repository config_server visits_service prometheus_kube grafana_server
  • user_service →(implicit) api_gateway prometheus_kube grafana_server
  • admin_server prometheus_kube grafana_server
  • github_repository config_server api_gateway prometheus_kube grafana_server
  • tracing_server discovery_server api_gateway customers_service prometheus_kube grafana_server
  • admin_server discovery_server api_gateway prometheus_kube grafana_server
  • api_gateway prometheus_kube grafana_server
  • api_gateway →(implicit) user_service →(implicit) api_gateway prometheus_kube grafana_server
  • github_repository config_server customers_service prometheus_kube grafana_server
  • api_gateway customers_service prometheus_kube grafana_server
  • github_repository config_server admin_server prometheus_kube grafana_server
  • config_server visits_service prometheus_kube grafana_server
  • vets_service prometheus_kube grafana_server
  • config_server discovery_server api_gateway prometheus_kube grafana_server
  • github_repository config_server api_gateway vets_service prometheus_kube grafana_server
  • customers_service prometheus_kube grafana_server
  • api_gateway visits_service prometheus_kube grafana_server
  • config_server customers_service prometheus_kube grafana_server
  • api_gateway →(implicit) user_service →(implicit) api_gateway visits_service prometheus_kube grafana_server
  • config_server admin_server prometheus_kube grafana_server
  • github_repository config_server api_gateway customers_service prometheus_kube grafana_server
  • config_server api_gateway customers_service prometheus_kube grafana_server
  • api_gateway →(implicit) user_service →(implicit) api_gateway vets_service prometheus_kube grafana_server
  • visits_service prometheus_kube grafana_server
  • github_repository config_server vets_service prometheus_kube grafana_server
  • discovery_server api_gateway vets_service prometheus_kube grafana_server
  • admin_server discovery_server api_gateway visits_service prometheus_kube grafana_server
  • user_service →(implicit) api_gateway customers_service prometheus_kube grafana_server
  • github_repository config_server api_gateway visits_service prometheus_kube grafana_server
  • api_gateway →(implicit) user_service →(implicit) api_gateway customers_service prometheus_kube grafana_server
  • visits_service discovery_server api_gateway visits_service prometheus_kube grafana_server
  • vets_service discovery_server api_gateway prometheus_kube grafana_server
  • discovery_server api_gateway prometheus_kube grafana_server
  • config_server api_gateway prometheus_kube grafana_server
  • user_service →(implicit) api_gateway visits_service prometheus_kube grafana_server
  • config_server api_gateway →(implicit) user_service →(implicit) api_gateway prometheus_kube grafana_server
  • config_server api_gateway vets_service prometheus_kube grafana_server
  • visits_service discovery_server api_gateway prometheus_kube grafana_server
  • config_server api_gateway visits_service prometheus_kube grafana_server
  • customers_service discovery_server api_gateway prometheus_kube grafana_server
  • discovery_server api_gateway visits_service prometheus_kube grafana_server
  • api_gateway tracing_server discovery_server api_gateway prometheus_kube grafana_server
  • discovery_server api_gateway customers_service prometheus_kube grafana_server
  • user_service →(implicit) api_gateway vets_service prometheus_kube grafana_server
  • visits_service discovery_server api_gateway vets_service prometheus_kube grafana_server
  • discovery_server api_gateway →(implicit) user_service →(implicit) api_gateway prometheus_kube grafana_server
  • github_repository config_server discovery_server api_gateway prometheus_kube grafana_server
  • admin_server discovery_server api_gateway customers_service prometheus_kube grafana_server
  • config_server discovery_server api_gateway customers_service prometheus_kube grafana_server
  • user_service →(implicit) api_gateway →(implicit) user_service →(implicit) api_gateway prometheus_kube grafana_server
  • visits_service tracing_server discovery_server api_gateway prometheus_kube grafana_server
  • tracing_server discovery_server api_gateway prometheus_kube grafana_server
  • vets_service discovery_server api_gateway visits_service prometheus_kube grafana_server
  • api_gateway vets_service discovery_server api_gateway prometheus_kube grafana_server
  • config_server admin_server discovery_server api_gateway prometheus_kube grafana_server
  • tracing_server discovery_server api_gateway vets_service prometheus_kube grafana_server
  • visits_service discovery_server api_gateway customers_service prometheus_kube grafana_server
  • vets_service discovery_server api_gateway customers_service prometheus_kube grafana_server
  • api_gateway customers_service discovery_server api_gateway prometheus_kube grafana_server
  • admin_server discovery_server api_gateway vets_service prometheus_kube grafana_server
  • customers_service discovery_server api_gateway vets_service prometheus_kube grafana_server
  • tracing_server discovery_server api_gateway visits_service prometheus_kube grafana_server
  • customers_service discovery_server api_gateway customers_service prometheus_kube grafana_server

Sequences that occurred in the dynamic model that should produce dynamic behavior for link between prometheus-kube and grafana-server

No sequences were found in the dynamic model that actually produced dynamic behavior for the link between prometheus-kube and grafana-server

For the occurred sequences, these are the unique sequence of endpoints (parameters) that were used in the sequence

No sequences were found in the dynamic model and thus no unique sequences of endpoints could be extracted.

The following models can be used to inspect the (sequential) behavior of each service individually:

Dynamic model learned for service prometheus-kube:

DFA 0 State 0 1 State 1 0->1 in__8080.0__>healthz__200.0__get__user__prometheus-kube 452 2 State 2 0->2 in__8080.0__>__200.0__get__user__prometheus-kube 443 16 State 16 0->16 out__8080.0__>metrics__200.0__get__prometheus-kube__prometheus-kube 133 3 State 3 0->3 in__9090.0__>->ready__200.0__get__user__prometheus-kube 695 4 State 4 0->4 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 696 I I I->0 1->2 in__8080.0__>__200.0__get__user__prometheus-kube 236 11 State 11 1->11 in__9090.0__>->ready__200.0__get__user__prometheus-kube 230 12 State 12 1->12 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 222 2->1 in__8080.0__>healthz__200.0__get__user__prometheus-kube 246 2->11 in__9090.0__>->ready__200.0__get__user__prometheus-kube 203 2->12 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 210 14 State 14 2->14 in__8080.0__>__200.0__get__user__prometheus-kube 15 120 State 120 16->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 173 39 State 39 16->39 in__8080.0__>__200.0__get__user__prometheus-kube 251 40 State 40 16->40 in__9090.0__>->ready__200.0__get__user__prometheus-kube 415 41 State 41 16->41 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 292 3->16 out__8080.0__>metrics__200.0__get__prometheus-kube__prometheus-kube 138 3->4 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 531 18 State 18 3->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 231 19 State 19 3->19 in__8080.0__>__200.0__get__user__prometheus-kube 215 17 State 17 3->17 in__9090.0__>->ready__200.0__get__user__prometheus-kube 94 4->16 out__8080.0__>metrics__200.0__get__prometheus-kube__prometheus-kube 124 4->3 in__9090.0__>->ready__200.0__get__user__prometheus-kube 514 4->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 239 4->19 in__8080.0__>__200.0__get__user__prometheus-kube 236 20 State 20 4->20 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 114 32 State 32 11->32 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 432 34 State 34 12->34 in__9090.0__>->ready__200.0__get__user__prometheus-kube 430 36 State 36 14->36 in__8080.0__>healthz__200.0__get__user__prometheus-kube 14 43 State 43 18->43 in__8080.0__>__200.0__get__user__prometheus-kube 989 45 State 45 19->45 in__8080.0__>healthz__200.0__get__user__prometheus-kube 1058 42 State 42 17->42 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 94 48 State 48 20->48 in__9090.0__>->ready__200.0__get__user__prometheus-kube 112 32->16 out__8080.0__>metrics__200.0__get__prometheus-kube__prometheus-kube 122 32->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 54 32->19 in__8080.0__>__200.0__get__user__prometheus-kube 68 60 State 60 32->60 in__9090.0__>->ready__200.0__get__user__prometheus-kube 94 61 State 61 32->61 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 94 34->16 out__8080.0__>metrics__200.0__get__prometheus-kube__prometheus-kube 132 34->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 68 34->19 in__8080.0__>__200.0__get__user__prometheus-kube 74 63 State 63 34->63 in__9090.0__>->ready__200.0__get__user__prometheus-kube 82 64 State 64 34->64 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 74 66 State 66 36->66 in__8080.0__>__200.0__get__user__prometheus-kube 9 178 State 178 120->178 in__8080.0__>__200.0__get__user__prometheus-kube 607 71 State 71 39->71 in__8080.0__>healthz__200.0__get__user__prometheus-kube 622 73 State 73 40->73 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 369 75 State 75 41->75 in__9090.0__>->ready__200.0__get__user__prometheus-kube 255 42->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 36 42->19 in__8080.0__>__200.0__get__user__prometheus-kube 48 78 State 78 43->78 in__8080.0__>__200.0__get__user__prometheus-kube 10 80 State 80 43->80 in__9090.0__>->ready__200.0__get__user__prometheus-kube 461 81 State 81 43->81 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 479 83 State 83 45->83 in__8080.0__>__200.0__get__user__prometheus-kube 22 84 State 84 45->84 out__8080.0__>metrics__200.0__get__prometheus-kube__prometheus-kube 13 85 State 85 45->85 in__9090.0__>->ready__200.0__get__user__prometheus-kube 477 86 State 86 45->86 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 497 48->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 46 48->19 in__8080.0__>__200.0__get__user__prometheus-kube 52 90 State 90 48->90 in__9090.0__>->ready__200.0__get__user__prometheus-kube 10 103 State 103 60->103 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 94 105 State 105 61->105 in__9090.0__>->ready__200.0__get__user__prometheus-kube 92 107 State 107 63->107 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 82 108 State 108 64->108 in__9090.0__>->ready__200.0__get__user__prometheus-kube 74 110 State 110 66->110 in__8080.0__>healthz__200.0__get__user__prometheus-kube 8 117 State 117 71->117 in__9090.0__>->ready__200.0__get__user__prometheus-kube 251 118 State 118 71->118 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 221 73->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 190 73->39 in__8080.0__>__200.0__get__user__prometheus-kube 119 122 State 122 73->122 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 8 75->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 101 75->39 in__8080.0__>__200.0__get__user__prometheus-kube 110 130 State 130 78->130 in__8080.0__>healthz__200.0__get__user__prometheus-kube 10 132 State 132 80->132 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 449 133 State 133 81->133 in__9090.0__>->ready__200.0__get__user__prometheus-kube 460 135 State 135 83->135 in__8080.0__>healthz__200.0__get__user__prometheus-kube 20 138 State 138 85->138 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 458 139 State 139 86->139 in__9090.0__>->ready__200.0__get__user__prometheus-kube 470 143 State 143 90->143 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 10 103->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 44 103->19 in__8080.0__>__200.0__get__user__prometheus-kube 44 105->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 36 105->19 in__8080.0__>__200.0__get__user__prometheus-kube 44 160 State 160 105->160 in__9090.0__>->ready__200.0__get__user__prometheus-kube 8 107->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 32 107->19 in__8080.0__>__200.0__get__user__prometheus-kube 44 108->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 42 108->19 in__8080.0__>__200.0__get__user__prometheus-kube 30 174 State 174 117->174 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 189 176 State 176 118->176 in__9090.0__>->ready__200.0__get__user__prometheus-kube 147 132->16 out__8080.0__>metrics__200.0__get__prometheus-kube__prometheus-kube 151 132->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 38 132->19 in__8080.0__>__200.0__get__user__prometheus-kube 42 193 State 193 132->193 in__9090.0__>->ready__200.0__get__user__prometheus-kube 80 194 State 194 132->194 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 73 133->16 out__8080.0__>metrics__200.0__get__prometheus-kube__prometheus-kube 155 133->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 51 133->19 in__8080.0__>__200.0__get__user__prometheus-kube 64 195 State 195 133->195 in__9090.0__>->ready__200.0__get__user__prometheus-kube 55 196 State 196 133->196 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 72 138->16 out__8080.0__>metrics__200.0__get__prometheus-kube__prometheus-kube 140 138->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 42 138->19 in__8080.0__>__200.0__get__user__prometheus-kube 53 203 State 203 138->203 in__9090.0__>->ready__200.0__get__user__prometheus-kube 76 204 State 204 138->204 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 82 139->16 out__8080.0__>metrics__200.0__get__prometheus-kube__prometheus-kube 152 139->18 in__8080.0__>healthz__200.0__get__user__prometheus-kube 56 139->19 in__8080.0__>__200.0__get__user__prometheus-kube 58 205 State 205 139->205 in__9090.0__>->ready__200.0__get__user__prometheus-kube 83 206 State 206 139->206 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 55 229 State 229 160->229 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 8 174->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 24 174->39 in__8080.0__>__200.0__get__user__prometheus-kube 43 243 State 243 174->243 in__9090.0__>->ready__200.0__get__user__prometheus-kube 31 244 State 244 174->244 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 46 176->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 29 176->39 in__8080.0__>__200.0__get__user__prometheus-kube 27 176->117 in__9090.0__>->ready__200.0__get__user__prometheus-kube 22 246 State 246 176->246 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 35 248 State 248 178->248 in__8080.0__>__200.0__get__user__prometheus-kube 11 249 State 249 178->249 in__9090.0__>->ready__200.0__get__user__prometheus-kube 216 250 State 250 178->250 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 230 266 State 266 193->266 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 67 267 State 267 194->267 in__9090.0__>->ready__200.0__get__user__prometheus-kube 62 268 State 268 195->268 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 48 269 State 269 196->269 in__9090.0__>->ready__200.0__get__user__prometheus-kube 60 276 State 276 203->276 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 66 278 State 278 204->278 in__9090.0__>->ready__200.0__get__user__prometheus-kube 66 279 State 279 205->279 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 70 280 State 280 206->280 in__9090.0__>->ready__200.0__get__user__prometheus-kube 46 321 State 321 243->321 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 21 322 State 322 244->322 in__9090.0__>->ready__200.0__get__user__prometheus-kube 32 324 State 324 246->324 in__9090.0__>->ready__200.0__get__user__prometheus-kube 26 326 State 326 248->326 in__8080.0__>healthz__200.0__get__user__prometheus-kube 8 327 State 327 249->327 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 144 328 State 328 250->328 in__9090.0__>->ready__200.0__get__user__prometheus-kube 153 266->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 29 344 State 344 266->344 in__8080.0__>__200.0__get__user__prometheus-kube 21 267->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 22 267->39 in__8080.0__>__200.0__get__user__prometheus-kube 25 268->19 in__8080.0__>__200.0__get__user__prometheus-kube 24 268->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 16 269->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 28 269->39 in__8080.0__>__200.0__get__user__prometheus-kube 16 276->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 25 276->39 in__8080.0__>__200.0__get__user__prometheus-kube 23 278->39 in__8080.0__>__200.0__get__user__prometheus-kube 17 357 State 357 278->357 in__8080.0__>healthz__200.0__get__user__prometheus-kube 26 279->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 17 279->39 in__8080.0__>__200.0__get__user__prometheus-kube 30 280->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 17 280->39 in__8080.0__>__200.0__get__user__prometheus-kube 19 321->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 8 322->39 in__8080.0__>__200.0__get__user__prometheus-kube 14 324->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 13 327->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 22 327->39 in__8080.0__>__200.0__get__user__prometheus-kube 38 412 State 412 327->412 in__9090.0__>->ready__200.0__get__user__prometheus-kube 26 413 State 413 327->413 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 27 328->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 30 328->39 in__8080.0__>__200.0__get__user__prometheus-kube 24 414 State 414 328->414 in__9090.0__>->ready__200.0__get__user__prometheus-kube 44 415 State 415 328->415 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 19 431 State 431 344->431 in__8080.0__>healthz__200.0__get__user__prometheus-kube 16 444 State 444 357->444 in__8080.0__>__200.0__get__user__prometheus-kube 20 498 State 498 412->498 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 18 499 State 499 413->499 in__9090.0__>->ready__200.0__get__user__prometheus-kube 18 500 State 500 414->500 in__9090.0__>->healthy__200.0__get__user__prometheus-kube 32 501 State 501 415->501 in__9090.0__>->ready__200.0__get__user__prometheus-kube 13 532 State 532 444->532 in__9090.0__>->ready__200.0__get__user__prometheus-kube 9 498->39 in__8080.0__>__200.0__get__user__prometheus-kube 9 565 State 565 499->565 in__8080.0__>__200.0__get__user__prometheus-kube 8 500->120 in__8080.0__>healthz__200.0__get__user__prometheus-kube 14

Dynamic model learned for service grafana-server:

DFA 0 State 0 1 State 1 0->1 in__3000.0__>api>health__200.0__get__user__grafana-server 904 I I I->0 1->1 in__3000.0__>api>health__200.0__get__user__grafana-server 8046 3 State 3 1->3 in__3000.0__>api>health__200.0__get__kube-proxy-pbcvl__grafana-server 9 6 State 6 3->6 in__3000.0__>api>health__200.0__get__kube-proxy-pbcvl__grafana-server 8