eclipse / kuksa.val.services

Repository for Vehicle Service Related implementations for Eclipse SDV
Apache License 2.0
15 stars 18 forks source link

Question about seat_service behaviour #35

Closed odra closed 1 year ago

odra commented 1 year ago

Hello,

I am trying to run seat_service in a container but it looks like it is stuck in trying to connect to the databroker:

DataBrokerFeederImpl: Connecting to data broker [databroker:55555] ...
DataBrokerFeederImpl: Connecting to data broker [databroker:55555] ...
DataBrokerFeederImpl: Connecting to data broker [databroker:55555] ...
DataBrokerFeederImpl: Connecting to data broker [databroker:55555] ...
DataBrokerFeederImpl: Connecting to data broker [databroker:55555] ...
DataBrokerFeederImpl: Connecting to data broker [databroker:55555] ...
DataBrokerFeederImpl: Connecting to data broker [databroker:55555] ...
DataBrokerFeederImpl: Connecting to data broker [databroker:55555] ...
DataBrokerFeederImpl: Connecting to data broker [databroker:55555] ...
DataBrokerFeederImpl: Connecting to data broker [databroker:55555] ...
...

I have the following environment variables set in the container:

CAN=cansim
DAPR_GRPC_PORT=52002
BROKER_ADDR=databroker:55555
RUST_LOG="info,databroker=info,vehicle_data_broker=info"

I am also using the following image: ghcr.io/eclipse/kuksa.val.services/seat_service:v0.1.0

I tried to use telnet and I was able to stablish a connection to the databroker.

Are those env vars enough or is my setup missing something?

Thanks!

lukasmittag commented 1 year ago

If you still need help. Your BROKER_ADDR looks not right. Should be BROKER_ADDR=127.0.0.1:55555

odra commented 1 year ago

I am trying to run the databrocker in its container, here is my compose file:

version: "3.9"
services:
  mosquito:
    image: "docker.io/library/eclipse-mosquitto:2.0.14"
    command:
      - "mosquitto"
      - "-c"
      - "/mosquitto-no-auth.conf"
    ports:
      - "1883:1883"
      - "9001:9001"
  databroker:
    image: "ghcr.io/eclipse/kuksa.val/databroker:v0.17.0"
    ports:
      - "55555:55555"
      - "52001:52001"
    environment:
      - "DATABROKER_GRPC_PORT=52001"
      - "RUST_LOG=info,databroker=info,vehicle_data_broker=info"
  seatservice:
    image: "ghcr.io/eclipse/kuksa.val.services/seat_service:v0.1.0"
    ports:
      - "50051:50051"
      - "52002:52002"
    environment:
      # - "VEHICLEDATABROKER_DAPR_APP_ID=vehicledatabroker"
      - "CAN=cansim"
      - "DAPR_GRPC_PORT=52002"
      - "BROKER_ADDR=databroker:55555"
      - "RUST_LOG=info,databroker=info,vehicle_data_broker=info"
    depends_on:
      - "databroker"
    links:
      - "databroker:databroker"
  feedercan:
    image: "ghcr.io/eclipse/kuksa.val.feeders/dbc2val:v0.1.0"
    environment:
      # - "VEHICLEDATABROKER_DAPR_APP_ID==vehicledatabroker"
      # - "DAPR_GRPC_PORT=52001"
      - "LOG_LEVEL=info,databroker=info,dbcfeeder.broker_client=info,dbcfeeder=info"
      - "USECASE=databroker"
      - "CANDUMP_FILE=/data/candumpDefault.log"
      - "DBC_FILE=/data/dbcfileDefault.dbc"
      - "MAPPING_FILE=/data/mappingDefault.yml"
      - "VDB_ADDRESS=databroker:55555"
    volumes:
      - "./deploy/runtime/k3d/volume:/data:z"
    depends_on:
      - "databroker"
    links:
      - "databroker:databroker"
  app:
    build: "./app"
    ports:
      - "5000:5000"
    depends_on:
      - databroker
      - seatservice

Shouldn't BROKER_ADDR point to the container service host in this case?

int0x27 commented 1 year ago

Hello,

it seems you are not using dapr, in that case you should not set DAPR_GRPC_PORT, as it overrides the port from BROKER_ADDR.

More details here: https://github.com/eclipse/kuksa.val.services/blob/cf286cf6fe8bf21146254b6e62d4df1239c7aa69/seat_service/src/lib/broker_feeder/collector_client.cc#L51

odra commented 1 year ago

Oh, that did the trick:

2023-01-25 12:21:25,903 INFO dbcreader: Collecting signals, generating CAN ID whitelist
2023-01-25 12:21:25,903 INFO dbcreader: Found signal in DBC file UIspeed_signed257 in CAN frame id 0x257
2023-01-25 12:21:25,904 INFO dbcreader: Found signal in DBC file RearPower266 in CAN frame id 0x266
2023-01-25 12:21:25,904 INFO dbcreader: Found signal in DBC file DIgear118 in CAN frame id 0x118
2023-01-25 12:21:25,904 INFO dbcreader: Found signal in DBC file ParkingBrake118 in CAN frame id 0x118
2023-01-25 12:21:25,904 INFO dbcreader: Found signal in DBC file VCRIGHT_hvacCabinTempEst in CAN frame id 0x243
2023-01-25 12:21:25,904 INFO dbcreader: Found signal in DBC file UI_SOC in CAN frame id 0x33a
2023-01-25 12:21:25,904 INFO dbcreader: Found signal in DBC file DogModeOn in CAN frame id 0x33b
2023-01-25 12:21:25,904 INFO dbcreader: Found signal in DBC file DogModeTempSet in CAN frame id 0x33b
2023-01-25 12:21:25,905 INFO dbcreader: CAN ID whitelist=[599, 614, 280, 579, 826, 827]
2023-01-25 12:21:25,905 INFO dbcfeeder: Using virtual bus to replay CAN messages (channel: vcan0)
2023-01-25 12:21:25,905 INFO canplayer: Replaying candump from /data/candumpDefault.log
2023-01-25 12:21:26,638 INFO dbcreader: Starting Rx thread
2023-01-25 12:21:26,638 INFO canplayer: Starting Tx thread
2023-01-25 12:21:26,638 INFO dbcfeeder: Connecting to Data Broker using databroker:55555
2023-01-25 12:21:26,641 INFO databroker: Using metadata: (('dapr-app-id', 'vehicledatabroker'),)
2023-01-25 12:21:26,641 INFO dbcfeeder: Connected to data broker
2023-01-25 12:21:26,641 INFO dbcfeeder: Register datapoints
2023-01-25 12:21:26,642 INFO databroker: Vehicle.OBD.Speed was registered with id 3, type 10
2023-01-25 12:21:26,643 INFO databroker: Vehicle.OBD.EngineLoad was registered with id 4, type 10
2023-01-25 12:21:26,643 INFO databroker: Vehicle.Powertrain.Transmission.Gear was registered with id 5, type 2
2023-01-25 12:21:26,643 INFO databroker: Vehicle.Chassis.ParkingBrake.IsEngaged was registered with id 6, type 1
2023-01-25 12:21:26,644 INFO databroker: Vehicle.Cabin.AmbientAirTemperature was registered with id 7, type 10
2023-01-25 12:21:26,644 INFO databroker: Vehicle.Powertrain.Battery.StateOfCharge.Current was registered with id 8, type 10
2023-01-25 12:21:26,644 INFO databroker: Vehicle.Cabin.DogMode was registered with id 9, type 1
2023-01-25 12:21:26,645 INFO databroker: Vehicle.Cabin.DogModeTemperature was registered with id 10, type 10

Thanks :-)

odra commented 1 year ago

Closing it since the issue was solved.