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 order and turbine but no such call was seen during dynamic.

Sequences extracted from the static model that should produce dynamic behavior for link between order and turbine

Sequences that occurred in the dynamic model that should produce dynamic behavior for link between order and turbine

  • zuul order turbine
  • user →(implicit) zuul order turbine

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

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

Dynamic model learned for service order:

DFA 0 State 0 1 State 1 0->1 out__8761.0__>eureka>apps>ORDER>order-69d76bbbfc-wxmsw-order-8080__200.0__put__order__eureka 67 2 State 2 0->2 out__8761.0__>eureka>apps>delta__200.0__get__order__eureka 58 3 State 3 0->3 out__8080.0__>customer>__200.0__get__order__customer 43 4 State 4 0->4 out__8080.0__>customer>3__200.0__get__order__customer 39 5 State 5 0->5 out__8080.0__>catalog>2__200.0__get__order__catalog 20 6 State 6 0->6 out__8080.0__>customer>1__200.0__get__order__customer 29 7 State 7 0->7 out__8080.0__>catalog>__200.0__get__order__catalog 55 8 State 8 0->8 in__8080.0__>__200.0__get__zuul__order 10 9 State 9 0->9 out__8080.0__>catalog>1__200.0__get__order__catalog 20 96 State 96 0->96 in__8080.0__>line__200.0__post__zuul__order 11 12 State 12 0->12 out__8080.0__>customer>4__200.0__get__order__customer 24 13 State 13 0->13 out__8080.0__>catalog>7__200.0__get__order__catalog 27 17 State 17 0->17 out__8080.0__>customer>2__200.0__get__order__customer 17 19 State 19 0->19 out__8080.0__>catalog>5__200.0__get__order__catalog 21 21 State 21 0->21 out__8080.0__>customer>7__200.0__get__order__customer 11 I I I->0 1->2 out__8761.0__>eureka>apps>delta__200.0__get__order__eureka 149 29 State 29 1->29 out__8761.0__>eureka>apps>ORDER>order-69d76bbbfc-wxmsw-order-8080__200.0__put__order__eureka 35 2->1 out__8761.0__>eureka>apps>ORDER>order-69d76bbbfc-wxmsw-order-8080__200.0__put__order__eureka 141 37 State 37 2->37 out__8761.0__>eureka>apps>delta__200.0__get__order__eureka 43 3->7 out__8080.0__>catalog>__200.0__get__order__catalog 30 4->4 out__8080.0__>customer>3__200.0__get__order__customer 19 58 State 58 4->58 out__8080.0__>customer>__200.0__get__order__customer 9 61 State 61 4->61 out__8080.0__>catalog>__200.0__get__order__catalog 10 7->3 out__8080.0__>customer>__200.0__get__order__customer 18 7->96 in__8080.0__>line__200.0__post__zuul__order 20 93 State 93 7->93 out__8080.0__>catalog>__200.0__get__order__catalog 10 308 State 308 96->308 out__8080.0__>catalog>__200.0__get__order__catalog 13 12->12 out__8080.0__>customer>4__200.0__get__order__customer 8 12->13 out__8080.0__>catalog>7__200.0__get__order__catalog 12 13->17 out__8080.0__>customer>2__200.0__get__order__customer 10 142 State 142 13->142 out__8080.0__>catalog>7__200.0__get__order__catalog 9 153 State 153 17->153 out__8080.0__>customer>2__200.0__get__order__customer 15 197 State 197 29->197 out__8761.0__>eureka>apps>delta__200.0__get__order__eureka 34 206 State 206 37->206 out__8761.0__>eureka>apps>ORDER>order-69d76bbbfc-wxmsw-order-8080__200.0__put__order__eureka 40 233 State 233 58->233 out__8080.0__>catalog>__200.0__get__order__catalog 8 392 State 392 153->392 out__8080.0__>customer>1__200.0__get__order__customer 8 452 State 452 197->452 out__8761.0__>eureka>apps>ORDER>order-69d76bbbfc-wxmsw-order-8080__200.0__put__order__eureka 15 453 State 453 197->453 out__8761.0__>eureka>apps>delta__200.0__get__order__eureka 8 465 State 465 206->465 out__8761.0__>eureka>apps>ORDER>order-69d76bbbfc-wxmsw-order-8080__200.0__put__order__eureka 17 466 State 466 206->466 out__8761.0__>eureka>apps>delta__200.0__get__order__eureka 9 585 State 585 308->585 out__8080.0__>customer>__200.0__get__order__customer 9 749 State 749 452->749 out__8761.0__>eureka>apps>delta__200.0__get__order__eureka 14 750 State 750 453->750 out__8761.0__>eureka>apps>ORDER>order-69d76bbbfc-wxmsw-order-8080__200.0__put__order__eureka 8 762 State 762 465->762 out__8761.0__>eureka>apps>delta__200.0__get__order__eureka 28 763 State 763 466->763 out__8761.0__>eureka>apps>ORDER>order-69d76bbbfc-wxmsw-order-8080__200.0__put__order__eureka 8 762->465 out__8761.0__>eureka>apps>ORDER>order-69d76bbbfc-wxmsw-order-8080__200.0__put__order__eureka 14 1071 State 1071 762->1071 out__8761.0__>eureka>apps>delta__200.0__get__order__eureka 8

Dynamic model learned for service turbine:

DFA 0 State 0 1 State 1 0->1 out__8761.0__>eureka>apps>TURBINE>hystrix-67dbcb6656-xk6zm-turbine-8989__200.0__put__turbine__eureka 67 2 State 2 0->2 out__8761.0__>eureka>apps>delta__200.0__get__turbine__eureka 58 I I I->0 1->2 out__8761.0__>eureka>apps>delta__200.0__get__turbine__eureka 177 16 State 16 1->16 out__8761.0__>eureka>apps>TURBINE>hystrix-67dbcb6656-xk6zm-turbine-8989__200.0__put__turbine__eureka 71 2->1 out__8761.0__>eureka>apps>TURBINE>hystrix-67dbcb6656-xk6zm-turbine-8989__200.0__put__turbine__eureka 174 18 State 18 2->18 out__8761.0__>eureka>apps>delta__200.0__get__turbine__eureka 42 19 State 19 2->19 in__8989.0__>hystrix__200.0__get__user__turbine 10 36 State 36 16->36 out__8761.0__>eureka>apps>delta__200.0__get__turbine__eureka 66 38 State 38 18->38 out__8761.0__>eureka>apps>TURBINE>hystrix-67dbcb6656-xk6zm-turbine-8989__200.0__put__turbine__eureka 40 58 State 58 36->58 out__8761.0__>eureka>apps>TURBINE>hystrix-67dbcb6656-xk6zm-turbine-8989__200.0__put__turbine__eureka 25 59 State 59 36->59 out__8761.0__>eureka>apps>delta__200.0__get__turbine__eureka 29 62 State 62 38->62 out__8761.0__>eureka>apps>TURBINE>hystrix-67dbcb6656-xk6zm-turbine-8989__200.0__put__turbine__eureka 10 63 State 63 38->63 out__8761.0__>eureka>apps>delta__200.0__get__turbine__eureka 28 84 State 84 58->84 out__8761.0__>eureka>apps>delta__200.0__get__turbine__eureka 32 59->1 out__8761.0__>eureka>apps>TURBINE>hystrix-67dbcb6656-xk6zm-turbine-8989__200.0__put__turbine__eureka 26 87 State 87 62->87 out__8761.0__>eureka>apps>delta__200.0__get__turbine__eureka 10 88 State 88 63->88 out__8761.0__>eureka>apps>TURBINE>hystrix-67dbcb6656-xk6zm-turbine-8989__200.0__put__turbine__eureka 42 84->58 out__8761.0__>eureka>apps>TURBINE>hystrix-67dbcb6656-xk6zm-turbine-8989__200.0__put__turbine__eureka 14 88->63 out__8761.0__>eureka>apps>delta__200.0__get__turbine__eureka 14 115 State 115 88->115 out__8761.0__>eureka>apps>TURBINE>hystrix-67dbcb6656-xk6zm-turbine-8989__200.0__put__turbine__eureka 19 144 State 144 115->144 out__8761.0__>eureka>apps>delta__200.0__get__turbine__eureka 16 144->63 out__8761.0__>eureka>apps>delta__200.0__get__turbine__eureka 8